Блог им. Buybuy

Deep learning и прогноз рыночных цен

Добрый вечер, коллеги!

Сам то я всегда скептически относился к AI, но один резидент СЛ (один из 3.5 человек, которые внимательно читают мои посты), а именно — уважаемый SergeyJu  — убедил меня в необходимости более глубокого изучения Machine Learning.
Тут все просто на самом деле — при построении общей теории заработка на рынке я предложил считать все индикаторы ТС полиномиальными (благо, теория это позволяет при достаточно  высокой степени используемых полиномов).
Напротив, SergeyJu законно возразил мне, что классические индикаторы ТА, кроме операций сложения, умножения и деления, также успешно используют функции min и max. И это разумно.

Далее, вместо функций min и max (элементарное рассуждение) можно использовать их аналоги — abs, sign, функцию Хевисайда и любые другие пороговые функции.
Простое рассуждение показывает что, поскольку от индикатора торговой системы нам требуется только знак (про MM мы пока не рассуждаем), то операцию деления можно опустить и ограничиться сложением, вычитанием, умножением, min и max.
Еще более простое рассуждение показывает, что 2 функции min и max можно заменить на 1 функцию — sign.

В итоге, в качестве прототипа для индикатора нашей ТС мы имеем некий «обобщенный» полином, в формировании которого, помимо всем известных операций сложения, вычитания и умножения, будет фигурировать еще и функция sign.

Решать оптимизационные задачи по отношению к таким конструкциям сложно, однако есть целая область знаний, которая изучает похожие вопросы.

С ЭТОГО МОМЕНТА НАЧИНАЕТСЯ ИЗЛОЖЕНИЕ СУТИ ПОСТА.

В рамках обозначенной выше системы терминов задача оптимального приближения знака будущего приращения цены актива знаком «обобщенного полинома» в точности соответствует задаче обучения нейронной сети с каким-то количеством скрытых уровней и пороговой функцией sign. Ну т.е. (для лохов) библиотеки на Python давно умеют делать нечто похожее (нюансы обозначены ниже).

Я пока ограничился простейшей задачей — нейронная сеть без единого скрытого слоя — только вход и выход.

Каноническую задачу максимизации выражения, составленного из плюсов, минусов, умножений и sign не умеет решать никто (кроме меня, наверное).

Поэтому в Deep Learning функцию sign заменяют на tanh, а после этого решают новую задачу оптимизации методом градиентного спуска (Ньютона, методом сопряженных градиентов… — нужное подчеркнуть).

ПРЕДВАРИТЕЛЬНОЕ РЕЗЮМЕ.

Я сравнил на длинных рядах приращений цен (1000000+ минутных баров) результаты, полученные оптимизацией гладкой задачи Deep Learning, со своими результатами получения субоптимальных решений для негладкой задачи.

Если вкратце:
1. Доступный в массе библиотек классический для DL подход выдает чушь
2. Решения негладкой задачи оптимизации кроют варианты решений DL как бык — овцу

ВЫВОДЫ:
Либо методы Deep Learning плохо подходят для решения задачи предсказания знака будущего приращения цены
Либо модная в Deep Learning замена негладкой функции sign гладкой функцией tanh приводит к решению совсем другой задачи

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

С уважением

36 комментариев
не работает ваш ТА ни боком ни раком) и качество нейронок здесь не причем. Вам бы DataSet бы по началу написать… а как поймете, что его (дата сет) не написать из данных из инета, то и ИИ ваш можно в топку)))
avatar
А вы архитектуру юзаете, при этом не понимаете, что хотите получить на выходе, т.к. на входе хрен пойми что даете (то же походу не понимаете) Ваш извращенный ТА — это бред. Так можно всю математику скормить… ответ-то какой хотите получить на выходе?!
avatar
Head of Algonaft'$, бро!

Начинать диалог с оскорблений — это моветон.

Предлагаю для начала диалога на берегу договориться о терминах

1. Я исследую только приращения цен интересующего меня актива

И ???

С уважением
avatar
Мальчик buybuy, ну тогда какая/кой же это ИИ?! ИИ — это нужный ответ на выходе при правильно поставленном вопросе! Тогда вы не ии занимаетесь) а просто другим подходом к математике)))) Какой вы ответ хотите получить от ваших манипуляций? Есть конкретный ответ на ваши действия… то-то же)))
avatar
Head of Algonaft'$, хммм, братэлло...

Ты вообще читал топик, который пытаешься комментировать?

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

С уважением
avatar
Мальчик buybuy, После их рассмотрения мы (надеюсь) перейдем к соревнованию с нейронками с одним скрытым слоем

я подключусь к соревнованиям (топик же про ИИ, не?!) когда вам все надоест и вы захотите спросить, что вы делаете/делали не так. Я попробую еще раз вам объяснить, что вы потратили свое время на ИИ… мы же об ИИ говорим, да?! так вот: я вам скажу, что не работает ИИ на рынке ценных бумаг и/или деривативов и почему)))
Вы не обижайтесь))) я прошел этот путь еще в 19… пройдете и вы. Вы то же догадаетесь) я в это верю.
avatar
Мальчик buybuy, для простых нейронок уже все попробовали
-> smart-lab.ru/blog/1064919.php#comment17339662
Там всего 8нейронов, 5входящих, 2скрытый слой и 1выходной.
Функция активации SigMoid.
Суть нейронки генерировать предсказание на основе 5 индикаторов.
— Работает —
Вот так на часовиках Si



avatar
Мальчик buybuy, а вот так на 5мин Si c той же сеткой, но чуть улучшив торговых алгоритм(когда торгуем, когда не торгуем и т.п. — простые доп правила) 
Это Wealth-Lab 6.4 .


avatar
Херня этот ваш диплернинг, дорогие хфтшники. Мне так Мальчик Буйбуй сказал.
avatar
Напиши когда протестируешь на нейронке с 7млрд параметров, тогда посмотрим.
avatar
Beach Bunny, зачем?!

При этом подходе, там, где у мэтров будет 7 ярдов параметров, нам хватит 50 тыс.
Ну и мэтры приращения рыночных цен не анализируют, они больше про ставки на Трампа и цены на презервативы

С уважением
avatar
Мальчик buybuy, хотя бы затем что у LLM моделей началось что-то путное получаться после 1млрд параметров.
avatar
Beach Bunny, после 10 ярдов

НО

только на распознавании естественного языка и на переводе
(или) только на распознавании фоток любимых котиков

ВОПРОС:

На что больше похожи приращения рыночных цен:
— на мой п@здеж в интернете
— на фотку любимого котика моей бывшей
— на аудио моего голоса, когда я блюю с похмелья
— на что-то еще?

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

С уважением
avatar
Beach Bunny, +++ яросно плюсую. Но о5 же) что бы загнать такие параметры и/или заставить нужную архитектуру прелопатить эту кучу… надо правильно задать вопрос (задать датасет) и правильно поставить желанный ответ!
avatar
Вот пара конкретных статей, каждая из которых является лишь частью циклов публикаций их авторов по теме:

Модифицированный советник Grid-Hedge в MQL5 (Часть IV): Оптимизация простой сеточной стратегии (I)

Нейросети в трейдинге: Адаптивное представление графов (NAFS)
avatar
Translator, и что?

Много заработали?

Резюме новости вместо ссылки можно?
(у меня даже старый планшет Samsung Tab S9+ умеет делать резюме из текста или сайта))) )

С уважением
avatar
Мальчик buybuy, Могу ошибаться, но раньше там за статью платили несколько тысяч долларов.
Но дело не в этом. Там люди конкретно годами работают по теме.
В обеих статьях и формулы, и уравнения, и коды рабочих программ.
avatar
Translator, ну Ок

И много заработали?
Или публикацией статей зарабатывают?

С уважением
avatar
Мальчик buybuy, В любом случае, в статьях всё очень конкретно и по теме.
avatar
Translator, хммм...

Никто и никогда не публикует статей на тему, как реально можно заработать денег.
При несогласии нижайше прошу пруф.

С уважением

P.S. В обеих Ваших ссылках приведена околонаучная чушь (IMHO)
avatar
Даже не знаю что сказать.  Как минимум их поста не ясно что вообще на вход подавалась что за архитектура использовалась, как тренировалась.   
avatar
Иван-дурак, ну почему?

Вроде все понятно.
Тест делался для сети прямого распространения с пороговой функцией либо sign (мой подход), либо tanh (классика) без единого скрытого слоя.
Пруфу будут в следующем топике.
Тесты с 1+ скрытых слоев — в последующих топиках.

С уважением

P.S. На вход подавались наборы предыдущих приращений цен. Задача была классическая — предсказать знак будущего приращения цены
avatar
Мальчик buybuy, а если чуть ближе к практике, 3 сигнала: купить, продать, не менять позицию? 
avatar
SergeyJu, а это бессмысленно

Ваша система очевидным образом эквивалентна портфелю из двух реверсивных систем.

С уважением
avatar
Мальчик buybuy, если бы у нас позиция была бы +1 0 -1, то да, суперпозиция. Но искать оптимум портфеля не то же самое, что оптимум одной реверсивной системы. Они должны же чем-то различаться. 
Но я имел в виду вариант +1, -1, «как до этого». Это вообще-то одна система, но с  с памятью. 
avatar
SergeyJu, так они и различаются, но имеют общие генетические черты

Второй абзац вообще не понял
Можете уточнить?

С уважением
avatar
Мальчик buybuy, 
1. Общие генетические черты, это как? Допустим, Вы выделили однопараметрическое семейство систем и среди его представителей ищете наилучший портфель из 2 систем. Это понятно, но, строго говоря, другая задача, чем исходная у Вас. 
2. Тут все просто. Приведу пример. Предположим у меня есть неплохая система, которая плодит слишком много сделок и транзакционные потери меня огорчают. Я добавляю к ней фильтр, который говорит, когда надо изменить позицию в соответствии с системой, а когда пропустить сигнал и оставить позу без изменения. 
Чисто теоретически можно предположить, что в сетке будет построен блок, который будет учитывать издержки и сам проредит сигналы. На практике каскадный подход обычно проще. 
avatar
SergeyJu, так. #многобукофф, давайте по-порядку

1. Система с 3-мя решениями о сделке (лонг, сквер, шорт) очевидно эквивалентна портфелю из 2-х реверсивных систем (лонг, шорт). Среди реверсивных систем есть оптимальные (это к квантовым компьютерам) и субоптимальные (это мы умеем). Простое теоретическое рассуждение (или простое моделирование) показывает, что если оптимум есть и он единственный (это частый случай на самом деле), то можно ограничиться только одной реверсивной системой и не плодить лишние сущности без необходимости. Это я про максимум матожидания. Если мы про максимум чего-то вроде МО/ДД, то такая задача тоже решается в рамках реверсивных систем (правда, для метрики МО/СКО), так что находиться в сквере тоже не обязательно.
2. Тут все сложнее. Я не понимаю, как точно оценивать влияние фильтра на ТС, поэтому и в маркетном, и в лимитном случае включаю комиссии и рибейты в формулу для расчета эквити. Вычисления становятся сильно сложнее, зато я могу быть уверен в результате.
К сожалению, задачу максимизации прибыли на сделку я пока решать не научился (а это очень нужно для одного моего проекта).

С уважением
avatar
Мальчик buybuy, никогда не решал задачу максимизации прибыли на сделку. Я пробовал решать задачу максимизации отношения суммарной прибыли к суммарным убыткам (с учетом издержек, понятно), но эта метрика мне не понравилась. По мне, лучше доху к риску максимизировать. 
avatar
SergeyJu, ну риск — понятие растяжимое

Так, задача оптимизации МО/СКО решается относительно легко, а МО/ДД — это тяжелый, чисто вычислительный кейс.

Максимизация прибыли на сделку нужна для лимитного подхода — там, в некотором смысле, чем меньше сделок, тем сильно лучше (специфическое лимитное проскальзывание сильно превосходит традиционные комиссии). Уже 3+ года подхожу к этой проблеме с разных сторон, но… нет. Пока это сложно для меня.

С уважением
avatar
Мальчик buybuy, я считаю риск в отношении по шарпу, по сортино и по индексу язвы (по сути — ско дроудауна). Худший по результатам Шарп, но разница не принципиальна. Конечно, все расчеты с уже учтенными издержками. И, конечно, не аналитика, а честная вычислительная оптимизация. 
avatar
Я пока ограничился простейшей задачей — нейронная сеть без единого скрытого слоя — только вход и выход.
Ну это Вы даже не потрогали, а прикоснулись к Deep Learning. Там вся суть в двух вещах — архитектуре нейросети и правильно подобранному датасету на очень-очень много параметров и данных.
avatar
Вася Пражкин, просто и со вкусом) 
avatar
Все ищут эквити одного вида, восходящую кривую. Плавную, не плавную, не важно. По моему это всегда подгонка(на проверку). Попытка вилять собакой держа её за хвост. Узнать следующее значение, знак, заглянуть вперед. И все эти красивые, идеальные кривые заканчиваются одним и тем же. Наверно так и должно быть. Нет, уверен, хорошо и справедливо, что всё именно так! Именно так и должен функционировать рынок.
Уверен алготрейдерам важно понять эту истину, чтобы перейти на следующий уровень. (да отпадает нужда в прогнозировании, гадании. Отпадает нужда в тестировании на истории(подгонке). Но спойлер — это всё еще не грааль))).


В одном предложении прозвучали слова «должен» и «рынок». Это уже наталкивает на всякие мысли)))
avatar
Что дают 1000000 свечек? Это всего лишь 11 дневных свечек.
Спокойствие, уверенность?
Там где спокойствие и уверенность разве может быть прибыль?
avatar
А зачем предсказывать знак будущего приращения цены, если намного проще предсказать величину этого приращения? Чем с успехом занимаются все прибыльные трендовые системы.
avatar

теги блога Мальчик buybuy

....все тэги



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