Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
- Просмотров:
- 5643
- Рейтинг:
- Опубликован:
- 2013.01.14 16:09
- Обновлен:
- 2014.04.21 14:56
-
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
В архиве сборка всех файлов, чтобы было удобнее качать.
____________________________________________________________
Написал для себя, чтобы работать с EURCHF в недавнем известном прошлом в одном из ДЦ. Условия для работы были подходящие, стоплевелы -- слишком большие.
Набор представляет собой пачку скриптов для формирования виртуальных заявок и собственно главный эксперт, который собирает заявки и следит за их исполнением.
Для каждого символа требуется вешать отдельный эксперт. По ресурсам он нетребователен.
Видео-мануал:
____________________________________________________
Итак, сборка состоит из 4 файлов:
VirtualLimitAndTP.mq4
Вот так простенько и непритязательно он выглядит:
![](https://c.mql5.com/18/26/main_1.png)
Это эксперт в рабочем состоянии.
С помощью управляющего объекта можно удалить задачу.Задачи сохраняются в файл, отдельный для каждого счета и инструмента, поэтому можно свободно менять ТФ и счета на одном терминале, ничего не должно потеряться.
Но понятно, что задачи будут исполняться только для активного на данный момент счета.
Настройки
extern int Magic -- идентификационный номер всех ордеров, открытых этим экспертом. По сути не нужен, просто на всякий случай про запас.
extern bool ConfirmActions -- если true, будет требовать подтверждения при удалении задачи.
extern bool AlertComplete -- если true, при выполнении задачи будет выдавать звуковой сигнал и делать запись в лог.
extern string AlertSound -- имя файла звука.
Эксперт зациклен. Поэтому чтобы попасть в окно настроек во время работы, вначале придется отключить советники (кнопка на панели)
В тестере эксперт не работает.
Скрипты.
Именно с помощью них формируются задачи для эксперта.
В принципе, задачи можно формировать и при неработающем эксперте, они потом подхватятся при запуске эксперта. Но тогда они могут затирать друг друга.Но лучше и безопаснее таки это делать, когда эксперт запущен.
Команды передаются через глобальные переменные. Если хотите удалить задачи, еще не подхваченные экспертом, их можно найти в глобальных переменных (F3 в терминале)Выглядят они примерно так:
scripts\VirtualOpenSell.mq4
Служит для формирования задачи на продажу. В свойствах указывается только лот.
Наглядную работу со скриптом можно увидеть в видео-мануале выше.
С помощью управляющей линии выставляется ценовой уровень ордера. Т.е. линию надо выделить двойным щелчком и перетащить на желаемый уровень.
Цена для задачи на продажу должна быть выше текущего бида.Если цена ниже, линия вернется в исходное положение.
Если все правильно, появится диалог подтверждения, после чего скрипт завершит работу.
Если вы хотите остановить работу скрипта, сделать это можно через контекстное меню графика.
![](https://c.mql5.com/18/26/pic4_1.png)
scripts\VirtualOpenBuy.mq4
Служит для формирования задачи на покупку. В свойствах указывается только лот.Работает аналогично предыдущему скрипту.
Наглядную работу со скриптом можно увидеть в видео-мануале выше.
scripts\VirtualClose.mq4
Служит для формирования задачи закрытия ордера. Свойств нет.
Сначала выбирается ордер из списка, с помощью управляющей стрелки, затем устанавливается уровень закрытия ордера.
Наглядную работу со скриптом можно увидеть в видео-мануале выше.
_____________________________________________________________
Набор не претендует на верх удобства и довольно специфичен. Поэтому замечания и предложения будут кстати.
Почему реализованы только лимитники и тейк-профиты?
Потому что понятно как исполнять только лимитные ордера. Тейк-профиты по сути тоже лимитники.
Со стоповыми ордерами и стоп-лоссами сложнее.
Во-первых редко надо ставить их внутри стоп-левела.
Во-вторых, какая бы ни была реализация, она будет спорной.
![ATR Normalize & Range Rider](https://c.mql5.com/i/code/indicator.png)
Индикаторы технического анализа от Ларри Вильямса, которые позволяют найти точку входа в рынок.
![Albus_MultiChart_1](https://c.mql5.com/i/code/indicator.png)
Индикатор Albus_MultiChart_1 позволяет рисовать в основном окне график любого инструмента любого периода.
![Пример использования именованных каналов (Named Pipes) в MetaTrader 4](https://c.mql5.com/i/code/script.png)
Перед многими разработчиками встает одинаковая проблема - как пробиться в песочницу торгового терминала без применения небезопасных DLL. Одним из простых и безопасных методов является использование стандартных именованных каналов (Named Pipes).
![Сборщик Тиков](https://c.mql5.com/i/code/indicator.png)
Запись, хранение и отображение данных, полноценный тиковый чарт в МetaТrader.