[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 73

 
silhouette:

我写了一个函数,应该根据输入的标签和注释来确定位置是否存在。如果不是,它应该返回打开它的权限。

当我在专家顾问中使用一个交易信号时,一切运作正常:只有在没有其他相同条件的情况下,它才会开仓。但是,当专家顾问与我用不同的注释标记的几种类型的信号一起工作时,它就会打开多个头寸。问题是什么?

你的 "基本 "for循环不起作用。在任何情况下,它都会在第一个订单上说真或假,而不会再看任何其他的东西。
 
OrderSend(Symbol(), OP_BUYSTOP, Lot, PriceBuy, StopLoss, TakeProfit, "Order", 0, Green);

当这样的订单被下达时,会产生错误130。SellStop也以类似方式打开,但其中没有错误。

 
ilunga:
你的 "基本 "for循环不起作用。在任何情况下,它都会在第一个订单上说真或假,而不会再看任何其他的东西。

谢谢你!我理解这种逻辑。但如何才能解决这个问题呢?
 
gain:
OrderSend(Symbol(), OP_BUYSTOP, Lot, PriceBuy, StopLoss, TakeProfit, "Order", 0, Green);

当这样的订单被下达时,会产生错误130。SellStop也以类似方式打开,但其中没有错误。


而当错误发生时,订单中指定的价格和当前的市场价格是如何关联的?
 
MikeM:

当错误发生时,订单中的价格与当前市场价格的关系如何?
价格没有任何问题,它离我们很远。
 
gain:
价格方面没有什么问题,它远在 。


指定准确的数值和订单类型!!!。
 

买入止损是指 以高于当前价格 购买 金融工具资产的挂单。如果Ask价格达到或高于订单中所述的价格,该订单将被执行(转换为市场买入订单)。红色条件的执行情况如何?

 
MikeM:

买入止损是指 以高于当前价格 购买金融工具资产的挂单。如果Ask价格达到或高于订单中所述的价格,该订单将被执行(转换为市场买入订单)。红色条件的执行情况如何?



键入BUYSTOP。即使我们今天手动输入1.3300的欧元/美元并进行测试,订单也不会打开。
 
WindSW:

如何正确书写,使双倍数的值只写一次,而且只写到零值。我试过如果(recRes==0) recRes=NormalizeDouble(Res,5); 但没有用,Res一变,值就被覆盖了。什么是正确的实施方式?


而你得到了什么?
什么是recRes 类型
那么
Res价值是什么呢

 
gain:


BUYSTOP类型。即使我手动规定欧元/美元为1.3300并对今天进行测试,订单也不会打开。

这样做时的信息是什么?