//+-----------------------------------------------------------------------------------------------+//| Функция открытия ордера на покупку |//+-----------------------------------------------------------------------------------------------+void vOrderOpenBuy()
{
int iOTi = 0; // Тикет ордера
iOTi = OrderSend(Symbol(), OP_BUY, Lots(), Ask, iSlippage, 0, 0, "", iMagic, 0, clrNONE);
// Проверим открылся ли ордерif(iOTi > 0)
// Есди да, то выставим уровни убытка и прибыли
vOrderModify(iOTi);
else// Если нет, то получим ошибку
vError(GetLastError());
}
и
//| Расчет лота |//+------------------------------------------------------------------+doubleLots()
{
double L=0;
// если последняя закрытая сделка убыточная и лот равен стартовому// включаем Мартинif(GetInfoLastPos(2)<0&&GetInfoLastPos(1)==dLots)
{
Martin=true;
}
// если последняя закрытая сделка убыточная и лот больше или равен максимальному// выключаем Мартинif(GetInfoLastPos(2)<0&&GetInfoLastPos(1)>=MaxMartinLot)
{
Martin=false;
}
// если последняя закрытая сделка убыточная и Мартин включен, умножаем лотif(Martin==true)
{
L=NormalizeDouble(GetInfoLastPos(1)*K_Martin,DigitsLot);
}
// если последняя закрытая сделка убыточная и Мартин выключен, делим лотif(Martin==false)
{
L=NormalizeDouble(GetInfoLastPos(1)/K_Martin,DigitsLot);
}
if(L>MAXLOT) L = MAXLOT;
if(L<MINLOT) L = MINLOT;
return(L);
}
我搞不清楚哪里出了问题。
它是在旧版本中。
//| Функция открытия ордера на продажу |//+-----------------------------------------------------------------------------------------------+void vOrderOpenSell()
{
int iOTi = 0; // Тикет ордера
iOTi = OrderSend(Symbol(), OP_SELL, LOT(), Bid, iSlippage, 0, 0, "", iMagic, 0, clrNONE);
// Проверим открылся ли ордерif(iOTi > 0)
// Есди да, то выставим уровни убытка и прибыли
vOrderModify(iOTi);
else// Если нет, то получим ошибку
vError(GetLastError());
и
doubleLOT()
{
int n=0;
doubleOL=dLots;for (int j = OrdersHistoryTotal()-1; j >= 0; j--)
{
if (OrderSelect(j, SELECT_BY_POS,MODE_HISTORY))
{
if (OrderSymbol() == Symbol() && OrderMagicNumber() == iMagic)
{
if (OrderProfit()<0)
{
if (n==0) OL=NormalizeDouble(OrderLots()*K_Martin,DigitsLot);
n++;
if (n>=OrdersClose) {Comment("1");return(dLots);}
}
else
{
if (n==0) {Comment("2");return(dLots);}
else {Comment("3");return(OL);}
}
}
}
}
return(OL);
}
我做到了。
现在'Lot'是一个未声明的标识符
我需要:extern doubledLots= 0.01; 替换为:extern doubleLot= 0.01; ?
更好的地段到dLots
更好的地段由dLots 提供
不,它没有))。
既不像这样,也不像那样。
反正没有交易打开,虽然没有显示错误
不,它没有))。
既不像这样,也不像那样。
虽然没有显示错误,但仍然没有交易打开。
不,它没有))。
既不像这样,也不像那样。
虽然没有显示错误,但仍然没有交易打开。
对不起,也许我不明白什么......但是!
天知道这里已经持续了多长时间,关于编写、纠正等等,某种代码的问题。为了一个 "提问者"!这与这个主题有什么关系?
问题是一个答案。然后,这一切都在私下进行。否则,它已经是一个泥潭了......绝大多数人都不关心你的代码!为什么你他妈的已经用它们覆盖了20页?
对不起,也许我不明白什么......但是!
天知道这里已经持续了多长时间,关于编写、纠正等等,某种代码的问题。为了一个 "提问者"!这与这个主题有什么关系?
问题是一个答案。然后,这一切都在私下进行。否则,它已经是一个泥潭 了......绝大多数人都不关心你的代码!为什么你已经被他们弄脏了20页?
1)主题。
新手对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论。
2)你可以把它清理干净。
1)主题
新手对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论
2)你可以把它清理干净。
我无法清洗它。
如果你这么想帮助别人,至少让这个人附上源代码,而不是把他的代码发到半页纸长的地方去!"。然后你的回复也是....这只是一派胡言!只对你和另外一个人感兴趣!
你不需要尊重我们其他人吗?还是PM不起作用?
在你插入我的功能之前,交易是否已经开始?
当然,这是一个旧的工作环境。
我怀疑这些功能之间没有联系。
и
我搞不清楚哪里出了问题。
它是在旧版本中。
и
不能把它清理干净。
如果你这么想帮助别人,至少让他们附上源代码,而不是贴出半页他们自己的代码!然后你的回复也是....这只是一派胡言!只对你和另外一个人感兴趣!
你不需要尊重我们其他人吗?还是PM不起作用?
我对每个人都很尊重。除了你之外,没有人对 "花絮 "感到困扰。
在PM中,代码没有插入可读性,而且这个人没有针对我个人,我只是回复了他。
如果我的帖子让你感到不舒服,我很抱歉,但没有其他办法。
当然,这是一个旧的工作环境。
我怀疑这些功能之间没有联系。
и
我搞不清楚哪里出了问题。
它是在旧版本中。
и
如果是手数计算的问题,就会出现错误,但如果没有错误,就意味着我们没有开单的条件。
附上旧的工作版本,我会看一下。