Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 31

 
Alexey Burnakov:

Юрий, первая проба на ваших данных:

 

method loss_function cv_folds bag_frac model_params AUC_cv accuracy_train accuracy_validate
GBM bernoulli 4 0.4 0.015_|_7_|_70_|_600 0.429659 0.590361 0.50501
GBM bernoulli 4 0.6 0.02_|_5_|_110_|_600 0.485727 0.586345 0.51503

 

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

 

В общем, точность 51.5% на тесте - это лучшее, что получилось.

 

Даже не знаю, как у вас получается порядка 60%. 

Да выкинуть надо этот набор предикторов.

Если тупо взять приращения всего со всем, несколько осцилляторов всего более 100 предикторов с числом наблюдений свыше 5000, т.е. Н1, то из такого набора можно будет отобрать штук 10-15 предикторов, которые не только дадут ошибку предсказания менее 40%, но, что главнее всего, дадут НЕ ПЕРЕОБУЧЕННУЮ модель. 

 
СанСаныч Фоменко:

Да выкинуть надо этот набор предикторов.

Если тупо взять приращения всего со всем, несколько осцилляторов всего более 100 предикторов с числом наблюдений свыше 5000, т.е. Н1, то из такого набора можно будет отобрать штук 10-15 предикторов, которые не только дадут ошибку предсказания менее 40%, но, что главнее всего, дадут НЕ ПЕРЕОБУЧЕННУЮ модель. 

Мы же пока не знаем, какие фичи Юрий включил в набор. Он же говорит, они все нужны.
 

В общем, лучше, чем 51.5% у меня не получалась точность классификации. Соответственно, остальные метрики тоже будут близки к случайному гаданию. 

Сбалансированность ответов на тесте почти идеально 50/50. 

 

Юрий, жду ваших откровений. 

 
У меня количество правильных предсказываний на test.csv около 50%, всё бесперспективно. Я согласен что набор предикторов не очень хороший, Юрий, добавьте больше стандартных индикаторов, если ваша модель действительно так хороша то полагаю вы на годных предикторах сможете добиться правильности предсказывания в 80% и выше.
 
Alexey Burnakov:

В общем, лучше, чем 51.5% у меня не получалась точность классификации. Соответственно, остальные метрики тоже будут близки к случайному гаданию. 

Сбалансированность ответов на тесте почти идеально 50/50.

Спасибо за информацию. Если никто лучшего результата не смог добиться, да я и сам гонял этот датасет на Weka и там тоже облом, значит уже пора обновлять версию libVMR. 60% правильных ответов на таких выборках - это не предел, если применить новую версию.
Alexey Burnakov:

 

Юрий, жду ваших откровений. 

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

Описание метода построения бинарного классификатора: https://sites.google.com/site/libvmr/

Исходники Java с комментариями: https://sourceforge.net/p/libvmr/code/HEAD/tree/trunk/

Сборки: https://sourceforge.net/projects/libvmr/files/

Векторная машина Решетова
  • sites.google.com
Теория и практика алгоритмов машинного обучения обладающих обобщающей способностью
 
Юрий, спасибо. 

Я одного не пойму. Если набор линейно сеперабелен, почему не взять обычный метод SVM? Чем ваш лучше будет?
 
Alexey Burnakov:
Юрий, спасибо. 

Я одного не пойму. Если набор линейно сеперабелен, почему не взять обычный метод SVM? Чем ваш лучше будет?

Если набор линейно сепарабелен, то количество потенциальных разделяющих гиперплоскостей бесконечно. В таком случае необходимо найти какой-то  критерий выявления адекватной гиперплоскости. Один из таких критериев был сформулирован для метода опорных векторов в книге: Вапник В. Н., Червоненкис А. Я. Теория распознавания образов. М.: Наука, 1974. Точнее, в данной книге рассматриваются множество различных критериев.

И SVM и VMR являются методами опорных векторов.

  • SVM - метод восстановления зависимостей по эмпирическим данным. Критерием является максимальное расстояние между опорными гиперплоскостями, если пространство линейно сепарабельно.  См. Вапник В. Н. Восстановление зависимостей по эмпирическим данным. М.: Наука, 1979
  • VMR - метод выявления сильных зависимостей и удаления (редукции) слабых. Критерием является минимакс расстояния между опорными гиперплоскостями, независимо от линейной сепарабельности. Т.е. VMR зависимости не восстанавливает (не добавляет в модель ничего, что заведомо отсутствует в обучающей выборке), не говоря о том, что некоторые неявные зависимости не попадают в модель (отсеиваются). Если более конкретно, то VMR сокращает гиперпространство, редуцируя некоторые признаки.

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

 
Yury Reshetov:

Если набор линейно сепарабелен, то количество потенциальных разделяющих гиперплоскостей бесконечно. В таком случае необходимо найти какой-то  критерий выявления адекватной гиперплоскости. Один из таких критериев был сформулирован для метода опорных векторов в книге: Вапник В. Н., Червоненкис А. Я. Теория распознавания образов. М.: Наука, 1974. Точнее, в данной книге рассматриваются множество различных критериев.

И SVM и VMR являются методами опорных векторов.

  • SVM - метод восстановления зависимостей по эмпирическим данным. Критерием является максимальное расстояние между опорными гиперплоскостями, если пространство линейно сепарабельно.  См. Вапник В. Н. Восстановление зависимостей по эмпирическим данным. М.: Наука, 1979
  • VMR - метод выявления сильных зависимостей и удаления (редукции) слабых. Критерием является минимакс расстояния между опорными гиперплоскостями, независимо от линейной сепарабельности. Т.е. VMR зависимости не восстанавливает (не добавляет в модель ничего, что заведомо отсутствует в обучающей выборке), не говоря о том, что некоторые неявные зависимости не попадают в модель (отсеиваются). Если более конкретно, то VMR сокращает гиперпространство, редуцируя некоторые признаки.

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

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

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

 

Выше Dr.Trader попытался проделать работу по удалению шума из его наборе предикторов.

Результат отрицательный.

Я считаю, что причиной отрицательности результата является малое число наблюдений при очень большом числе предикторов. Но это то направление, куда надо копать до применения ЛЮБЫХ моделей. 

 
Yury Reshetov:

Если набор линейно сепарабелен, то количество потенциальных разделяющих гиперплоскостей бесконечно. В таком случае необходимо найти какой-то  критерий выявления адекватной гиперплоскости. Один из таких критериев был сформулирован для метода опорных векторов в книге: Вапник В. Н., Червоненкис А. Я. Теория распознавания образов. М.: Наука, 1974. Точнее, в данной книге рассматриваются множество различных критериев.

И SVM и VMR являются методами опорных векторов.

  • SVM - метод восстановления зависимостей по эмпирическим данным. Критерием является максимальное расстояние между опорными гиперплоскостями, если пространство линейно сепарабельно.  См. Вапник В. Н. Восстановление зависимостей по эмпирическим данным. М.: Наука, 1979
  • VMR - метод выявления сильных зависимостей и удаления (редукции) слабых. Критерием является минимакс расстояния между опорными гиперплоскостями, независимо от линейной сепарабельности. Т.е. VMR зависимости не восстанавливает (не добавляет в модель ничего, что заведомо отсутствует в обучающей выборке), не говоря о том, что некоторые неявные зависимости не попадают в модель (отсеиваются). Если более конкретно, то VMR сокращает гиперпространство, редуцируя некоторые признаки.

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

Юрий, спасибо. Я подумаю.

Вопрос правда есть у нас. Как вы предикторы отобрали?
 



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


В R есть все, что Вам нужно. Смотрите fTrading::sharpeRatio.

Да и PerformanceAnalitics не мешает посмотреть.

Удачи

Причина обращения: