Что такое экспертный советник Timed Order?
Timed Order («Запланированный ордер») — это простой экспертный советник для MetaTrader/cTrader, который позволяет совершить сделку в заданное время. Вы можете использовать этот советник для того, чтобы запланировать сделку на выходных для исполнения при открытии рынков. Его также можно использовать для назначения открытия сделки на время, когда вы планируете отсутствовать. Важно понимать, что Timed Order — это не полностью автоматический торговый робот — вы должны сами задать дату и время сделки, установить нужные вам стоп-лосс и тейк-профит, определить максимальное отклонение цены т.п. Однако, его настройки позволяют отложенное создание практически любого торгового ордера. Данный советник поддерживает расчет размера позиции на основе риска в дополнение к обычному фиксированному размеру. Он доступен для следующих платформ: MT4, MT5, cTrader.
«Запланированный ордер» — ваше лучшее решение для размещения запрограммированных сделок.
Принцип действия
Timed Order может работать в одном из двух режимов:
- Одна сделка (по умолчанию)
- Ежедневный режим
В режиме одной сделки, советник открывает одну-единственную сделку в указанное трейдером время.
В ежедневном режиме, советник будет открывать сделки в заданное время в каждый из выбранных дней недели. Например, он может открывать для вас сделку каждый день в 12:00 или каждый понедельник и четверг в 15:00 и так далее.
В обоих режимах время может быть задано или как серверное или как локальное. Время можно указать с точностью до секунд.
ЭС Timed Order поддерживает следующие типы сделок:
- Buy (Покупка)
- Sell (Продажа)
- Buy Limit (Лимит на покупку)
- Buy Stop (Стоп на покупку)
- Sell Limit (Лимит на продажу)
- Sell Stop (Стоп на продажу)
- Buy Stop Limit (Стоп-лимит на покупку, доступен только в МТ5)
- Sell Stop Limit (Стоп-лимит на продажу, доступен только в МТ5)
Вы можете установить стоп-лосс и тейк-профит для запланированного ордера. Экспертный советник поддерживает четыре типа СЛ/ТП:
- Price level (уровень цены) — конкретная цена. Если вы используете рыночный ордер (покупка или продажа), он может не сработать, если цена пройдет за СЛ/ТП, установленный в виде уровня цены.
- Distance (расстояние) — СЛ/ТП как расстояние в пунктах. Просто и более-менее гарантированно.
- ATR — множитель для значения индикатора ATR. Вы задаете множитель, период ATR и его таймфрейм.
- Spreads (спреды) — множитель для спреда по валютной паре на момент создания ордера.
Для советника можно задать уровень входа (Entry). Для отложенных ордеров обязательно задать или параметр Entry или параметр EntryDistancePoints. Для рыночных ордеров, он используется совместно со входным параметром MaxDifference для того, чтобы избежать исполнения сделки на невыгодном уровне.
Параметр истечения срока действия может быть использован для отложенных ордеров. В таком случае, если ордер не сработает до заданного времени, он будет удален автоматически.
Вы также можете контролировать, сколько попыток совершит платформа для создания ордера, если она столкнется с какой-то ошибкой.
Еще одной полезной опцией является максимально допустимый спред, чтобы избежать исполнения сделки при слишком широком спреде. Советник, если это указано через входной параметр RetryUntilMaxSpread, может пытаться открыть сделку пока спред не опуститься до желаемого значения.
Функция расчета размера позиции может быть включена для того, чтобы советник основывал объем ордера на основе вашего риска и стоп-лосса. Также можно задать обычный фиксированный размер позиции.
Вы можете настроить алерты, чтобы в случае успеха или неудачи получить какое-то уведомление от советника.
Примеры сделок
MetaTrader
Вот как выглядит экспертный советник на графике платформы MetaTrader 5. Данный экземпляр запущен для открытия ордера на покупку (Buy) с фиксированным стоп-лоссом и с тейк-профитом на основе ATR:
cTrader
А вот пример запланированной сделки в платформе cTrader. Ордер на продажу намечен со стоп-лоссом и тейк-профитом в виде фиксированных дистанций от цены открытия:
Без бэктеста
Из-за особенностей работы ЭС Timed Order бэктесты с ним не проводились.
Входные параметры
Торговля
- OrderTime — дата и время, когда ордер должен быть создан. В cTrader — шесть отдельных параметров: год, месяц, день, час, минута и секунда. Этот параметр игнорируется в ежедневном режиме.
- OrderType (по умолчанию = Buy) — тип ордера. Один из следующих вариантов: Buy (покупка), Sell (продажа), Buy Limit (лимит на покупку), Buy Stop (стоп на покупку), Sell Limit (лимит на продажу), Sell Stop (стоп на продажу), Buy Stop Limit (стоп-лимит на покупку), Sell Stop Limit (стоп-лимит на продажу).
- Entry (по умолчанию = 0) — цена входа для отложенных ордеров; желаемая цена для рыночных ордеров.
- EntryDistancePoints (по умолчанию = 0) — расстояние в пунктах от цены во время размещения ордера для отложенных ордеров. Ничего не делает для рыночных ордеров.
- StopPrice (по умолчанию = 0) — стоп-цена для ордеров типа стоп-лимит. Только в MT5.
- SLType (по умолчанию = Price level) — тип стоп-лосса. Один из следующих вариантов: price level (уровень цены), distance (расстояние), ATR, spreads (спреды).
- StopLoss (по умолчанию = 0) — значение для стоп-лосса в комбинации с выбранным типом. Для уровня цены — конкретная цена. Для расстояния — число пунктов. Для ATR — множитель. Для спредов — тоже множитель.
- TPType (по умолчанию = Price level) — тип тейк-профита. Один из следующих вариантов: price level (уровень цены), distance (расстояние), ATR, spreads (спреды).
- TakeProfit (по умолчанию = 0) — значение для тейк-профита в комбинации с выбранным типом. Для уровня цены — конкретная цена. Для расстояния — число пунктов. Для ATR — множитель. Для спредов — тоже множитель
- TimeType (по умолчанию = Server) — тип времени, которое задается чере параметр OrderTime. Может быть или локальное время платформы (local) или серверное время (server).
Управление
- Expires (по умолчанию = 0) — время истечения срока действия для отложенного ордера. В cTrader — шесть отдельных параметров: год, месяц, день, час, минута и секунда.
- Retries (по умолчанию = 10) — сколько попыток создания ордера предпринять, прежде чем сдаться?
- MaxDifference (по умолчанию = 0) — если OrderType установлен в Buy или Sell и задано ненулевое значение Entry, советник будет пробовать открывать сделку только, если разница между текущей ценой и значением Entry не превышает значение данного параметра (MaxDifference). Значение указывается в пунктах.
- MaxSpread (по умолчанию = 3) — если спред на момент создания ордера больше этого значения, ордер не будет создан.
- RetryUntilMaxSpread (по умолчанию = false) — если true, советник подождет, пока спред не опуститься до MaxSpread, прежде чем размещать ордер.
- Slippage (по умолчанию = 30) — максимально допустимое проскальзывание в пунктах.
- ATR_Timeframe (по умолчанию = PERIOD_CURRENT) — таймфрейм для индикатора ATR. Используется только, если SLType или TPType установлен в ATR.
- ATR_Period (по умолчанию = 0) — период для индикатора ATR. Используется только, если SLType или TPType установлен в ATR.
Daily mode
- DailyMode (по умолчанию = false) — если true, советник будет работать в ежедневном режиме, используя параметры ниже и игнорируя параметр OrderTime.
- DailyTime (по умолчанию = "18:34:00") — время, когда ордер должен быть создан при работе в ежедневном режиме. В cTrader — три отдельных параметра: час, минута, секунда.
- Monday (по умолчанию = true) — если true, советник будет открывать сделки по понедельникам.
- Tuesday (по умолчанию = true) — если true, советник будет открывать сделки по вторникам.
- Wednesday (по умолчанию = true) — если true, советник будет открывать сделки по средам.
- Thursday (по умолчанию = true) — если true, советник будет открывать сделки по четвергам.
- Friday (по умолчанию = true) — если true, советник будет открывать сделки по пятницам.
- Saturday (по умолчанию = false) — если true, советник будет открывать сделки по субботам.
- Sunday (по умолчанию = false) — если true, советник будет открывать сделки по воскресеньям.
Размер позиции
- CalculatePositionSize (по умолчанию = false) — если true, будет использоваться расчет позиции, основанный на допустимом уровне риска.
- FixedPositionSize (по умолчанию = 0.01) — фиксированный размер позиции на случай, если CalculatePositionSize = false.
- Risk (по умолчанию = 1) — допуск риска в виде процентов от баланса/средств на торговом счете. Работает только когда CalculatePositionSize = true. Этот параметр игнорируется, если UseMoneyInsteadOfPercentage = true.
- MoneyRisk (по умолчанию = 0) — допуск риска в валюте счета. Работает только если CalculatePositionSize = true. Требует установки UseMoneyInsteadOfPercentage равным true.
- UseMoneyInsteadOfPercentage (по умолчанию = false) — если true, то размер позиции рассчитывается на основании допустимого риска в валюте счета (MoneyRisk) вместо процентных пунктов от баланса/средств счета (Risk). Работает только если CalculatePositionSize = true.
- UseEquityInsteadOfBalance (по умолчанию = false) — если true, то размер позиции рассчитывается на основании средств (equity), доступных на счете, вместо баланса счета. Работает только если CalculatePositionSize = true. Игнорируется, если UseMoneyInsteadOfPercentage = true.
- FixedBalance (по умолчанию = 0) — если равен ненулевому значению, то будет использоваться вместо текущего баланса/средств счета при расчете размера позиции. Работает только если CalculatePositionSize = true.
Alerts
- AlertsOnSuccess (по умолчанию = false) — если true, советник включит алерт, если ордер размещен успешно.
- AlertsOnFailure (по умолчанию = false) — если true, советник включит алерт, если ордер не получилось разместить.
- EnableNativeAlerts (по умолчанию = false) — если true, индикатор будет использовать родной всплывающий сигнал платформы МетаТрейдер для алертов.
- EnableEmailAlerts (по умолчанию = false) — если true, индикатор будет использовать электронную почту для алертов. Электронная почта должна быть правильно настроена в МетаТрейдере через меню Сервис->Настройки->Почта.
- EnablePushAlerts (по умолчанию = false) — если true, индикатор будет использовать пуш-уведомления для отправки алертов на ваше мобильное устройство. Уведомления должны быть правильно настроены в МетаТрейдере через меню Сервис->Настройки->Уведомления.
Разное
- Magic (по умолчанию = 20220913) — комментарий к позициям, открываемым данным ЭС. Отсутствует в cTrader.
- OrderCommentary (по умолчанию = "TimedOrder") — комментарий для сделок данного ЭС.
- Silent (по умолчанию = false) — если true, советник не будет выводить никакую информацию в поле комментария графика.
- Logging (по умолчанию = true) — если true, советник будет вести журнал своей работы, записывая все в файл, название которого начинается с "TO-Log-<Торговый_инструмент>". Отсутствует в cTrader.
Скачать (ver. 1.01, 2023-11-20)
MetaTrader 4
Timed Order («Запланированный ордер») в .zip Timed Order («Запланированный ордер») в .mq4
MetaTrader 5
Timed Order («Запланированный ордер») в .zip Timed Order («Запланированный ордер») в .mq5
cTrader
Timed Order («Запланированный ордер») в .zip Timed Order («Запланированный ордер») в .cs
Вы можете открыть торговый счет с любым из Форекс-брокеров с MT4, чтобы свободно использовать представленный здесь экспертный советник для платформы МетаТрейдер 4. Если вы хотите использовать версию советника для МТ5, то вам понадобится счет у одного из брокеров, которые предоставляют платформу МетаТрейдер 5. Пожалуйста, выбирайте из нашего списка Форекс-брокеров с cTrader, если вы предпочитаете использовать версию советника для этой платформы.
Обсуждение
Внимание! Если у вас возникли трудности с установкой данного экспертного советника в платформе MetaTrader, пожалуйста, следуйте туториалу по установке экспертных советников для МТ4/МТ5.
Протестировали этот экспертный советник и хотите поделиться результатами? Есть вопросы или замечания? Обсудите их на форуме!
Список изменений
Версия1.01 — 2023-11-20
- Добавлен ежедневный режим для открытия сделок в каждый выбранный день недели.
- Добавлена возможность (EntryDistancePoints) задавать цену входа отложенного ордера в виде расстояния от цены во время создания.
- Добавлена возможность (RetryUntilMaxSpread) указать советнику ожидать уменьшения спреда до допустимого значения перед размещением ордера
- Добавлены параметры для установки секунд для времени создания ордера и времени истечения ордера в версии для cTrader.
- Исправлены незначительные опечатки в исходном коде.
Версия 1.001 — 2023-10-31
- Исправлена ошибка в расчете размера позиции в версии для MT4. Ошибка приводила, к тому что всегда использовался фиксированный размер позиции.
Версия 1.00 — 2022-09-23
- Первый релиз экспертного советника Timed Order («Запланированный ордер»).