Библиотеки: RL GMDH

 

RL GMDH:

Библиотека по мотивам одноименной статьи "RANDOM DECISION FOREST В ОБУЧЕНИИ С ПОДКРЕПЛЕНИЕМ"

RL GMDH

Автор: Maxim Dmitrievsky

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

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

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

 
Maxim Dmitrievsky:

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

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

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

Например, если learn-файл равен по размеру OHLC-файлу, то модель - сама история. Т.е. хорошо бы, чтобы learn-файл (используемая его часть) была на порядки меньше размера истории.

 
fxsaber:

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

Например, если learn-файл равен по размеру OHLC-файлу, то модель - сама история. Т.е. хорошо бы, чтобы lean-файл (используемая его часть) была на порядки меньше размера истории.

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

просто был интерес юзать RF, изначально. Но что-то он слишком любит переобучаться при любых раскладах

 
Maxim Dmitrievsky:

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

просто был интерес юзать RF, изначально. Но что-то он слишком любит переобучаться при любых раскладах

К тому, что хорошо бы сохранять только используемую на learn=false инфу. Если ее много, то работа почти впустую.

Как аналогия, сохранение BestInterval-данных. Если их мало - еще можно смотреть без приколов. Но если много - разве для картинок.

 
fxsaber:

К тому, что хорошо бы сохранять только используемую на learn=false инфу. Если ее много, то работа почти впустую.

Как аналогия, сохранение BestInterval-данных. Если их мало - еще можно смотреть без приколов. Но если много - разве для картинок.

ну да, особенно если объясняющей инфы становится больше чем объясняемой - то это вообще прикол :)

позже предложу другие варианты либы еще

 

потестировал, впечатление неоднозначное, тестировал на кастомном графике сгенерированном по ф-ции Вейерштрасса по формуле

в теории на этом кастомном графике RandomForest долден был найти точки входов очень близкие к ЗигЗагу, ну или хотя бы вообще не иметь убыточных ордеров, на ТФ Н1 периодичность прослеживается явно, но RF вроде как и нашел эту закономерность, но и убыточные ордера присутствуют

тестировал ране в МТ4 на таких же данных старый советник GoldWarrior (на англ. форуме нашел) - советник по ЗигЗагу, в оптимизаторе МТ4 на всех ТФ до М15 четко находит закономерности и исключительно в + все ордера

тестировал индикаторный советник по пересечению линий регрессии (увы, под заказ делал, код не могу), и этот советник в оптимизаторе быстро находил закономерности на ф-ции Вейерштрасса 

к чему эти примеры? - если примитивные методы могут найти закономерности, то машинное обучение тем более обязано все это найти.

при всем уважении, к автору, но сомнительный результат, вернее пример работы с RandomForest отличный. но есть еще куда приложить свои силы ;)

ЗЫ: обучал с 2000.01.01 по 2001.01.01 тестировал с 2001.01.01 по 2002.01.01

ЗЫ: скрипт для кастомного графика приатачил, библиотека Symbol в КБ

Файлы:
 
Igor Makanu:

ЗЫ: скрипт для кастомного графика приатачил, библиотека Symbol в КБ

//      CustomRatesReplace(WrstName,0,LONG_MAX,rates);
      SymbDB.CloneRates(rates);
 
fxsaber:

ага, спасибо!

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

обновил свой скрипт и приатачил выше еще раз

 
Igor Makanu:

потестировал, впечатление неоднозначное, тестировал на кастомном графике сгенерированном по ф-ции Вейерштрасса по формуле

в теории на этом кастомном графике RandomForest должен был найти точки входов очень близкие к ЗигЗагу, ну или хотя бы вообще не иметь убыточных ордеров, на ТФ Н1 периодичность прослеживается явно, но RF вроде как и нашел эту закономерность, но и убыточные ордера присутствуют

тестировал ране в МТ4 на таких же данных старый советник GoldWarrior (на англ. форуме нашел) - советник по ЗигЗагу, в оптимизаторе МТ4 на всех ТФ до М15 четко находит закономерности и исключительно в + все ордера

тестировал индикаторный советник по пересечению линий регрессии (увы, под заказ делал, код не могу), и этот советник в оптимизаторе быстро находил закономерности на ф-ции Вейерштрасса 

к чему эти примеры? - если примитивные методы могут найти закономерности, то машинное обучение тем более обязано все это найти.

при всем уважении, к автору, но сомнительный результат, вернее пример работы с RandomForest отличный. но есть еще куда приложить свои силы ;)

ЗЫ: обучал с 2000.01.01 по 2001.01.01 тестировал с 2001.01.01 по 2002.01.01

ЗЫ: скрипт для кастомного графика приатачил, библиотека Symbol в КБ

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

Это все легко меняется в reward ф-ии. У мня просто нет сейчас столько времени что бы проводить сотни экспериментов. Может быть, можно как-то придумать через Оптимизатор.

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