Советник открывает два рыночных ордера, buy и sell, а также несколько (зависит от параметра OrdersTek) отложенных buy limit и sell limit с лотом увеличенным в K_Lot раз.
Если установить значение K_Lot = 1, то все лоты будут равны.
Закрываем серию по ТР от точки общего безубытка.
Если не закрылись по ТР, то срабатывает отложенный лимитный ордер и приближает точку безубытка к текущей цене, и так далее.
Посмотреть вложение 367861
Параметры:
extern int StepStop = 25; //расстояние до первого стоп ордера
extern int StepLimit = 10; //расстояние между открываемыми ордерами в сетке ордеров
extern double K_Step = 2.5; //умножение шага
extern double Lots = 0.0; //лот, если=0 то расчет от баланса по RiskPercent %
extern double RiskPercent = 0.01; //процент от баланса при расчете лота Lot = Balance * (RiskPercent / 100.0) / MARGINREQUIRED
extern double K_Lot = 3.5; //умножение лота
extern double Max_Lot = 50; //ограничение размера лота
extern int DigitsLot = 2; //дискретность лота (2 - 0,01) (1 - 0,1)
extern int OrdersNoTP = 6; //кол-во ордеров, после которого не ставим тейкпрофит прибыльному паправлению
extern double ProfitClose = 0.1; //прибыль закрытия в % депозита
extern int Takeprofit = 45; //тейкпрофит в пунктах от безубытка
extern bool деление_профита = true; //ТР делится на число открытых позиций
sinput bool VirtualTS = false; //выставлять виртуальный трейлингстоп
extern int TrailingStop = 0; //длинна трала, 0 - откл
sinput string Filter_Time = "ограничение времени работы советника";
extern int TimeStart = 9 , //начало торговли
TimeEnd = 20, //окончание торговли
FridayHourClose = 12; //окончание торговли в пятницу
sinput int slippage = 3; //допустимое отклонение цены для рыночных ордеров
sinput int Magic = 1000; //уникальный номер ордеров этого советника
extern long Key = 0; //ключ для реального счета