Как программно проверить - идет 'Оптимизация' или 'Форвард-оптимизация'? - страница 10
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вопрос - как надо собрать эти 12 прогонов или что надо сделать, чтобы запихнуть эти прогоны в подобную прогу?
Если делать на чистом MQL с штатным тестером, то довольно трудоемко. От пользователя потребуется переставлять даты в тестере вручную, т.к. нужны штатные форвард прогоны после каждой бек оптимизации.
Потом собираем фреймами, фильтруем и сводим в отчет.
Речь о том - как анализировать РЕЗУЛЬТАТЫ волкинг-форварда. А его результаты - это те одиночные прогоны бэк-форвард, которые происходят после оптимизации бэка.
Да, но любые результаты для одной и той же группы параметров входят в множество всех результатов полного прогона N, а любые красивые результаты K входят в число красивых результатов полного прогона т.е. K ⊂ NK . Т.е. никакого преимущества волкинг-форвард не дает.
Преимущество может быть в скорости фильтрации этих красивых результатов. Но и его нет, т.к. проводится оптимизация на повторяющихся кусках. Да, преимущество может быть в более эффективном отсеивании результатов дающих просадку на некоторых участках. Преимущество может быть в учете частоты сделок и роста эквити на каждом участке.
Провести фильтрацию красивых результатов, без провалов, с учетом частоты сделок и роста эквити возможно и другими способами, например генетическим алгоритмом с своим критерием (который в т.ч. может анализировать всю историю сделок прогона оценивая их качество). Что быстрее. Кстати и никакое форвард-тестирование на истории по сути не дает гарантий в будущем. Вы все равно выбираете один из красивых результатов, других у вас нет.
К тому же данные о торговых операциях можно скидывать в файлы или БД только при оптимизации на своем компьютере. При оптимизации в облаке - мы можем получить только стандартный отчет.
т.е. и агенты тестирования работающие в облаке возвращают данные
Потом собираем фреймами, фильтруем и сводим в отчет.
У меня вопрос - я автооптимизатором делаю сначала оптимизацию на бэк участке, а потом форвард прогон, который содержит и бэк и форвард участок.
Прогон одиночный, цель его - контрольная. По итогам двенадцати таких прогонов со сдвигом на шаг бэка я сужу о результативности советника.
Что мне сделать, чтобы ваша прога смогла отобразить графики баланса всех двенадцати этих прогонов? Т.е. сделать отчет из отдельных прогонов бэк-форвард.
Что мне сделать, чтобы ваша прога смогла отобразить графики баланса всех двенадцати этих прогонов? Т.е. сделать отчет из отдельных прогонов бэк-форвард.
Моя прога такого не делает (и не сможет). Это чистый MQL вариант для 1-го штатного прогона оптимизации с форвардом или без. Попробуйте сами собирать фреймами историю приращений баланса для нескольких прогонов, в один или несколько файлов, а потом отобразить в экселе, например.
У меня вопрос - я автооптимизатором делаю сначала оптимизацию на бэк участке, а потом форвард прогон, который содержит и бэк и форвард участок.
Прогон одиночный, цель его - контрольная. По итогам двенадцати таких прогонов со сдвигом на шаг бэка я сужу о результативности советника.
Что мне сделать, чтобы ваша прога смогла отобразить графики баланса всех двенадцати этих прогонов? Т.е. сделать отчет из отдельных прогонов бэк-форвард.
Я сохраняю понравившиеся настройки от оптимизации в стандартный .set файл 2016-01-01.opt, 2016-02-01.opt, 2016-03-01.opt и т.д. Все файлы помещаю в директорию терминала Files.
В советнике input переменные копирую в обычные переменные дубликаты, которые используются в советнике вместо input переменных.
Затем при работе советника на первом тике каждого дня проверяю есть ли файл для текущего дня. 1 фев. найдется 2016-02-01.opt и считается. Все значения из файла копируются в рабочие переменные. И советник ведет себя так, будто бы вы 1 фев. поменяли входные переменные. Таким образом за весь период тестирования несколько раз подставляются входные переменные нужные для текущего участка.
В итоге имеем график баланса и эквити для всех форвард участков.
Этот метод учитывает так же открытые позиции на момент смены участка. Открытые до 1 фев. по правилам от 1 янв. будут доводиться экспертом уже по новым настройкам (что в общем то и правильно).
Я сохраняю понравившиеся настройки от оптимизации в стандартный .set файл 2016-01-01.opt, 2016-02-01.opt, 2016-03-01.opt и т.д. Все файлы помещаю в директорию терминала Files.
В советнике input переменные копирую в обычные переменные дубликаты, которые используются в советнике вместо input переменных.
Затем при работе советника на первом тике каждого дня проверяю есть ли файл для текущего дня. 1 фев. найдется 2016-02-01.opt и считается. Все значения из файла копируются в рабочие переменные. И советник ведет себя так, будто бы вы 1 фев. поменяли входные переменные. Таким образом за весь период тестирования несколько раз подставляются входные переменные нужные для текущего участка.
В итоге имеем график баланса и эквити для всех форвард участков.
Этот метод учитывает так же открытые позиции на момент смены участка. Открытые до 1 фев. по правилам от 1 янв. будут доводиться экспертом уже по новым настройкам (что в общем то и правильно).
Ну да, тоже вариант. Недостаток -надо ждать конца всего процесса, чтобы увидеть общую картину.
Иногда я прерываю процесс, если вижу, что что-то пошло не так
Кроме того, вероятность рассинхронизации истории разных инструментов увеличивается с увеличением истории - но это событие вполне редкое.
А так - не надо замарачиваться с совмещением графиков.
Ну да, тоже вариант. Недостаток -надо ждать конца всего процесса, чтобы увидеть общую картину.
Иногда я прерываю процесс, если вижу, что что-то пошло не так
Кроме того, вероятность рассинхронизации истории разных инструментов увеличивается с увеличением истории - но это событие вполне редкое.
А так - не надо замарачиваться с совмещением графиков.
Зачем ждать? 2 прохода форварда сделали, 2 файла сохранили - и запускаете тест за 2 месяца (или др. временные участки выбранные вами). И получится результат на 2 участка.
У меня например, если вижу, что сильная просадка, то делаю новый форвард до дня следующего за просадкой например 2016-03-12.opt. Из предположения что характер рынка поменялся и нужна переоптимизация.
Зачем ждать? 2 прохода форварда сделали, 2 файла сохранили - и запускаете тест за 2 месяца (или др. временные участки выбранные вами). И получится результат на 2 участка.
Я не могу прерывать - автотестер работает непрерывно, а если не видно промежуточных результатов -неясно, надо останавливать или нет.
И, кстати, имея общий график, трудно будет понять ситуацию по отрезкам 0 прибыльный, скажем, данный месяц или нет.
Я не могу прерывать - автотестер работает непрерывно, а если не видно промежуточных результатов -неясно, надо останавливать или нет.
Я вручную делаю, автотестер еще не придумал. Для моего метода - все ок. К вашему - видимо нужно что-то доработать.
И, кстати, имея общий график, трудно будет понять ситуацию по отрезкам 0 прибыльный, скажем, данный месяц или нет.
Почему не видно? На графике в тестере и видно - мышку наводите на кривую и видите дату сделки.
Я вручную делаю, автотестер еще не придумал. Для моего метода - все ок. К вашему - видимо нужно что-то доработать.
Почему не видно? На графике в тестере и видно - мышку наводите на кривую и видите дату сделки.