Этот набор довольно специфичен.
Вы наверное помните недавнее поведение пары EURCHF, когда эта пара практически неподвижно стояла и можно было практически безболезненно и безопасно собирать пипсы. На 4-знаке и с еще некоторыми ухищрениями это вполне себе давало прибыль. Естественно ДЦ это не нравилось, так что увеличение спреда и раздвигание стоп уровней не удивило.
Вот тогда мне помог советник, который будет описан в этом посте.
Спред он конечно не уменьшил :) . Но довольно сильно сократил объем работы ручками (полного автомата я таки побоялся пускать).
Итак, видео инструкция представлена выше. Основные моменты там описаны.
Для каждого символа требуется вешать отдельный эксперт. По ресурсам он нетребователен.
сборка состоит из 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
Служит для формирования задачи закрытия ордера. Свойств нет.
Сначала выбирается ордер из списка, с помощью управляющей стрелки, затем устанавливается уровень закрытия ордера.
Наглядную работу со скриптом можно увидеть в видео-мануале выше.
Набор не претендует на верх удобства и довольно специфичен. Поэтому замечания и предложения будут кстати.
Почему реализованы только лимитники и тейк-профиты?
Потому что понятно как исполнять только лимитные ордера. Тейк-профиты по сути тоже лимитники.
Со стоповыми ордерами и стоп-лоссами сложнее.
Во-первых редко надо ставить их внутри стоп-левела.
Во-вторых, какая бы ни была реализация, она будет спорной.
Комментариев нет:
Отправить комментарий