Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Советники

Боремся с большими стоплевелами - эксперт для MetaTrader 4

Просмотров:
5577
Рейтинг:
(10)
Опубликован:
2013.01.14 16:09
Обновлен:
2014.04.21 14:56
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

В архиве сборка всех файлов, чтобы было удобнее качать.

____________________________________________________________

Написал для себя, чтобы работать с EURCHF в недавнем известном прошлом в одном из ДЦ. Условия для работы были подходящие, стоплевелы -- слишком большие.

Набор представляет собой пачку скриптов для формирования виртуальных заявок и собственно главный эксперт, который собирает заявки и следит за их исполнением.

Для каждого символа требуется вешать отдельный эксперт. По ресурсам он нетребователен.

Видео-мануал:


____________________________________________________

Итак, сборка состоит из 4 файлов:

VirtualLimitAndTP.mq4

Сам советник, который занимается исполнением задач.

Вот так простенько и непритязательно он выглядит:




Это эксперт в рабочем состоянии.

С помощью управляющего объекта можно удалить задачу.
Задачи сохраняются в файл, отдельный для каждого счета и инструмента, поэтому можно свободно менять ТФ и счета на одном терминале, ничего не должно потеряться.
Но понятно, что задачи будут исполняться только для активного на данный момент счета.

Настройки


extern int MaxSpread -- максимально допустимый спред для инструмента. Из-за того, что учет всех задач идет по биду (т.к. по биду строится график), приходится учитывать спред для некоторых действий. Если спред инструмента будет больше, вместо него будет браться заданный в этой настройке.
extern int Magic -- идентификационный номер всех ордеров, открытых этим экспертом. По сути не нужен, просто на всякий случай про запас.
extern bool ConfirmActions -- если true, будет требовать подтверждения при удалении задачи.
extern bool AlertComplete -- если true, при выполнении задачи будет выдавать звуковой сигнал и делать запись в лог.
extern string AlertSound -- имя файла звука.

Эксперт зациклен. Поэтому чтобы попасть в окно настроек во время работы, вначале придется отключить советники (кнопка на панели)


В тестере эксперт не работает.


Скрипты.

Именно с помощью них формируются задачи для эксперта.

В принципе, задачи можно формировать и при неработающем эксперте, они потом подхватятся при запуске эксперта. Но тогда они могут затирать друг друга.

Но лучше и безопаснее таки это делать, когда эксперт запущен.

Команды передаются через глобальные переменные. Если хотите удалить задачи, еще не подхваченные экспертом, их можно найти в глобальных переменных (F3 в терминале)

Выглядят они примерно так:





scripts\VirtualOpenSell.mq4

Служит для формирования задачи на продажу. В свойствах указывается только лот.

Наглядную работу со скриптом можно увидеть в видео-мануале выше.



С помощью управляющей линии выставляется ценовой уровень ордера. Т.е. линию надо выделить двойным щелчком и перетащить на желаемый уровень.

Цена для задачи на продажу должна быть выше текущего бида.
Если цена ниже, линия вернется в исходное положение.
Если все правильно, появится диалог подтверждения, после чего скрипт завершит работу.
Если вы хотите остановить работу скрипта, сделать это можно через контекстное меню графика.



scripts\VirtualOpenBuy.mq4

Служит для формирования задачи на покупку. В свойствах указывается только лот.

Работает аналогично предыдущему скрипту.

Наглядную работу со скриптом можно увидеть в видео-мануале выше.

scripts\VirtualClose.mq4 

Служит для формирования задачи закрытия ордера. Свойств нет.

Сначала выбирается ордер из списка, с помощью управляющей стрелки, затем устанавливается уровень закрытия ордера.

Наглядную работу со скриптом можно увидеть в видео-мануале выше.

_____________________________________________________________

Набор не претендует на верх удобства и довольно специфичен. Поэтому замечания и предложения будут кстати.

Почему реализованы только лимитники и тейк-профиты? 

Потому что понятно как исполнять только лимитные ордера. Тейк-профиты по сути тоже лимитники.

Со стоповыми ордерами и стоп-лоссами сложнее.

Во-первых редко надо ставить их внутри стоп-левела.

Во-вторых, какая бы ни была реализация, она будет спорной.

ATR Normalize & Range Rider ATR Normalize & Range Rider

Индикаторы технического анализа от Ларри Вильямса, которые позволяют найти точку входа в рынок.

Albus_MultiChart_1 Albus_MultiChart_1

Индикатор Albus_MultiChart_1 позволяет рисовать в основном окне график любого инструмента любого периода.

Пример использования именованных каналов (Named Pipes) в MetaTrader 4 Пример использования именованных каналов (Named Pipes) в MetaTrader 4

Перед многими разработчиками встает одинаковая проблема - как пробиться в песочницу торгового терминала без применения небезопасных DLL. Одним из простых и безопасных методов является использование стандартных именованных каналов (Named Pipes).

Сборщик Тиков Сборщик Тиков

Запись, хранение и отображение данных, полноценный тиковый чарт в МetaТrader.