Добавляете стоп-лосс по TRADE_ACTION_DEAL или TRADE_ACTION_SLTP?

Согласно Программированию советников для MetaTrader 5...

request.action = TRADE_ACTION_DEAL;

[...]

request.sl = 0;

request.tp = 0;

request.deviation = 50;

OrderSend(request,result);

...не будет работать, если мой брокер использует типы рыночного или биржевого исполнения. Мне пришлось бы добавить стоп-лосс и тейк-профит, изменив ордер через request.action = TRADE_ACTION_SLTP; задним числом, вместо этого хак, без которого я хотел бы обойтись, если это возможно. Но как узнать, какой тип исполнения использует мой брокер (это ActiveTrades), если не методом проб и ошибок (то есть убытков)?

PS: типы исполнения: Мгновенное, Запрос, Рынок или Обмен.


person bromelio    schedule 14.02.2018    source источник


Ответы (1)


CTrade.OrderModify() для модификации. отправьте простой рыночный ордер, а затем, после успеха, измените его как для брокеров ecn, так и для брокеров, не входящих в ecn.

person Daniel Kniaz    schedule 14.02.2018