Добрый вечер, коллеги!
Сам то я всегда скептически относился к 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 приводит к решению совсем другой задачи
Я понимаю, что столь серьезные обвинения требуют доказательств, так что выложу их чуть позже
После их рассмотрения мы (надеюсь) перейдем к соревнованию с нейронками с одним скрытым слоем
Потом с двумя...
Потом с любым количеством скрытых слоев...
С уважением