Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 481
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
приращениям можно дать вероятностную оценку принадлежности к классу бай\селл
ну упирайся дальше без "осмысления"
ну упирайся дальше без "осмысления"
Ладно, будем проверять экспериментом.. :) естественно я попробую 2 и больше 2 классов, но не вижу принципиальной разницы для моего случая
Максим, я вижу твою ситуацию так:
Цель:
а) получить вероятность направления движения;
б) получить оценку силы движения.
Варианты решения:
1) Использовать один выход [0,1], либо [-1,1]. Либо два выхода [[0,1],[0,1]].
Нюанс! обучающие данные должны отражать силу движения, т.е. историю движений нужно нормализовать к нужному диапазону.
Плюс: Удобность и простота настройки модели сети.
Минус: Нормализация будет неоднородна на всей таймсерии, за счет различных амплитуд изменения цен.
2) Использовать двумерную классификацию выход [0,1]+[0,1], либо [-1,1]+[-1,1]. Либо три/четыре выхода [[0,1],[0,1]+[0,1]], либо [[0,1],[0,1]+[0,1],[0,1]]. Одна размерность - вероятность направления движения, вторая размерность - вероятность силы движения.
Плюс: Лучшая наглядность результата.
Минус: Сложность настройки модели нейросети на "деревянных" фреймворках.
3) Вариант два с разделением модели сети на две. Одна модель учится предсказывать направление, вторая - предсказывать силу движения.
Плюс: Сохраняем наглядность; Легкость применения нейросетей.
Минус: Возможно незначительное увеличение скорости расчетов; Больше кода.
Максим, я вижу твою ситуацию так:
Цель:
а) получить вероятность направления движения;
б) получить оценку силы движения.
Варианты решения:
1) Использовать один выход [0,1], либо [-1,1]. Либо два выхода [[0,1],[0,1]].
Нюанс! обучающие данные должны отражать силу движения, т.е. историю движений нужно нормализовать к нужному диапазону.
Плюс: Удобность и простота настройки модели сети.
Минус: Нормализация будет неоднородна на всей таймсерии, за счет различных амплитуд изменения цен.
То есть все-таки величина вероятности отнесения к одному из 2-х классов будет соответствовать силе сигнала, если изначально я буду заполнять выходы с учетом силы сигнала (допустим, просто подам нормализованные приращения в диапазоне 0-1, на выходе получим чем выше вероятность отнесения к тому или иному классу тем больше ожидаемое приращение?
Или все-же это так не работает, и мы получим просто вероятность отнесения к классу но размер приращения на выходе уже потеряется :)
Если мы построим просто линию регрессии.... т.е.... будет сильнее чем...
А если мы берем нейронную сеть с нелинейной классификацией...
Одной линейкой их померь и узнаешь. Например ныне модной - Logloss(В R - library(MLmetrics))
не лучше ли создать больше классов
Как удобней так и делай...
ну то есть инфа о величине приращений не потеряется после обучения, и можно использовать вероятность отнесения к 1-му из 2-х классов для определения прогнозируемой силы приращений, а не только в каком классе эт приращения окажутся. Тогда зачем городить много выходв, достаточно же 2-х :)
ну то есть инфа о величине приращений не потеряется после обучения, и можно использовать вероятность отнесения к 1-му из 2-х классов для определения прогнозируемой силы приращений, а не только в каком классе эт приращения окажутся. Тогда зачем городить много выходв, достаточно же 2-х :)
с уважением.
То есть все-таки величина вероятности отнесения к одному из 2-х классов будет соответствовать силе сигнала, если изначально я буду заполнять выходы с учетом силы сигнала (допустим, просто подам нормализованные приращения в диапазоне 0-1, на выходе получим чем выше вероятность отнесения к тому или иному классу тем больше ожидаемое приращение?
Или все-же это так не работает, и мы получим просто вероятность отнесения к классу но размер приращения на выходе уже потеряется :)
Нейросеть сама по себе не знает, что от нее нужно. Она учится на том, что ты ей скормишь. Если действительно в данных имеется некая закономерность между входом и выходом, то при правильном обучении модель ее выявит. Т.е. Да, Величина вероятности может сигнализировать о силе движения.
Я бы при таком подходе поступил так, разделили бы сигналы на два класса бай/сел по [0,1], либо sinusoid/tanh выход [-1,1].
вероятность каждой градации приращения в бай может отличаться от вероятности той же градации приращения в селл, огород придется городить, если интересует хороший результат.
с уважением.
Нет, я же уже привел скрин, приращения имеют стационарный вид и симметричны по обе стороны от ноля, поэтому вероятности будут +- одинаковые
Ну а если нормализовать данные по всем данным сразу, сигналы будут гораздо слабее.
Нейросеть сама по себе не знает, что от нее нужно. Она учится на том, что ты ей скормишь. Если действительно в данных имеется некая закономерность между входом и выходом, то при правильном обучении модель ее выявит. Т.е. Да, Величина вероятности может сигнализировать о силе движения.
Я бы при таком подходе поступил так, разделили бы сигналы на два класса бай/сел по [0,1], либо sinusoid/tanh выход [-1,1].
Да, спасибо, это я и хотел услышать.. потому что мне друг, который увлекается нейросетками сказал, что вероятность отнесения к классу это всего лишь вероятность отнесения к классу, данные о абсолютных приращениях потеряются.. я начал с ним спорить в итоге запутались оба :)