Как проверить, был ли ордер закрыт по стоп-лоссу - страница 4

 
honest_knave:
Что насчет положительного проскальзывания?
Положительное проскальзывание на SL?
 
honest_knave:

спред != отклонение (проскальзывание)

Жаль, что невозможно получить параметр отклонения.

Возможно, разумным компромиссом будет (предполагая, что советник разместил ордер) проверить, была ли DEAL_PRICE в пределах окна ORDER_SL± отклонение.

Здесь я заблудился. Эта тема посвящена определению того, сработал ли SL/TP на стороне сервера.

Как это связано со спредом или отклонением?

 
Alain Verleyen:
Извините, но я не понимаю, что вы имеете в виду?
Да, Алена, Хосе прав, я думаю, более разумно, если стоп_лосс <= DEAL_PRICE (для покупки) и стоп_лосс >= DEAL_PRICE (для продажи).
 
Alain Verleyen:

Здесь я заблудился. Эта тема об определении того, сработал ли SL/TP на стороне сервера.

Как это связано со спредом или отклонением?

Ну, я запутался в том, что касается спреда.

Но, насколько я понимаю, как только SL срабатывает, он становится рыночным ордером и исполняется по наилучшей возможной цене. Это зависит от проскальзывания, нет?

 
Roberto Jacobs:
Да, Алена, Хосе прав, я думаю, что более разумно, если DEAL_PRICE <= close_price (для покупки) и DEAL_PRICE >= close_price (для продажи).
Что такое DEAL_PRICE и что такое close_price?
 
Alain Verleyen:
Что такое DEAL_PRICE и что такое close_price?
То есть DEAL_PRICE это HistoryDealGetDouble(ticket,DEAL_PRICE), а close_price это HistoryOrderGetDouble(ticket,ORDER_SL).
 
honest_knave:

Ну, я ничего не понимаю в спредах.

Но, насколько я понимаю, как только SL достигнут, он становится рыночным ордером и исполняется по наилучшей возможной цене. Это зависит от проскальзывания, нет?

Хотя я подорвал свой собственный аргумент в пользу "приемлемого диапазона", потому что наилучшая возможная цена вполне может быть за пределами параметра отклонения внутри советника.

Тем не менее, это может быть положительное проскальзывание.

 
honest_knave:

Ну, я ничего не понимаю в спредах.

Но, насколько я понимаю, как только SL достигнут, он становится рыночным ордером и исполняется по наилучшей возможной цене. Это зависит от проскальзывания, нет?

Да, но мой вопрос был о спреде/отклонении, а не о проскальзывании.

Так что да, теоретически он становится рыночным ордером, но, конечно, не испол няется по наилучшей возможной цене. Но это не та проблема, которая здесь обсуждается.

Проблема MT5 в том, что текущий стоплосс недоступен в истории. Как сказал Хосе, первоначальный стоплосс доступен, но если вы измените его позже, то не будет никакого способа узнать об этом.

Поэтому, как только ваша позиция закрывается, нет способа узнать из истории, каким был стоплосс, вы, конечно, можете узнать цену закрытия, но с чем вы будете сравнивать ее, чтобы проверить, сработал ли стоплосс?

 
Roberto Jacobs:
То есть DEAL_PRICE это HistoryDealGetDouble(ticket,DEAL_PRICE), а close_price это HistoryOrderGetDouble(ticket,ORDER_SL).
Это не работает, см. мое сообщение выше.
 
Alain Verleyen:
Это не работает, см. мое сообщение выше.
Спасибо, Ален, я должен провести дополнительные исследования по этому вопросу.
Причина обращения: