Закрытие ордеров перекрытием

 

Хотелось бы научить советника закрывать имеющиеся ордера перекрытием, а не просто по TP или SL.

Как реализовать это программно?

 

Может вот эта функция подойдет ?

bool OrderCloseBy( int ticket, int opposite, color Color=CLR_NONE) 
Закрытие одной открытой позиции другой позицией, открытой по тому же самому инструменту, но в противоположном направлении. Возвращает TRUE при успешном завершении функции. Возвращает FALSE при неудачном завершении функции.

//--------------------

Не во всех ДЦ эта функция допускается к использованию.

 
А если ордеров больше 2-х.. как быть?)
 

Магики предусматривать. Для каждого ордера.

Или как-ниб. иначе их заранее "идентифицировать"

 
ALex2008 >>:
А если ордеров больше 2-х.. как быть?)

Пересчитать все объемы (лоты) открытых поз в цикле и выставить один встречный ордер этого самого объема. Потом проверять, если есть две встречные, то закрывать по OrderCloseBy().

 

Reshetov

Можно пример реализации в коде...

Причина обращения: