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

 

Если подставить к=2, то формулу можно пересчитать в
close_amplified = close + 2 * (close - EMA )
= close * 3 - EMA * 2

Т.е. цена  - МА с какими-то (наверное подбираемыми) коэффициентами. Так понятнее суть преобразований.

Если потом будут разницы close_amplified подаваться на обучение, то разницы МАшек (100) будут очень малыми (1/100 от дельт Close), т.е. останутся почти разницы Close.

Как будет влиять на обучение МО - пока не понятно. Наверное, как и разницы МА(100). Теоретически. Если будете сравнивать на практике (с и без) - будет интересно, сойдется ли с теорией.

[Удален]  
Forester #:

Если подставить к=2, то формулу можно пересчитать в
close_amplified = close + 2 * (close - EMA )
= close * 3 - EMA * 2

Т.е. цена  - МА с какими-то (наверное подбираемыми) коэффициентами. Так понятнее суть преобразований.

Если потом будут разницы close_amplified подаваться на обучение, то разницы МАшек (100) будут очень малыми (1/100 от дельт Close), т.е. останутся почти разницы Close.

Как будет влиять на обучение МО - пока не понятно. Наверное, как и разницы МА(100). Теоретически. Если будете сравнивать на практике (с и без) - будет интересно, сойдется ли с теорией.

Не, на обучение подаю исходный датасет но с метками, которые размечены на преобразованном. Пока только видно, что больше шума в сделках ну и на форварде более ровно.
[Удален]  
Адаптивная амплификация (меняем множитель в зависимости от волатильности) дает неплохие результаты.
 
Maxim Dmitrievsky #:

Какой эффект может дать "усиление" высокочастотных компонент во временном ряду перед разметкой и обучением, кто-нибудь задумывался? В плане как это будет влиять на саму модель и ее обобщающие св-ва.

Обычно делают наоборот - сглаживают ряд.

Простой пример:

До и после амплификации:

Можно усиливать разные компоненты и посмотреть как это влияет на обучение. Можно не через МА.

Это же вроде дробного дифференцирования?

Наверно лучше средние частоты усиливать.

[Удален]  
Rorschach #:

Это же вроде дробного дифференцирования?

Наверно лучше средние частоты усиливать.

Ну типа усилить какие-то частоты, чтобы акцентировать разметку лейблов на определенных стратегиях. Чтобы было больше примеров. Не сильно большие улучшения, скорее вариативность финальных моделей дает.
Исходно ущербные стратегии не улучшает :)
[Удален]  

Тут поднимался вопрос кто как отличает реал ряды от СБ. Это можно попробовать сделать с помощью МО, классифицируя реальный и СБ ряды (на основе реальных). Называется Adversarial validation.

Если точность будет в районе 0.5, то модель не может отличить реал от СБ. 

Сделал тест, сравнение риал с СБ:

{'learn': {'Accuracy': 0.6625488511038815, 'Logloss': 0.6129790273501617}, 'validation': {'Accuracy': 0.6570160003273724, 'Logloss': 0.6187963401083126}}

Точность > 0.5, модель видит разницу.

Сравнение 2-х random walks:

{'learn': {'Accuracy': 0.5185200343797324, 'Logloss': 0.6920313398646679}, 'validation': {'Accuracy': 0.5128000491128982, 'Logloss': 0.6926835526214326}}

Точность ~0.5, нет разницы, модель не может отличить.

[Удален]  
Проблема возникает, если задаться вопросом о природе СБ. Если оно нестационарное, то разница в дрейфе среднего будет найдена даже между двумя СБ. Если приращения, то разница может быть бесполезна для трейдинга. Если приращения более высокого порядка, то какого? :) и т.д.

Самым логичным видится сравнивать исходный ряд с СБ, но тогда даже разные СБ будут отличаться. Но у каждого свои свойства (дрейф), поэтому модель научится отличать СБ исходного ряда от просто СБ, что может быть полезно в качестве фильтра (когда исходный ряд не похож сам на себя в моменте, а на другое СБ, то не торговать, например) :) Но и тогда получится привязка к какому-то левому СБ. Случайность, помноженная на случайность, опять даст случайность.

Если в экономическом смысле, то СБ, присущий исходному ряду, не может иметь определенных характеристик в силу фундаментальных причин, поэтому сравнение с любым другим СБ может показывать, что исходный ряд отклонился от своего СБ в моменте 😁 Я устал философствовать. Короче можно просто научить модель понимать какое перед ней сейчас СБ - знакомое или нет. 
[Удален]  

Получилось сделать аугментацию на основе вчерашних рассуждений, которая дает такие кривые:

И даже такие (уменьшение трейн интервала в 2 раза):



 
Maxim Dmitrievsky #:

Получилось сделать аугментацию на основе вчерашних рассуждений, которая дает такие кривые:

И даже такие (уменьшение трейн интервала в 2 раза):



Как насчет сигнала? В тестере красиво. Интересно, как в реале будет.
[Удален]  
Forester #:
Как насчет сигнала? В тестере красиво. Интересно, как в реале будет.
Для кого сигнал делать, для себя? закину на счет конечно. В реале будет похуже.