// проверяем доступность свободных средствif(AccountFreeMarginCheck(Symbol(),OP_BUY,OpenLot)<=0 || GetLastError()==134)
{
Print("It is impossible to open the order Buy, not enough money.");
return(0);
}
// проверяем доступность свободных средствif(AccountFreeMarginCheck(Symbol(),OP_SELL,OpenLot)<=0 || GetLastError()==134)
{
Print("It is impossible to open the order Sell, not enough money.");
return(0);
}
你好,请你帮助我--我有一个问题:机器人进入一个头寸,在下一个点上,它将其止损修改为之前的低点,我需要只有在开仓的蜡烛关闭时才修改止损。
或如何摆脱这个错误
先生们!你能告诉我,当没有足够的保证金开仓时,停止测试EA的代码吗?谢谢你!
如果AccountFreeMarginCheck()小于某个值(例如,小于AccountFreeMargin的50%)--退出交易函数,测试迅速结束,因为空循环几乎不加载。
说实话,我还是很菜,发现了这段代码,你能告诉我怎么改吗?
如果(AccountFreeMarginCheck(Symbol(), a_cmd_0, l_lots_4) <= 0.0) 返回(-1);
如果(GetLastError()== 134/* NOT_ENOUGH_MONEY */) 返回(-2);
返回(l_lots_4);
让我以更简单的方式来写:如何写这个条件--在新的蜡烛出现之前不要修改开仓订单
说实话,我还是很菜,发现了这段代码,你能告诉我怎么改吗?
如果(AccountFreeMarginCheck(Symbol(), a_cmd_0, l_lots_4) <= 0.0) 返回(-1);
如果(GetLastError() == 134/* NOT_ENOUGH_MONEY */) 返回(-2);
返回(l_lots_4);
你不需要编辑它,它可以做得很好。除非你只是用你自己的名字来替换这些变量。
但是如果我们需要更少的风险,那么如果(AccountFreeMarginCheck(Symbol(), a_cmd_0, l_lots_4) <= AccountFreeMargin()*0.5) 返回 (-1); - 在这种情况下,如果以指定手数开仓后,剩余50%或更少的自由资金,那么返回 (-1)
先生们!你能告诉我,当没有足够的保证金开仓时,停止测试EA的代码吗?
谢谢你!
请给我一个提示,好吗?我需要写一段代码,列表中的第二个订单将被选中,然后被删除(等待)。当OrderSelect(1, SELECT_BY_POS, MODE_TRADES)返回4051。