int ticket=OrderSend(Symbol(),OP_SELL,0.01,Bid,5,0,0,"OrderOpenOne",14774,0,CLR_NONE);
if (ticket>0) // Если позиция открылась
{
while(OrderSelect(ticket,SELECT_BY_TICKET)==false) // Если ордер выбран
{
Sleep(100);
}
double OpenPrice=OrderOpenPrice();
}
在TALO之前。直到在周期中选定。
我认为这是不对的,因为它可能已经被关闭了。而你将挂在圈内。而在这些挂起之后,终端往往不得不重新安装。
这一切都很有意义
只有这两个原因,还是有其他原因?我认为这是不对的,因为它可能已经被关闭了。而你会陷入一个循环。而在发生这样的小插曲后,终端往往不得不重新安装。
从来没有发生过 - 如果它被关闭,就不会进入程序执行 循环...
该订单可以被部分关闭,用不同的票据重新打开,改变类型...为此,你需要正确地跟踪它们。通过阵列。
我有一个稍微不同的会计方法,尽管你不能没有数组,这是真的
然而,让我们言归正传...。
如果没有选择订单,例如,OrderType()或OrderTicket()将等于什么?
然而,对我们的公羊...
如果一个订单没有被选中,OrderType()或OrderTicket()等于什么?
哦,亲爱的!这将载入史册!
我有一个稍微不同的会计方法,尽管你不能没有数组,这是真的
然而,让我们言归正传...。
如果一个订单没有被选中,例如OrderType()或OrderTicket()等于什么?
你不是在寻找一个没有的陷阱。把这个代码放在你的猫头鹰里,享受你的生活。
我自己检查过了--在网上(更不用说在测试器中),一切工作正常,没有故障,甚至没有阵列......。
有了数组--也是交易的--一切都能成功。
从未发生过--如果它被关闭,就不会进入程序执行循环......
罗马,不要撒谎,你第一次写的时候
哦,我的天啊!这将被载入史册!
这个结构最初是在某人的帖子中,问题是:我如何知道一个订单的价格? 我在这个循环中使用的答案--见上文。
这里是这个问题 的答案。
罗马,不要撒谎,你第一次写的时候
正如我在随后的所有场合所做的那样。我像以前一样诚实。:-)
这种结构在循环中使用--仔细看--都在那里......。第一次、第二次和第三次--所有的东西在哪里都是一样的!