if (OrdersTotal()!=0 && Bid == Delete_Level)
{
for (int i=1; i<=OrdersTotal(); i++) //Cycle for all orders..
{
if(OrderSelect(i-1,SELECT_BY_POS)==true)//If there is the next one
{
if(OrderType()>1)
{
if(OrderDelete(OrderTicket())==true)
{
Alert ("Ордера удалены");
}
}
}
}
}
Delete_Level是由MA30到当前时刻为止的3个柱子的位置决定的。
double MA3 = iMA(NULL, 0, MA_Period_2, 0, MODE_SMA, PRICE_CLOSE, 2); //определение уровня MAdouble Delete_Level = MA3;// Определение значения переменной
是否有一个处理日期的例子函数,即确定两个日期之间的差异,是否大于零?
在你的理解和MQL的理解中,什么是日期?
人们,请帮助我理解这些代码。主要任务是在达到一定水平时删除挂单。
Delete_Level是由MA30到当前时刻为止的3个柱子的位置决定的。
但在这个Delete_Level中,订单没有被删除。帮助我了解我的错误是什么。
你说的 "算法去哪里 "是什么意思?
你说它没有被删除,这意味着它没有进入OrderDelete。
那么问题来了,它去哪儿了? 什么条件阻碍了它?
你说它没有被删除,这意味着它没有到达OrderDelete。
问题是它能到达哪里? 什么条件阻碍了它?
我理解这种逻辑。我现在会试着修复它。
有些事情已经澄清了。但我仍然想不出如何解决这个问题。使用Alert,我发现条件是
是不满足的。只要"if(OrdersTotal()!=0 "分开就可以,但不能和 "Bid == Delete_Level "一起。这其中的原因是什么?为什么当达到Delete_Level时,挂单 不被删除。请提出建议,或提出其他解决方案,以便在达到Delete_Level时删除挂单。
有些事情已经澄清了。但我仍然想不出如何解决这个问题。使用Alert,我发现条件是
是不满足的。只要"if(OrdersTotal()!=0 "分开就可以,但不能和 "Bid == Delete_Level "一起。这其中的原因是什么?为什么当达到Delete_Level时,挂单不被删除。请提出建议,或提出其他解决方案,以便在达到Delete_Level时删除挂单。
对这些变量进行归一化处理,"把它们减少到一个共同的分母"--例如,使用Delete_Level变量值的一些公差(+/-),因为没有像你现在这样完全相等--Bid == Delete_Level。
有些事情已经澄清了。但我仍然想不出如何解决这个问题。使用Alert,我发现条件是
是不满足的。只要"if(OrdersTotal()!=0 "分开就可以,但不能和 "Bid == Delete_Level "一起。这其中的原因是什么?为什么当达到Delete_Level时,挂单不被删除。请提出建议,或提出其他解决方案,以便在达到Delete_Level时删除挂单。
比如说。
对不起,但你能不能悠着点?)帮我理解在