Определение результата пред. позиции

 
Определение результата пред. позиции
Надо определить, каким был результат предыдущей позиции. Я написал проверку, но она почему-то не работает...
Помогите разобраться, почему это не работает:
Var: Bal(0);
If (Bal=0) then
{//инициализация Bal в начале работы
Bal=Balance;
};
If (Balance>Bal) then
{//была прибыль
//делаем, что надо после прибыли..
...
Bal=Balance;
};
If (Balance<=Bal) then
{//был убыток или по нулям
//делаем, что надо в этом случае
...
Bal=Balance;
};
Причем это идеально работает, когда эксперт сам закрывает позиции и не работает, когда позиции закрываются по StopLoss или TakeProfit.
 
Попробуйте...
Переприсваивать и сравнивать bal по изменению колва открытых поз/лотов в этом символе, возможно не срабатывает из-за 10сек. таймаута или Balance не реагирует на каждый тик (а вообще update on every tick включен?).

Всех благ,
Micky Mogol
Причина обращения: