Techno:
与国旗
选择器 "根本不会显示关闭的头寸,只显示打开的头寸。 如果有零个打开的头寸,循环甚至不会开始,因为条件将是假的。
与国旗
选择器 "根本不会显示关闭的头寸,只显示打开的头寸。 如果有零个打开的头寸,循环甚至不会开始,因为条件将是假的。
我知道它不会启动,并且会保存已经关闭的最后一个头寸......这就是我所写的......你可以使用选择订单来检查已开仓的头寸,但我应该如何检查没有头寸?
在主题的开头有一段代码......如果没有位置,那么DS保持=1,直到有新的订单出现......。即使订单已经结束......只是选择,不会开始......有什么不明白的呢......
Techno:
有些东西没有写清楚。即使是现在,"保持仓位 "是什么意思?如果我们谈论的是计算头寸,我只能猜测,那么所有的变量(用于存储订单的数量)必须在启动函数的开始时重置为零。也就是在循环之前。如果它们在循环之后仍然是空的,这意味着没有位置。
有些东西没有写清楚。即使是现在,"保持仓位 "是什么意思?如果我们谈论的是计算头寸,我只能猜测,那么所有的变量(用于存储订单的数量)必须在启动函数的开始时重置为零。也就是在循环之前。如果它们在循环之后仍然是空的,这意味着没有位置。
在循环之前,DS最初被写成int = 0。
Techno:
因此,如果循环没有开始,它就不会重置,如果没有姿势,它就不会开始。
sllawa3:
在循环之前,DS最初被规定为int = 0。
啊,好吧,如果是规定的,0被分配了,那就不可能有问题,否则为什么会等于1?它在启动函数中或以上被分配为零吗?
在循环之前,DS最初被规定为int = 0。
以上
可能没有问题,但有......自己试试就知道了
这个怎么样?
DS=0; for(int i = 0; i < OrdersTotal(); i++) { if (DS==0) DS=-1; if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue; if(OrderSymbol() != Symbol()) continue; if(OrderMagicNumber() != MAGA) continue; if(OrderType() == OP_BUY)DS=1; } if (DS==0) // поз никаких нет if (DS==-1) // позы есть, но нету БАЙ if (DS==1) // есть БАЙ
陷于问题之中
如果有未结头寸,选择器会找到订单,但如果没有未结头寸,我怎样才能找到它呢?选择器仍会显示最后的关闭头寸。