Блог им. Replikant_mih

ML грааль в трейдинге.

Взяли в руки блокнотики?))

 

Грааль в ML для трейдинга состоит из нескольких компонентов. По сути грааль, это «правильные» ответы на вопросы:

  1. Что используется в качестве объектов, на которых мы обучаемся. Что за срез. Что? – Свеча, день, тик, трейдер, стакан, паттерн? Очень важный компонент.
  2. Признаковое описание этих объектов. Супер-важная тема. Пространство для креатива.
  3. Таргет – важная тема, но скорее производная от «что является объектом». После выбора объекта, с таргетом становится ± понятно.
  4. Тип модели. Эта штука, на самом деле не так и важна, как кажется.
  5. Параметры модели (гиперпараметры и вот это вот всё). Из одних гиперпараметров кашу не сваришь, их нужно использовать скорее чтобы «не испортить блюдо».
  6. Процесс. Обучения, отбора, валидации модели. Супер-важная тема тоже.

 

Пожалуй, можно составить ТОП покороче:

  1. Что является объектом.
  2. Признаковое описание.
  3. Процесс отбора данных, обучения, отбора, валидации моделей.

 

Да, этот ТОП3 хорошо отражает мой опыт использования ML в трейдинге.

33 комментария
Если хочешь грааль то тренировать надо как автопилот или в game-песочнице, при удачной тренировке получится хороший робот трейдер.
А при использовании того что ты описал — получишь прокачанную версию линейной регресии, что наверно неплохо, но врядли то что тебе надо.
avatar

Beach Bunny, Я не получу, я уже получил, и я могу оценить это то, что мне надо или не то, если то, то в какой степени, а по итогам оценки двигаться дальше в сторону большего соответствия того, что я имею относительно того, что мне надо)).

 

Это может выглядеть как что-то абстрактное, но я просто абсолютно конкретные вещи перевел на высокий логический абстрактный уровень «чтоб никто не догадался»)).

avatar
Replikant_mih, всё понятно
avatar
Природа это  природа, потому что если бы она не была природой, то и природы бы не было вовсе. А поскольку природа, была всегда природой,  то  она по сути и есть сама природа. 
avatar
NOT A HAMSTER, Что-то что крякает как утка, может не быть уткой. Если что-то похоже по форме, не значит, что оно похоже по содержанию.
avatar
они думали, что поймали бога за хвост, a на самом деле это была бета на растущем рынке
avatar
Гуру Хренов, Или альфа на любом.
avatar
Где-то рядом с такими граалями живут марафоны желаний и тренинги личностного роста )))
Пафос Респектыч, Ещё кто там живёт?)
avatar
Replikant_mih, ещё розовые пони, которые какают радугой )
Пафос Респектыч, Увлекательный у вас мир).
avatar

Добрый день!
Если потратить 10% усилий на математику и физику вместо ML — все станет проще и понятней.

avatar

DV_13, «все станет проще и понятней» — предельно общая фраза, смысл остался где-то в глубокой глубине. 

Что конкретно всё? — Трейдинг, ML, жизнь?

Что значит понятней? — В чем это выражается? Что мне это даст?

Что значит проще? — В чем это выражается? Кто сказал, что оно станет проще? Почему конкретно мы должны им верить?)

avatar
Replikant_mih, с моей точки зрения, смысл предварительной математики в том, чтобы задать точки где копать и отсечь явно лишнее. То, что явно знает математика, надо использовать. Пример — линейная регрессия. А там, где она не имеет точного решения — сетки.
Не секрет, сто chatGPT откровенно слаб в решении математических задач. Он выдаёт пургу в задачах, имеющих точное решение. То, что он выдаёт, даже нельзя назвать приблизительным решением.
avatar
svgr, Я не использую ChatGPT для торговли). Математика — где-то поможет, где-то не нужна. Можно вытягивать математикой, можно другими сильными сторонами. Математика и не маст-хэв и, наверно, не панацея. При прочих равных конечно в плюс.
avatar
Replikant_mih, просто имейте в виду, что сейчас называют машинным обучением, когда-нибудь систематизируют, структурируют, опишут закономерности и внутренние взаимосвязи, и назовут новым разделом математики.
А если вспомнить личное прошлое, то в 90-е мой приятель на физфаке МГУ занимался распознаванием образов. То есть строго в рамках научного подхода.
avatar
svgr, 
просто имейте в виду

 

Честно говоря, мне вообще фиолетово, как конкретно называется то, чем я занимаюсь, как оно будет называться и т.д. — математика ли, трейдинг ли, ML ли. Это не влияет ровным счетом ни на что.

avatar
Replikant_mih, когда раздел науки сформируется, появятся готовые решения, подходы и т.п. для основных типовых вопросов. Станет проще и быстрее всё применять. Вот на это влияет.
avatar
svgr, В смысле «появятся»? — Уже целая область — датасаенс и куча областей меньшего уровня — там этих готовых решений и подходов уже миллиард примерно).
avatar

Есть разные типы развития — гуманитарные (типа литература, языки, ...),
а есть 'суровые науки'. где есть причинно-следственнаяся связь.
Я думаю, что ML — ближе к гуманитарным. Результат получается за счет анализа большого перебора комбинаций. Что, в общем, тоже не плохо, вычислительные мощности растут.

avatar
DV_13, Нуууу...). Что-то в этой аналогии, определенно, есть). Но с другой стороны — модель даёт вероятностное решение, она вероятностно на основе того, чему она научилась, делает предикт, наиболее вероятный в этом контексте. Не как попало — а именно так. + Создание и работа с ML моделями и процессами — это уже сильно ближе к «суровым наукам»).
avatar
На мой взгляд, ML pipeline, как сейчас говорят, начинается с модели событий. Модель определяет, что является объектом, и как и что с чем должно быть связано. Например крайне распространенная вероятностная модель ( приращения цены -независимый случайный процесс и т.д. и т.п. ) очень быстро приведет Вас в тупик.
Далее следует важнейший этап — векторизация. В результате получаем эмбеддинги — векторное представление данных, которое при удаче отражает смысл происходящего. Надо четко понимать, что без этого этапа никакой ИИ невозможен.
Далее практически все уже стандартизовано и конвейеры налажены. Тип сети, гиперпараметры, обучение. валидация — все уже предельно разжевано и большая часть кода уже написана. Надо только подобрать подходящий вариант.
avatar

Synthetic, Не со всем согласен).

Векторизация — как раз это для меня выглядит формальностью и просто техническим моментом, хотя я не знаю, что в данном конкретном случае подразумевается под векторизацией. Если выбор и генерация фичей — тогда да.

 

Тип сети, гиперпараметры, обучение. валидация — все уже предельно разжевано и большая часть кода уже написана.

Написаны отдельные кубики процесса, есть конкретные пайплайны из кубиков, да. Но стандартные штуки обычно не подходят (пайплайны) для трейдинга. Трейдинг это не кошек от собак по картинкам отличать. Да, кубики я реже пишу кастомные, чем кастомные пайплайны (где кубики не важно какие, а пайплайн кастомный). Пайплайны всегда у меня кастомные, кубики иногда.

avatar
Векторизация — как раз это для меня выглядит формальностью и просто техническим моментом
Гигантская ошибка.
Приведу избитый пример правильной векторизации (типа той, какую делает, например Word2Vec.)
Каждому слову или последовательности слов сопоставляется вектор одинаковой длины (длиной 1000+-500).
Возьмем четыре слова:
король
королева
мужчина
женщина
Соответственно получим четыре вектора.
Произведем простейшую математическую операцию над векторами(они все одинаковой длины).
Вектор_искомый=вектор_король — вектор_мужчина + вектор_женщина.
Полученный вектор сравним ( операция называется — вычисление косинусной близости)с вектором королева. Оказывается это почти одно и тоже. Т.е. мы еще не начинали собственно обучения, а в эмбеддингах уже полно смысла!
Если вместо «правильной» векторизации использовать что попроще — например «мешок слов» — ничего хорошего не выйдет. И никакая супер-пупер нейронная сеть этого уже не исправит.
avatar
Synthetic, Я не работаю со словами)), у меня табличные данные.
avatar
Машины вообще не работают со словами ( в человеческом понимании, в машинном понимании слово — это два байта). Они работают с битами, байтами. А как интерпретируются эти байты — как слова или как табличные данные их совсем не волнует. В любом случае исходные данные для подачи на вход нейронной сети должны быть векторизованы. И это крайне чувствительная процедура. Если Вас не устраивают векторы и тензоры, Вам придется придумать свое глубокое обучение с нуля.
avatar
Synthetic, Пример с векторизацией слов, говорю, мне ничего не иллюстрирует — я не работаю с текстовыми данными — у меня табличные. Что есть векторизация в табличных — я не знаю — там и так всё векторно.
avatar
У меня на данном поприще получилось нечто следующее:

Задаются метрики качества выше которых модель берется в оборот. Одной метрикой не справится, идут несколько. PF>3 KR>30 W>0.5 Средний трейд и к-во трейдов — по обстоятельствам.

Выжившие попадают к господину Шарпу. Или Сортино, если трейдов много.

Из кастомных. Коэффициэнт деградации подхода.Пример: Пеформанс последнего года/ Перворманс предпоследнего.
avatar
Vladimir Iastrebov, 
Задаются метрики качества выше которых модель берется в оборот. Одной метрикой не справится, идут несколько. PF>3 KR>30 W>0.5 Средний трейд и к-во трейдов — по обстоятельствам.

Это IS/OOS?

Из кастомных. Коэффициэнт деградации подхода.Пример: Пеформанс последнего года/ Перворманс предпоследнего.

Интересно. Интересно… что используете кастомное что-то), сама метрика — не знаю, без контекста сложно оценить, наверно, в контексте что-то даёт).
avatar
Replikant_mih, Подход к разгребанию IS который оказался стабильным

avatar

Vladimir Iastrebov, Го в чат про ML в трейдинге (если ещё не) — t.me/+hV1etW5V6hw4MzRi

Правда, там все никак критическая масса для самоподдержания активности все никак не наберется).

avatar
Replikant_mih, :) спасибо. Осматриваюсь. Знакомые все «лица» :)

avatar
Vladimir Iastrebov, Ага, есть знакомые лица), там кстати именно датасаентисты тоже есть.
avatar

теги блога Replikant_mih

....все тэги



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