На открытии бара проверяется прибыль группы открытых ордеров - если прибыль группы больше примерно 15 пп - группа закрывается а конкретные цифры в коде
вот вам кусок правда с моими переделками , но моя кобра работает не МА а осевой КЛР , ну в общем разберетесь
li_0 = OrdersTotal() - 1;
double ld_124 = 0; //число ордеров
double ld_132 = 0; //нереализованная пробыль со swap
if (l_count_48 != 0) {
for (l_pos_4 = li_0; l_pos_4 >= 0; l_pos_4--) {
OrderSelect(l_pos_4, SELECT_BY_POS);
if (OrderMagicNumber() == MagicNumber && OrderSymbol() == Symbol()&& OrderProfit() > 0 ) {
if (OrderType() < OP_BUYLIMIT) ld_124 += OrderLots();
ld_132 += OrderProfit() + OrderSwap();
}
}
// вот здесь и зарыта собака (я увеличил величину профита,)
if (ld_132 >= l_marginrequired_24 * ld_124 * 3.0/ 4.0)
//но при работе с МА это НЕБЕЗОПАСНО!!!!!!!!!!!
{for (l_pos_4 = li_0; l_pos_4 >= 0; l_pos_4--) {
OrderSelect(l_pos_4, SELECT_BY_POS);
if (OrderMagicNumber() == MagicNumber && OrderSymbol() == Symbol() && OrderProfit() > 0) {
if (OrderType() == OP_BUY) CloseBuy();
if (OrderType() == OP_SELL) CloseSell();
if (OrderType() > OP_SELL) CloseLimit();
}
}
}
}