Техническое задание
Всем привет. Если я что-то упустил на ваш взгляд - сообщайте. Новым идеям также рад.
Стратегия советника основана на пробое уровней индикатора WATR. Если WATR говорит о том, что сейчас нисходящий тренд, то советник выставляет отложенный ордер BuyStop чуть выше от уровня WATR. Расстояние от уровня WATR до отложенного ордера задаётся параметром DistanceToPendingOrder. Если цена продолжает падать, то уровни WATR тоже падают вслед за ценой. Каждый раз, как уровень WATR падает, советник модифицирует отложенный ордер BuyStop так, чтобы отложенный ордер был на расстоянии DistanceToPendingOrder от уровня WATR. Если WATR говорит о том, что сейчас восходящий тренд, то советник выставляет отложенный ордер SellStop. Всё зеркально. Планирую запускать советник на 15-минутном графике. Параметры WATR на этом графике по умолчанию – WATR_K=12; WATR_M=6; ATR=44
-----General-----
DistanceToPendingOrder=3; //Расстояние в пунктах от уровня WATR до отложенного ордера
MagicNumber=1; //Уникальный номер для ордера
-----MoneyManagement-----
EnableMoneyManagement=true; //Управление размером ордера в зависимости от размера депозита. Если true, то размер ордера будет таким, что убыток, полученный по StopLoss, будет равен тому процентному значению, что задано параметром RiskPercentPerOrder, в зависимости от значения StopLoss. Если false, то размер ордера будет фиксирован и определяться значением параметра FixsedOrderSize.
RiskPercentPerOrder=5; //Допустимый процент убытка по депозиту. Учитывается в расчёте размера ордера, если MoneyManagement=true.
FixsedOrderSize=0.01; //Фиксированный размер ордера, если MoneyManagement=false
StopLoss=40; //Расстояние в пунктах до StopLoss ордера. Учитывается в расчёте размера ордера, если MoneyManagement=true.
-----PartClose-----
EnablePartClose=true; //Частичное закрытие ордера. Если образовалась прибыль, равная значению TakeProfit1, то советник закрывает часть ордера. То, какую часть ордера закрывать задаёт параметр PartClosePercent. Если false, то советник не использует частичное закрытие ордера.
PartClosePercent=50; //Какой процент ордера закрывать, если PartClose=true. Например, если советник открыл ордер объёмом 0,1 лота и если PartClosePercent=50, то советник закроет 0,05 лота = 50% открытого лота.
TakeProfit1=15; //Расстояние в пунктах до первого TakeProfit. Если PartClose=true, то это виртуальный TakeProfit. Реальный TakeProfit не отсылается торговому серверу брокера. Когда образовывается прибыль равная TakeProfit1 и если PartClose=true, то советник закрывает первую часть ордера. Но если PartClose=false, то TakeProfit1 – это реальный, а не виртуальный TakeProfit. Если PartClose=true, то реальный TakeProfit, который отправляется серверу брокера, задаётся параметром TakeProfit2.
TakeProfit2=50; // Расстояние в пунктах до второго TakeProfit. Если PartClose=false, то этот параметр не учитывается. Если PartClose=true, то это значение в пунктах реального TakeProfit, по которому закрывается вторая часть ордера.
-----StopLoss management-----
EnableTrailingStop=true; //Если true, то советник трейлит ордер. Если false, то трейлинг отключён
TrailingStop=15; //Когда образовалась прибыль (в пунктах), равная TrailingStop, советник перемещает StopLoss на расстояние, заданное параметром TrailingStop (на уровень безубытка). Возможно, есть смысл его делать равным значению TakeProfit1.
TrailingStep=5; //Шаг трейлинга
EnableBreakeven=true; //Работает только если EnableTrailingStop=false. Если EnableBreakeven=true, то советник переместит StopLoss на уровень безубытка. То, когда переносить – за это отвечает параметр BreakevenLevel. Если EnableBreakeven=false, и EnableTrailingStop=false, то StopLoss на протяжении всей жизни ордера не должен меняться.
BreakevenLevel=15; //Уровень безубытка в пунктах. Учитывается только если EnableTrailingStop=false и EnableBreakeven=true. После достижения прибыли, равной параметру BreakevenLevel советник переносит StopLoss на уровень безубытка. Возможно, его стоит делать равным значению TakeProfit1.
-----Slippage-----
OpenSlippage=5; //Допустимое проскальзывание при открытии ордера
CloseSlippage=100; //Допустимое проскальзывание при закрытии ордера, как первой части, так и второй
-----WATR Settings-----
WATR_K=12;
WATR_M=6;
ATR=44;