Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 4238
- Рейтинг:
- Опубликован:
- 2012.04.06 14:23
- Обновлен:
- 2014.04.21 14:55
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Мотивация: не люблю "свалок", в том числе и кодов. Универсализм - философия движения прогресса. В советские времена (кто помнит), на ЛЮБОЙ технике ОДНА КНОПОЧКА - соответствовала ОДНОЙ ФУНКЦИИ! Сегодня ЛЮБОЕ электронное или бытовое устройство стремится минимизировать количество КНОПОЧЕК. Я согласен с ТАКОЙ философией! ;)
Этот скрипт с успехом заменит 5-6 стандартных скриптов.
Кому-то такое решение может показаться сложным - у вас есть богатый выбор, скриптов для этих целей навалом.
Управление скриптом можно осуществлять двумя способами:
- через внешние переменные (отключен);
- через глобальные переменные терминала (F3).
Какие переменные настраиваются:
extern int MG = 1; // Magic: 1 - Магик "выделенного" ордера extern int Type = -1; // OrderType extern int TypeProfit = 0; // < 0 - лоссовые; 0 - все; > 0 - профитные extern bool OnlyDrop = TRUE; // Закрытие только "выбранного" ордера extern int PartClosePercent = 100; // Сколько процентов родительского ордера закрыть extern bool SendReverseOrder = FALSE; // Открытие реверсного ордер extern double K_LotsReverse = 1; // Коэффициент увеличения размера реверсного ордера extern int Order_SL = 40; // в пп. для 4-ёх знаков extern int Order_TP = 40; // в пп. для 4-ёх знаков extern bool PrintDescription = FALSE; // Распечатать инструкцию по настройке переменных
Для получения доступа к этим настройкам после запуска скрипта нужно в коде раскомментировать эту строку:
//#property show_inputs
Мне удобно осуществлять управление скриптом через глобальные переменные (GV) терминала. Управляющие переменные скрипта имеют префикс "GV_". Как это (управление) осуществляется:
- если при запуске скрипта отсутствует одна из 11-ти GV-переменных, скрипт сам создаст ВСЕ GV-перменные, возьмёт значения из настроек для вновь созданных GV-переменных, и на основе их выведет в Alert() то, что собирается сделать;
- если Вы ещё не освоились и Вам трудно осмыслить названия GV-переменных, можно на этом этапе, удалив, любую из переменных, например "Slip", задать переменной Print = 1, и скрипт выведет на печать расшифровку для вводимых в GV-переменные значений;
- настраиваете значения GV-переменных, и если все 11-ть переменных в наличии, скрипт выполнит указанные ему действия.
Рекомендую потренироваться с настройками, удаляя каждый раз одну из GV-переменных, и проверяя Ваши намерения с полученной инструкцией скриптом, которую (напоминаю) он выведет в Alert().
Что делать с GV-переменными скрипта после выполненных действий:
- можно оставить;
- можно каждый раз удалять и создавать заново. Удаление автоматически организовывается через переменную (в коде) gb_DeleteGV.
Какие действия выполняет скрипт:
- закрывает рыночные ордера;
* фильтр OnlyDrop - бросаете скрипт на нужный ордер (0 - ALL; 1 - DROP (ТОЛЬКО выбранный)) - зона "чувствительности" 25 пп. для 4-ёх знаков;
* фильтр TypeProfit ориентируется на профитность ордеров (<0 - LOSS (<0); 0 - ALL; > 0 - PROFIT (>0));
* фильтр по Магику (-1 - ALL; 0 - HANDLE; 1 - DROP; > 1 - MagicNumber());
* частичное закрытие ордера в % от OrderLots() (0 < PartClosePercent <= 100).
- удаляет отложенные ордера;
- при закрытии рыночного ордера, который выбран через помещение на него скрипта, при флаге SendReverseOrder = 1, откроется REVERSE (противоположный) ордер с настраиваемым лотом посредством переменной K_LotsReverse.
Все необходимые для работы скрипта файлы внутри архива.
Изменения от 27.08.2012: обновил, входящие в состав скрипта библиотеки.
Изменения от 20.12.2012: обновил, входящие в состав скрипта библиотеки, ввёл процедуру закрытия встречными ордерами, исправил ошибку формирования СТОПов у реверсного ордера.

Советник закрывает все ордера при достижении заданного размера профита или убытка в валюте депозита.

Робот входит в позицию при пересечении мувингов + отступ Delta пунктов в нужном направлении.

Библиотека интерфейса MT4 -> R

Улучшенная версия стандартного индикатора Moving Average, теперь на часовом таймфреме вы можете видеть скользящие средние старших таймфремов.