Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Незначительное косметическое исправление, int => bool. Или, если я могу предложить вернуть AmountDeleteIntervals вместо этого.
Спасибо, надо будет поправить.
Пожалуйста, рассмотрите AverageHolding как дополнение к библиотеке
Interval.mqh
BestInterval.mqh
Пожалуйста, рассмотрите AverageHolding как дополнение к библиотеке
Среднее время жизни закрытой позиции - для чего оно нужно?
Вычислять его нужно не так. Нужно знать время закрытия.
Среднее время жизни закрытой позиции - для чего оно нужно?
Я имею в виду среднее время жизни позиции (OrderCloseTime - OrderOpentime). Это может быть полезно в качестве пользовательских критериев GA. Например, привести GA к увеличению частоты транзакций в сочетании с минимальным порогом прибыли на сделку.
Вычислять его нужно не так. Нужно знать время закрытия.
Для счета неттинга DEAL IN / OUT достаточно времени открытия для расчета, для правильной реализации необходимо использовать время закрытия, которое в настоящее время не учитывается в библиотеке.
Существует проблема, которая останется. Тестер форсирует закрытие последней позиции. Точность атомных часов может понадобиться не для всех стратегий, она останется проблемой. Также GA можно привести к большей частоте торговли, просто вернув 0, когда BestInterval.GetTotal () <xxx, например, как вы написали в каком-то посте.
Таким образом, это выглядит не стоит, пока неприятности преследуют.
Я имею в виду среднее время жизни позиции (OrderCloseTime - OrderOpentime). Это может быть полезно в качестве пользовательских критериев GA. Например, привести GA к увеличению частоты транзакций в сочетании с минимальным порогом прибыли на сделку.
Приведите критерий оптимизации в виде схематичного исходного кода OnTester-функции.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: BestInterval
fxsaber, 2019.12.05 13:48
Сказать, что я доволен - явно преуменьшить... BestInterval теперь крут. А изменения минимальны. Как всегда, пример.
Вот круглосуточный проход.
Применяем классический BestInterval.
Видим, что на треть увеличился профит, ну и другие показатели стали лучше.
Но хотелось гибкости. И вот она.
Профит не увеличился, а уменьшился! Но посмотрите на другие показатели. Вместо того, чтобы найти интервал с самым большими профитом и вероятностью подгонки, был найден гораздо более узкий интервал, но куда вкуснее, чем классика.
Новшество добавляется так
Теперь очень сильно повысилось качество исследования рыночных закономерностей. Существенные последствия для мультитестерных работ.
Интересно, что если найденный так вкусный интервал забить в ТС и начать ее оптимизировать на максимальный профит в нем, то высока вероятность, что будет найдена фигня.
И еще такое замечание. BestInterval, например, игнорит сделки, открытые с полуночи до часа. Это вовсе на значит, что если в два часа придет сигнал на открытие, то BestInterval даст ее открыть. Библа даст открыть только в том случае, если проигноренная позиция с полуночи будет "закрыта". Поэтому можно видеть часто, что оптимизация ТС с жестко заданным интервалом дает более плохие результаты, чем показывает BestInterval.
Самый наглядный пример - это контртрендовая ТС на тренде. Допусти, ТС дает сигнал SELL, а тренд прет вверх. BestInterval будет игнорить эти сигналы.
Заметил такую особенность, которая основывается на своем опыте.
Если критерий Оптимизации никак не связан с гладкостью кривой профита. И лучший результат все же дает гладкую кривую, то это не подгонка.
Например, критерий - максимальная прибыль. И в результате лучший проход - прямая вверх. Это не подгонка.
А вот если критерий - минимальный R^2. И в результате лучший проход - прямая вверх. То это, скорее всего, подгоночка.
У меня дилемма, BestInterval - независимый критерий Оптимизации или нет? Особенно, с его фишкой задания Slippage.
Т.е. он говорит, что если игнорить все сделки, не попадающие в интервал 18:00-12:00, то на истории будет все красиво.
Зашиваю в ТС этот интервал, делая ТС уже не круглосуточной, и оптимизирую по максимальному профиту.
Лучший проход генетики, мягко говоря, мусор.
ЗЫ Это еще слабый пример. Встречается, когда BestInterval имеет PF > 3, а Оптимизатор выдает PF < 1.
У меня дилемма, BestInterval - независимый критерий Оптимизации или нет? Особенно, с его фишкой задания Slippage.
Фактически, Slippage - это комиссия. Чем больше комиссия, тем красивее результат на истории показывает BestInterval.
Вроде, комиссия не имеет никакого отношения к рыночным закономерностям.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Советники: Validate
fxsaber, 2020.08.23 07:44
Скорее всего, не рассчитывал на CloseBy-сделки, когда писал. Ничего уже не помню. Вполне вероятно, что и в BestInterval такой же недуг. Править не готов. Спасибо за информацию.
Похоже, что Вы правы. BestInterval даёт разный результат как в плане потенциального профита, так и временных интервалов для неттинга и хеджа. Пока детали не смотрел, но список Deals на первый взгляд выглядит некорректно, время открытия для закрытых по CloseBy в основном попадает на время открытия закрывающего ордера.