Я хочу создать «Эксперт-советник», который масштабирует\пирамидирует\скатывает снежный ком в тренд,
(Еще одна выигрышная позиция открывается после того, как первая уже в безубытке)
Я застрял с функцией, которая проверяет, является ли предыдущая LONG\SHORT открытая позиция прибыльной.
Похоже, моя текущая функция всегда возвращает 1,
extern double ProfitForOpenAnother = 30;
double IsLastLongProfitable(string sy="", int op=OP_BUY) {
int LastLongProfitable = 0;
datetime o;
double l=-1;
int i, k=OrdersTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY) {
if (op<0 || OrderType()==op) {
if (OrderMagicNumber()==Magic) {
if (o<OrderOpenTime()) {
o=OrderOpenTime();
l=OrderProfit();
if(l>ProfitForOpenAnother)
{
LastLongProfitable=1;
}
}
}
}
}
}
}
}
return(LastLongProfitable);
} ```