Блог им. zweroboi

Target, that's why

Приветствую всех!

Как недавно отметил уважаемый камрад Sergey Pavlov, на смартлабике стало совсем жидко с годными постами по трейдингу. Можем вместе попытаться исправить эту ситуацию по мере сил )

Со своей стороны хочу предложить к обсуждению тему выбора target (целевой переменной) для построения рыночных моделей и торговых систем на их основе с применением методов машинного обучения. На мой взгляд — это самый основной момент, который едва ли не на 90% определяет успех попыток добиться чего-то в этом нелёгком деле.

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

Вне зависимости от выбора конкретной методы, если используется т.н. «обучение с учителем» (supervised learning), на вход нужно подать две вещи — фичи и таргет. Выбор фич — отдельная тема, тоже важная, но если target выбран некорректно — полезной модели не получится, и ничего никуда не полетит.

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

Для затравки — берём экспоненциальную среднюю (EMA) в обратном направлении, типа смотрим таким образом в будущее. Какой выбрать интервал сглаживания? Пойдёт/не пойдёт? Может быть нужны какие-то доп условия? Какой метод затащит лучше? Почему нейронные сети — не лучший вариант?

Для нашей с вами общей пользы.

ML FTW

★2
7 комментариев
Где обсуждение? Почему просто не взять изменение цены через N минут? В вашем варианте параметр сглаживания 1 (без сглаживания)
avatar
EY, да что-то нет обсуждения ) Если просто взять изменение цены через N минут, то мы получается пытаемся угадать цвет бара, безотносительно длины его тела и хвостов. Это ничего не даст. Лучшее, что тут может получиться — мы сможем предсказывать, что вероятность появления белого бара чуть выше, чем чёрного. Но если мы не можем ничего сказать о том, какой он будет длины, то где профит?
avatar
Конечно изменение цены должно быть нормировано. Предсказываем не цвет, а именно изменение, чем больше изменение, тем сильнее сигнал.
avatar
EY, пробовали так? Регрессионную вероятностную модель построить/обучить сложнее, чем классификатор для 0|1
avatar
Zweroboi, пробовал именно регрессию, что-то обучалось, для прибыльности стратегии не хватало. Классификаторы не использовал
avatar
EY, ну вот и я о том же, сигнал и так слабый, регрессить там особо и нечего. Скорее заработает если некоторым формальным образом описать моменты, когда можно открывать скажем сделку в лонг, и это будет «1», а всё остальное «0», и строить вероятностный классификатор. Это хотя бы интерпретируемо, и такой подход работает.
avatar
Не пробовал, но как вариант: решаем задачу классификации, а уж решив ее прогнозируем размер на основе волатильности инструмента. По моим наблюдениям волатильность трендовая.
Или так: допустим мы хотим держать сделку в течении какого то времени (это разумно на российском фондовом рынке), тогда все просто-в качестве таргета подаем в нейросетку отношение MAE к MFE разбитом к примеру на 5 зон, «высокий профит-средний-около нуля-средний убыток-высокий»
avatar

теги блога Пафос Респектыч

....все тэги



UPDONW
Новый дизайн