LiuGuanYi

  • Эксперты
  • Bo Wen Che
    Bo Wen Che
    Я независимый трейдер и разработчик алгоритмических торговых систем. Основные направления моей работы — золото, Bitcoin, американские фьючерсы и валютный рынок.
  • Версия: 35.2
  • Активации: 5
Пожалуйста, прочитайте это перед началом работы

Это не советник, который требует сложной настройки параметров. Ключевые параметры уже прошли большое количество тестов и зафиксированы внутри программы. Я не хочу, чтобы пользователи произвольно меняли внутренние параметры и в итоге получали систему, которая уже не имеет ничего общего с исходной моделью.

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

1|Реальный счёт доступен для публичного наблюдения   https://www.mql5.com/zh/signals/2386318?source=Site+Signals+My

Брокер: EC Markets
Сервер: ECMarkets-MT5-Live01
Счёт: 81206286
Инвесторский пароль: Liuguanyi123@ — перед публикацией убедитесь, что это именно пароль MT5 только для чтения

Это реальный торговый счёт, на котором можно наблюдать фактическое поведение советника и его ордеров в реальном рынке.

2|Используйте ECN-счёт с низким спредом

Это очень важно.

Основные тесты и рабочая среда выполнялись на ECN-счёте с низким спредом: тестовый спред около 5–8 пунктов, параметр комиссии — 3.

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

Однако если использовать счёт со спредом значительно выше тестового, с аномальным проскальзыванием или брокера, чьи условия заметно отличаются от стандартной ECN-среды, итоговая доходность и просадка изменятся.

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

Поэтому при использовании счёта с высоким спредом не следует ожидать результатов, полностью совпадающих с моими тестами.

3|Стратегия не зависит от сверхнизкой задержки

Данная стратегия не является арбитражем задержек, не использует задержку котировок и не требует сверхнизкой сетевой задержки для получения преимущества.

В тестах с различной задержкой — от примерно 1 мс до 500 мс — итоговые результаты не показали критических структурных различий.

Поэтому нет необходимости покупать дорогой сервер с минимальной задержкой специально для этой системы. Достаточно стабильного обычного VPS или локального компьютера.

Для этой стратегии:

Стабильное соединение намного важнее, чем погоня за задержкой в 1 мс.

4|Ключевые параметры скрыты

Внутренние параметры, которые реально определяют поведение системы, уже заданы заранее. Я сознательно не открывал пользователям большое количество исследовательских настроек.

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

Пользователю нужно выбрать только:

Тип счёта, уровень капитала и направление торговли.

Остальные ключевые параметры контролируются системой автоматически.

Вы выбираете уровень риска, а не проектируете стратегию заново.

5|Уровень капитала определяет интенсивность риска

Если на счёте 2 500 USD, стандартная настройка — выбрать уровень капитала 2 500 USD; для счёта 5 000 USD — уровень 5 000 USD; для счёта 10 000 USD — уровень 10 000 USD. Также можно использовать центовый счёт — для запуска достаточно примерно 25 USD.

Это наиболее нормальный и рациональный способ использования системы.

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

Поэтому в итоге я решил:

Передать выбор уровня риска самому пользователю.

Уровень капитала — это не просто метка баланса. По сути, он определяет интенсивность риска, с которой работает система.

Если фактический капитал равен выбранному уровню — это стандартный риск. Если фактический капитал выше выбранного уровня — относительный риск снижается. Если фактический капитал ниже выбранного уровня — относительный риск увеличивается.

6|Если вы готовы принять больший риск, можно выбрать более высокий уровень капитала

Например, даже при фактическом капитале 2 500 USD можно выбрать уровень 5 000 USD.

В этом случае система будет работать по риск-структуре, рассчитанной для уровня 5 000 USD.

Результат предельно понятен:

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

Это не ошибка и не аномалия. Это сознательное повышение риска пользователем.

Если вы не готовы переносить более сильные колебания капитала, не используйте высокий уровень капитала на маленьком счёте.

Высокая доходность никогда не бывает бесплатной.

Информация о тестировании

Публичный период тестирования:

1 марта 2024 года — 5 августа 2026 года

Причина начала теста с 2024 года состоит в том, что в моей текущей исторической среде EC Markets надёжные реальные тиковые данные доступны именно с этого периода.

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

Я показываю только то, что действительно можно проверить.

Счёт 2 500 USD|Уровень капитала 2 500 USD

Начальный капитал: 2 500 USD
Итоговая чистая прибыль: 6 603 USD
Чистая доходность: около 264%
Итоговый капитал: примерно в 3,64 раза выше начального
Максимальная просадка от пика капитала: около 16%
Максимальная сумма просадки в тесте: около 1 120 USD

Если напрямую сравнивать 1 120 USD с начальным капиталом 2 500 USD, это составляет примерно 44,8% от исходного капитала.

Важно понимать:

Максимальная просадка от пика капитала и максимальная сумма просадки как процент от первоначального капитала — это разные статистические показатели.

Стратегия динамически рассчитывает фактический торговый объём в соответствии с выбранным уровнем капитала. Поэтому при большем фактическом капитале и том же уровне, если структура прибыли остаётся схожей, относительный процент просадки обычно дополнительно снижается.

Счёт 10 000 USD|Уровень капитала 10 000 USD

Начальный капитал: 10 000 USD
Итоговая чистая прибыль: 26 395 USD
Чистая доходность: около 263,95%
Максимальная просадка от пика капитала: около 16%
Максимальная сумма просадки в тесте: около 4 000 USD

Эта группа результатов показывает, что при пропорциональном увеличении уровня капитала общая структура риска и доходности системы остаётся относительно стабильной.

Счёт 2 500 USD|Работа с уровнем капитала 5 000 USD

Это тест, который, на мой взгляд, особенно важно понять.

Фактический начальный капитал составлял всего:

2 500 USD

Но система работала с:

Уровнем капитала 5 000 USD

Итоговая чистая прибыль:

13 201 USD

Относительно начальных 2 500 USD:

Чистая доходность: около 528%

Максимальная просадка от пика капитала:

Около 18%

Максимальная сумма просадки в тесте:

Около 2 240 USD

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

Но ещё раз подчёркиваю:

При росте потенциальной доходности существенно увеличивается и абсолютный объём капитала под риском.

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

Для тестирования необходимо использовать реальные тиковые данные

Это один из самых важных моментов, который очень легко упустить после покупки.

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

MT5 может синтезировать тики на основе исторических свечей. Для многих обычных низкочастотных стратегий разница может быть небольшой.

Но внутри этой стратегии присутствуют зависимость от траектории цены, событийные состояния и логика последовательности исполнения. Даже при одинаковом конечном виде свечи другой порядок движения цены внутри неё способен перевести систему в другое внутреннее состояние.

Поэтому при полноценном тестировании:

Обязательно выбирайте режим «Каждый тик на основе реальных тиков» и используйте реальную тиковую историю, предоставленную брокером.

При использовании синтетических тиков:

Итоговая доходность теста может быть значительно искажена. У большинства брокеров нет очень длинной истории реальных тиков. Например, в моей среде EC Markets надёжные реальные тики начинаются только с 2024 года. У другого брокера история может отображаться с 2017 года, но более ранние данные могут быть лишь реконструированными или смоделированными свечами, а не настоящей тиковый историей. В таком случае полученную историческую прибыль нельзя считать достоверным результатом по реальным тикам. Это принципиально важное различие.

Почему я в итоге решил разработать этот советник самостоятельно

Я занимаюсь трейдингом уже шесть лет.

За эти шесть лет я понял, что мой главный противник — вовсе не рынок.

Это я сам.

Когда я нахожусь в хорошем состоянии, я могу очень дисциплинированно выполнять торговый план. В какой-то день это может быть 200 USD прибыли, в другой — 1 000 USD.

Настоящая проблема не в том, что я не умею торговать. Проблема в другом:

После прибыли меняется психологическое состояние человека.

Например, если в этом месяце я дисциплинированно торгую и зарабатываю 5 000 USD, то в следующем месяце из-за предыдущего успеха легко становлюсь слишком уверенным, расслабленным и даже высокомерным.

После этого качество торговли падает и появляются убытки.

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

За годы я заметил, что постоянно повторяю один и тот же цикл:

Дисциплина → Прибыль → Уверенность → Расслабленность → Убыток → Возвращение к дисциплине

Больше всего меня беспокоило то, что я прекрасно понимал:

Когда я строго соблюдаю правила, мои результаты заметно улучшаются.

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

Человеку это очень трудно.

И тогда я задал себе вопрос:

Если торговую логику можно формализовать, почему бы не передать исполнение программе, у которой нет эмоций?

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

Она просто выполняет правила.

Позже я начал покупать чужие советники и торговые стратегии в надежде найти действительно надёжную автоматизированную систему.

В общей сложности я потратил примерно:

3 000 USD

Но после множества покупок, тестов и исследований я увидел слишком много проблем в этой индустрии:

Использование будущих данных, перерисовка, подмена исторических данных, игнорирование комиссий, спредов и проскальзывания, скрытые плавающие убытки, разные условия в тестере и на реальном счёте, постоянная подгонка параметров под уже прошедший рынок, выбор только самых красивых периодов и нереалистично идеальные кривые капитала.

В конце концов я пришёл к одному выводу:

Если продолжать искать «волшебный советник», можно потратить на это всю жизнь.

Поэтому я перестал покупать чужие системы.

Я решил написать собственную.

Так появился этот советник.

Его исходная цель состояла не в создании самой красивой кривой тестирования, а в том, чтобы:

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

Количественная архитектура системы

С инженерной точки зрения эта система не работает по традиционной схеме:

Индикатор формирует сигнал → немедленная отправка ордера

Реальная цепочка принятия решений ближе к следующей:

Определение состояния рынка → оценка структуры → подтверждение события → оценка риска → проверка исполнения

Ордер, который в итоге появляется на графике MT5, — лишь конечный результат прохождения внутреннего состояния через несколько уровней ограничений.

I|Многоуровневая декомпозиция пространства состояний по таймфреймам

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

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

Поэтому система формирует не просто сигнал на покупку или продажу, а:

Исполнимое торговое состояние, которое получает право на исполнение только после многоуровневого подтверждения.

II|Гистерезисная маршрутизация рыночных состояний

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

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

После формирования нового торгового цикла часть ключевых переменных фиксируется.

Рынок может продолжать меняться, но система не будет постоянно переоценивать уже сформированную риск-структуру из-за нескольких краткосрочных колебаний.

III|Структура цены, нормализованная по волатильности

Система не использует абсолютное расстояние цены как универсальную меру.

Одно и то же движение на 10 USD может иметь совершенно разный смысл в среде низкой и высокой волатильности.

Поэтому смещение цены, структурные расстояния, локальное расширение и риск-границы оцениваются в пространстве, нормализованном по волатильности.

Иными словами:

Систему интересует не только то, на сколько изменилась цена, а насколько это движение велико относительно текущей структуры волатильности.

IV|Эволюция состояния с зависимостью от траектории

Текущая цена — не единственная переменная, определяющая поведение системы.

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

Поэтому:

Даже если цена вернётся точно на тот же уровень, система не обязана принять то же самое решение.

Причина проста:

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

Именно поэтому качество реальных тиковых данных настолько важно для этой стратегии.

V|Иерархическое бюджетирование риска

Система не работает по принципу: появился сигнал — сразу определяем лот.

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

Иерархия может быть представлена так:

Контроль риска счёта > Риск торгового цикла > Планирование позиций > Условия входа > Сам торговый сигнал

Следовательно:

Объём сделки — не первая переменная, которую определяет система. Это результат полного расчёта риска.

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

VI|Нелинейная структура позиционного риска

При наличии нескольких позиций общий риск нельзя корректно понимать как простую сумму риска каждой отдельной сделки.

Каждое новое изменение экспозиции меняет объём риска, который весь торговый цикл сможет принять в дальнейшем.

Уже использованный риск напрямую влияет на возможность добавления новой экспозиции в будущем.

Поэтому система управляет не отдельными ордерами, а:

Непрерывно изменяющейся общей риск-структурой всего торгового цикла.

VII|Независимое управление состояниями LONG и SHORT

Покупки и продажи — это не одна и та же программа, в которой просто меняется знак направления.

Оба направления имеют независимые:

Торговые состояния, риск-состояния, память исполнения и структуру цикла.

При этом они используют единый уровень контроля капитала счёта.

С архитектурной точки зрения это ближе к:

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

VIII|Замкнутая проверка исполнения

Во многих обычных советниках основной процесс практически заканчивается после успешной отправки ордера.

Здесь всё иначе.

После отправки торговой команды система продолжает проверять:

Планируемое состояние → Фактическое состояние исполнения → Подтверждённое состояние

Жизненный цикл ордера считается корректным только тогда, когда фактическое исполнение по-прежнему соответствует внутреннему риск-состоянию.

Поэтому система контролирует не только:

Удалось ли отправить ордер

но и:

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

IX|Контроль целостности торговой среды

Реальный рынок — не тестер стратегий.

Минимальный объём, шаг объёма, стоимость тика, размер контракта, ограничения стопов, ограничения заморозки, требования по марже, спред, проскальзывание и ошибки исполнения способны изменить итоговый результат.

Эти факторы не являются частью логики направления сделки, но именно они определяют, сможет ли стратегия в реальном рынке исполняться так, как была спроектирована.

Поэтому:

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

X|Обнаружение изменений параметров контракта

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

Если брокер изменит минимальный объём, шаг объёма, стоимость тика, размер контракта или торговые ограничения, исходная база риск-расчёта может перестать быть действительной.

Поэтому система фиксирует ключевые параметры исполнения текущего инструмента и отслеживает критические изменения торговых условий.

Для автоматизированной системы риска:

Одинаковое название символа не означает неизменность его экономических характеристик во времени.

XI|Риск-контроль по принципу «fail-closed»

Для неизвестных состояний система применяет консервативный принцип.

Если безопасность невозможно подтвердить, это не означает, что состояние безопасно.

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

Это один из базовых принципов всей архитектуры.

XII|Восстановление постоянного состояния

VPS может перезагрузиться. MT5 может обновиться. Сеть может оборваться. Программа может быть перезапущена.

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

Жизненный цикл торговой позиции и жизненный цикл программного процесса — это не одно и то же.

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

XIII|Риск капитала счёта имеет высший приоритет

В системе существует чёткая иерархия полномочий риска:

Защита капитала счёта > Риск торгового цикла > Планирование позиций > Разрешение на вход > Торговый сигнал

Это означает, что даже полностью корректная торговая возможность может быть отклонена, если условия риска на уровне счёта не позволяют её исполнить.

Потому что в этой системе:

Появление сигнала не означает обязательность сделки.

Торговая логика обнаруживает возможность.

Система управления капиталом решает, имеет ли счёт право принять этот риск.

Итоговое определение системы

Если описывать систему инженерными терминами, её можно представить как:

Многотаймфреймовую декомпозицию состояния, гистерезисное распознавание рыночного режима, нормализованную по волатильности ценовую структуру, зависимую от траектории эволюцию состояния, иерархическое бюджетирование риска, нелинейное распределение экспозиции, независимое управление состояниями LONG/SHORT, замкнутую проверку исполнения, обнаружение изменений торговой среды, восстановление постоянного состояния и защиту капитала по принципу fail-closed.

То, что вы в итоге видите на графике MT5, — всего лишь ордер.

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

Вы можете видеть, где система торгует.

Но вы не можете видеть, какое внутреннее состояние разрешило эту сделку.

Предупреждение о рисках

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

Историческое тестирование не гарантирует будущую доходность. Реальные результаты за прошлые периоды также не гарантируют будущие результаты.

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

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

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

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


Фильтр:
Нет отзывов
Ответ на отзыв