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

 
elibrarius:

Почему не известно? Количество кластеров на которое надо разбивать - задается при запуске как входное значение: K           -   desired number of clusters, K>=1

Предположим, разбил я данные на 4 группы, что с ними дальше делать?


я имел в виду, что заранее не известно что к какому классу относится в выборке.. что делать с ними потом применительно к трейдингу не знаю, может быть посмотреть какие случаи относятся к сигналам на продажу а какие на покупку, чего больше и так далее..
 
Aleksey Terentev:
К сожалению с алглибом дел не имел.  Те пакеты ML с которыми знакомился, все позволяли менять функцию активации у слоя.
В принципе если знаний хватает, и если позволяет библиотека, то можно наследовать класс нейрона, и прописать там свою функцию активации.
Но это уже крайние методы.

А то я как то хотел влезть, и написать пару своих рекурентных слоев, хорошо что опомнился. =)
 
Aleksey Terentev:
В принципе если знаний хватает, и если позволяет библиотека, то можно наследовать класс нейрона, и прописать там свою функцию активации.
Но это уже крайние методы.

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

Во, софтмакс нормально разделил на сигналы, не то что было до этого то покупок мало, то продаж, сейчас поровну. Но все равно пока сливает, проработать получше нужно предикторы и целевые


 
Ребята по поводу двух выходов с вероятностями. Думаю Вы абсалютно правы, на покупку один выход 0,9 тогда на продажу другой выход 0,1. А вот зачем это нужно вопрос интересный. На участке вне выборки оба входа дадут по 0,9 что тогда???? Скорее всего болтанка туда сюда. Такое ведь на рынке тоже бывает когда идёт неопределённость. Сам рынок не знает куда пойти, а сигнал уже появился. Иу как говорится больше информации получаешь...
 
Хотите напишу длинно пост, как распознать рынок полностью????? Во всяком случае идея как можно поробовать, тем более что в два три компа было бы сделать быстрее, считай паралельный расчёт, у меня на 3-х ядрах...
 

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

И не нужно лохматить Бабушку!!!! :-)))))

 

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

Имеем три состояния "Да", "Нет" и "Незнаю" когда сетки показывают в разные стороны.

Тренируем сеть на всём участке, в нашем случае 452 записи. Сеть выучила этот сЭт на 55-60%, предположим что ответов "Не знаю" на обучающей выборки было 50%, соотвественно 226 сигнала сеть не смогла выучить. Ну хорошо, а теперь строим новую модель ТОЛЬКО по состояниям "Не знаю", то есть пытаемся построить модель на таких квази состояниях, которые ввели в заблуждение первую модель. Итог примерно одинаков из 226 только половина будет распознана, остальная получит состояние "Не знаю", далее снова строим модель. в итоге 113, потом 56, потом 28, потом 14. На 14 записях не известных ни одной из предыдущих моделей Оптимизатор Jprediction как правило посчитает до 100% обобщающей способности.

В итоге мы имеем "Систему моделей" которая распознала весь рынок на участке в три месяца.

Вот Вам ещё один способ, помимо "Контекста дня" Как можно разбить рынок на подпространства и произвести обучение получив именно "Систему моделей" Вот посмотрите пример....

 

Признаюсь честно я тут немного по другому произвёл разбиение на подпостранства но суть осталась прежней.

Был общий файл из 288 строк, я его разбил на три выборки количество записей обучающей выборки Указанно в строке Tootal patterns.

* Sensitivity of generalization abiliy: 74.07407407407408%
* Specificity of generalization ability: 70.96774193548387%
* Generalization ability: 72.41379310344827%
* TruePositives: 20
* FalsePositives: 7
* TrueNegatives: 22
* FalseNegatives: 9
* Total patterns in out of samples with statistics: 58

Слудеющая:

* Sensitivity of generalization abiliy: 61.904761904761905%
* Specificity of generalization ability: 60.0%
* Generalization ability: 60.869565217391305%
* TruePositives: 39
* FalsePositives: 24
* TrueNegatives: 45
* FalseNegatives: 30
* Total patterns in out of samples with statistics: 138

И последняя

* Sensitivity of generalization abiliy: 69.04761904761905%
* Specificity of generalization ability: 66.0%
* Generalization ability: 67.3913043478261%
* TruePositives: 29
* FalsePositives: 13
* TrueNegatives: 33
* FalseNegatives: 17
* Total patterns in out of samples with statistics: 92

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


 
Это всё участок вне выборки начиная с 05.29 на 15 минутках. Считай уж третья неделя пошла. Но если она не наберёт ещё то в принципе грош цена подходу, но я верю...... :-)
Причина обращения: