Median World
- Утилиты
-
Abdullah Uygar Tuna
IT-специалист, специализирующийся на алгоритмической торговле, количественном анализе и разработке практичных инструментов для MetaTrader 5. - Версия: 1.0
- Активации: 5
Median World проверяет, зависит ли результат бэктеста вашего советника от одной ценовой траектории. Утилита строит от 30 до 1000 альтернативных историй (по умолчанию 200) из M1-данных символа, вы запускаете по ним одну оптимизацию, и она показывает, как типичный мир соотносится с вашим бэктестом. Это не прогноз. Торговли нет.
Бэктест показывает, что сделал советник на единственной ценовой траектории, которая реально случилась. Он не показывает, какая часть результата пришлась на стратегию, а какая на эту конкретную траекторию. Median World измеряет именно это.
Как это работает
1. Построение. Прикрепите Median World к графику символа, которым торгует ваш советник, выберите период и число миров (по умолчанию 200, от 30 до 1000) и нажмите Build. Утилита разрезает историю M1 на целые дни (или сессии), убирает дрейф и собирает дни в новом случайном порядке на реальном календаре. Каждый мир сохраняется как пользовательский символ с теми же спецификациями контракта, что и у оригинала. Перед тем как принять построение, утилита проверяет, что миры отличаются от реальной траектории и друг от друга и что волатильность совпадает с оригиналом в целом и по часам. Построение, не прошедшее проверку, отклоняется с указанием причины.
2. Тест. Нажмите Prepare Market Watch, откройте тестер стратегий и один раз запустите советник с фиксированными параметрами в режиме «Все символы, выбранные в Обзоре рынка». Экспортируйте результаты в XML. Проведите один одиночный тест на первом мире и сохраните отчёт: так утилита убедится, что советник торгует только символом своего графика. Все настройки перечислены на панели.
3. Оценка. Нажмите Score. Вы получите:
- Edge: долю миров, завершившихся с прибылью при просадке по средствам ниже лимита (по умолчанию 30%).
- Replication: прибыль медианного мира, делённую на прибыль бэктеста.
- Прибыль миров p10, медиана и p90, а также перцентиль вашего реального бэктеста среди миров.
- Понятный вердикт: ROBUST, INCONCLUSIVE, NO EDGE, OVER-FITTED или NOT TESTABLE.
- Проверку согласованности с предыдущими построениями для того же советника. Она носит справочный характер и никогда не меняет вердикт.
Практический вывод: планируйте по медианному миру, а не по бэктесту.
Утилита отказывается выставлять оценку, если результат может ввести в заблуждение: слишком мало или слишком похожие миры, файл результатов старше построения или уже проанализирован, миры из прежнего построения, реальные символы в прогоне, советники, использующие другие символы.
Чего утилита не делает
- Это не прогноз. Миры построены из прошлых цен и ничего определённого о будущем не говорят.
- Работает только с односимвольными советниками. Советник, читающий другие символы, отклоняется.
- Оптимизацию вы запускаете сами: MetaTrader 5 не позволяет программе запускать тестер стратегий.
- Дневные блоки сохраняют внутридневное поведение, но не кластеризацию волатильности от дня к дню.
- В мирах нет реальных тиков. Используйте моделирование «OHLC на M1» или «Все тики».
- Утилита не торгует, не использует DLL и не делает сетевых запросов. Она создаёт только пользовательские символы и файлы в MQL5\Files. Кнопка Remove all worlds удаляет всё, что было создано.
Требования и ресурсы
Нужна история M1 по символу. По умолчанию Median World берёт последние 7 месяцев до самого нового бара; число месяцев можно изменить или задать точные даты. Перед построением программа показывает оценку места на диске и свободное место и просит подтверждения; она отказывается строить, если после построения останется меньше 1 ГБ. 200 миров за 7 месяцев занимают около 3 ГБ (миры и кэш тестера) и строятся примерно за полминуты; место на диске и время тестирования растут пропорционально числу миров. Время тестирования зависит от вашего советника. Семь месяцев данных M1 — это примерно 150 000–210 000 баров, поэтому установите Сервис > Настройки > Графики > Макс. баров в окне = Unlimited; программа сообщит, если этот лимит обрезал историю.
Как попробовать: MetaTrader 5 не может создавать пользовательские символы внутри тестера стратегий, поэтому в тестере утилита ничего не делает, а демо-версия в Маркете не может показать её работу. Чтобы попробовать, воспользуйтесь арендой на один месяц.
Как проводилась проверка
Три эталонных советника были протестированы на калибровочном символе с заранее внедрённым эффектом. Это результаты тестера стратегий на синтетических данных, а не результаты торговли. Советник, торгующий внедрённый эффект, получил оценку ROBUST на трёх независимых построениях. Советник со случайными входами получил NOT TESTABLE, так как его собственный бэктест убыточен. Советник, повторяющий сделки, подобранные задним числом, получил OVER-FITTED: его бэктест оказался на 100-м перцентиле своих миров.
На вопросы отвечаю в комментариях к продукту и в личных сообщениях MQL5.
