Написал робота на MQL4, который шлет сигнал, если волатильность возрастает. Простейшая программа, если цена проходит с открытия 2 ATR, то шлем письмо. Запустил на EURUSD M15.
#property copyright «TT»
#property link «
smart-lab.ru/profile/TTrade/»
extern int ATRparam=16;
bool signal;
double flatparam;
int start()
{
if (Volume[0]==1)
{
signal=0;
flatparam=2*iATR(NULL,0,ATRparam,0);
}
if (MathAbs(Open[0]-Bid)>flatparam && signal==0)
{
SendMail(«EUR»,«EUR Bid „+Bid+“ 2ATR „+(Bid-Open[0]));
signal=1;
}
return(0);
}
Настроил Метатрейдер, чтобы слал почту мне на телефон в виде СМС. У меня Билайн, у них на сайте нет никакой информации о шлюзе e-mail to sms, но он на самом деле есть. Добиваться его активации нужно через техподдержку.
В 16:56 приходит СМС:
EUR Bid 1.32037000 2ATR -0.00166000
Иду до компьютера, открываю терминал, вижу, что евро есть еще куда падать. Открываю позицию. Стоп, профит по 16 пунктов (2ATR). Смотрю новости S&P повысил прогноз по рейтингу США. Движение имеет явную причину, можно расслабиться, вероятность профита очень велика. Ну и собственно, результат:
Спасибо за внимание!
Пробой диапазона
Под исторические данные я ничего не подгонял. Точнее, конечно, я проверял на истории как это работало бы полностью автономно. Там неплохих результатов с любым множителем ATR можно добиться. 2*ATR(16) взяты просто от балды, такие параметры дают, приемлемую для меня, частоту сигналов.
А логика в этом очень простая. Сильные движения как правило начинаются довольно резко. Я просто хочу быть у терминала в момент начала движения. Подробнее тут:
smart-lab.ru/blog/115514.php