编码帮助 - 页 410

 

谢谢mladen.它工作得很完美.我现在是个程序员!!!

 
sunshineh:
在我看来,实际上没有可能在一个按钮后面画一个矩形,并且定义,点击按钮是事件而不是矩形......

但我有另一个问题。

我怎样才能画出一条有定义长度的水平线?我试着用OBJ_TREND,但线的一边是无限的或零。所以我不能画一条从Bid-10到Bid+10的水平线。

你现在有解决办法吗?

sunshineh

将趋势线的RAY属性(OBJPROP_RAY)设置为false,那么它就不会延伸到无限大。

 

大家好,如果我想为EA开出的每一个订单分配一个不同的魔法号码,我是否可以使用以下方法。

extern int MagicNumber = 1000000;

如果(条件)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

我宁可使用魔法数字作为一个标识符,而不是注释。数字比字符串更容易操作,imo...

谢谢。

 
airquest:
大家好,如果我想为EA开出的每一个订单分配一个不同的魔法号码,我是否可以使用下面的方法。

外部int MagicNumber = 1000000;

如果(条件)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

我宁可使用魔法数字作为一个标识符,而不是注释。数字比字符串更容易操作,imo...

谢谢。

试了一下。它的效果很好

 
airquest:
大家好,如果我想为EA开出的每一个订单分配一个不同的魔法号码,我是否可以使用下面的方法。

外部int MagicNumber = 1000000;

如果(条件)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

我宁可使用魔法数字作为一个标识符,而不是注释。数字比字符串更容易操作,我觉得...

谢谢。

这是好的,但你如何确定你希望在订单打开时处理一次的确切的魔法号码?

 
mladen:
这是好的,但你如何确定你希望在订单打开时处理一次的确切的神奇数字?

嗯,有点棘手。在OnInit中,我将原始的魔法数字(1000000)存储在一个int变量中(OriginalMagic),然后在调用OrderSelect 时,我通过唯一的魔法数字进行过滤,并将变量(OrderOpenPrice,OrderLots等)存储在一个数组中,因此对于每个订单的索引将是:MagicNumber - OriginalMagic(所以第一个是0,然后是1,等等)。重点是做两件事:1)只打开有限数量的订单(ArrayRange是一个常数(extern int MaxOpenTradesToManage),如果MagicNumber < OriginalMagic + MaxOpenTradesToManage - 1,则开单循环不会运行);2)为每个开单定义具体(和不同)的订单管理规则(这就是拥有唯一MagicNr的原因)。

Mladen,我还有一个问题要问你,我在你的一个EA(Ichimoku 5.3.5,也许是Tools先生的那个,不确定)中看到,你用以下方法开单。

int buyTicket = OrderSend(symbol,OP_BUY,lots,price,slippage,0,0,comment,magic,0,color);

if (buyTicket >= 0)

bool buyOrderMod = OrderModify(buyTicket,OrderOpenPrice(),STOPLOSS,TAKEPROFIT,0,color);

[/CODE]

Does it change something from just putting the OrderSend function with already defines SL and TP ? Is it better to open with 0,0 and then use OrderModify to set SL and TP ? :

[CODE]

OrderSend(symbol,OP_BUY,lots,price,slippage,STOPLOSS,TAKEPROFIT,comment,magic,0,color);

谢谢你的回答。谢谢你的回答,并祝你圣诞快乐。

 
airquest:
嗯,有点棘手。在OnInit中,我在一个int变量(OriginalMagic)中存储了原始的魔法数字(1000000),然后在调用OrderSelect时,我通过唯一的魔法数字进行过滤,并将变量(OrderOpenPrice, OrderLots等)存储在一个数组中,因此对于每个订单的索引将是。MagicNumber - OriginalMagic(所以第一个是0,然后是1,等等)。重点是做两件事:1)只打开有限数量的订单(ArrayRange是一个常数(extern int MaxOpenTradesToManage),如果MagicNumber小于OriginalMagic + MaxOpenTradesToManage - 1,开单循环将不会运行);2)为每个开单定义具体(和不同)的订单管理规则(这就是有一个独特的MagicNr的原因)。

Mladen,我还有一个问题要问你,我在你的一个EA(Ichimoku 5.3.5,也许是Tools先生的那个,不确定)中看到,你用以下方式开单。

int buyTicket = OrderSend(symbol,OP_BUY,lots,price,slippage,0,0,comment,magic,0,color);

if (buyTicket >= 0)

bool buyOrderMod = OrderModify(buyTicket,OrderOpenPrice(),STOPLOSS,TAKEPROFIT,0,color);

[/CODE]

Does it change something from just putting the OrderSend function with already defines SL and TP ? Is it better to open with 0,0 and then use OrderModify to set SL and TP ? :

[CODE]

OrderSend(symbol,OP_BUY,lots,price,slippage,STOPLOSS,TAKEPROFIT,comment,magic,0,color);

谢谢你的回答。最好的问候和一个非常快乐的圣诞节。

airquest

它没有变化。但是...

对于ECN/STP类型的经纪商必须这样做。他们不允许在开单时设置止损和/或止盈,因此必须分两步完成。

 
mladen:
airquest 它不会改变。但是...对于ECN/STP类型的经纪商必须这样做。他们不允许在开仓时设置止损和/或止盈,因此必须分两步进行。

好的,非常感谢您的提示。对于挂单 也是如此吗?

 
airquest:
好的,非常感谢您的提示。对于挂单也是如此吗?

是的,也是为了这些

 

编码帮助

嗨,Mladen

该指标在周一 不工作

"谷歌翻译"

谢谢

附加的文件:
原因: