if (buy_ticket>0 && OrderSelect(buy_ticket,SELECT_BY_TICKET) && OrderType() == OP_BUY)
{
//Code
}
elseif (sell_ticket>0 && OrderSelect(buy_ticket,SELECT_BY_TICKET) && OrderType() == OP_SELL)
{
//If there is an open buy order code here will not be executed//The else is not necessary
}
int init()
{
stoplevel=(MarketInfo(Symbol(),MODE_STOPLEVEL))/10; // get broker's stoplevelif(StopLoss<=stoplevel) StopLoss=stoplevel; // we compare our StopLoss withif(Stoploss<=stoplevel) Stoploss=stoplevel; // stoplevel and adjust it when error occuredif(TrailingStop<=stoplevel) TrailingStart=stoplevel+TrailingStop; // we compared our TakeProfit// as we compared our StopLossif ((StopLoss || Stoploss || TrailingStop) < stoplevel)
{
MessageBox("Please note: If your inputs for StopLoss, Stoploss"+
"\nand/or TrailingStop are below the minimum levels"+
"\nrequired by your broker, they will automatically"+
"\nbe increased to "+StringConcatenate(stoplevel));
}
return(0);
}
是的,你必须重新选择订单
通过上面的代码,你创建了一个新的变量来存储票号,然后你可以通过票号来选择交易。
是的,你必须重新选择订单
通过上面的代码,你创建了一个新的变量来存储票号,然后你可以通过票号来选择交易。
Awesome!!!!!! 非常感谢你们。经过许多周的时间,现在一切都正常了。 我学到了很多东西。 谢谢大家!!!
对不起,我说得太早了。 追踪止损只在某些时候启动,所以我认为代码在某些地方还是有问题的。 这是整个EA,请谁来检查一下,如果发现错误请告诉我。 谢谢
,
,
非常感谢你指出这一点,我修正了错误,现在可以工作了。 我还有一个问题,我想让信息框在我的止损低于经纪商的STOP_LEVEL时弹出,但即使是更多的时候它也会弹出。我试着把它放在 "开始 "部分而不是 "初始 "部分,但它在那里也不起作用。 谁能看一下,让我知道哪里出了问题。 谢谢你
if ((StopLoss || Stoploss || TrailingStop) < stoplevel)
没有意义
你是说?
if ((StopLoss < stoplevel || TrailingStop) < stoplevel)
没有意义
你是说?
大家好,我又遇到了一个问题。 这很奇怪,我不明白为什么会发生这种情况。 正如我上面提到的,该EA工作正常,但现在我只是想从这个
到
我没有碰其他东西,但是在这个简单的改变之后,追踪止损和对冲都没有被触发。 这很奇怪。 完整的代码在上面
谢谢你的回答,但我不明白。 追踪止损的代码在这里
如果我有一个止损,EA就会工作,跟踪止损和对冲也会启动,但如果我把止损改为0,就没有任何作用了。 我不明白止损对跟踪止损和对冲有什么影响,为什么会有影响?