Блог им. 3Qu |Прогнозирование - это просто.

    • 23 апреля 2024, 18:48
    • |
    • 3Qu
  • Еще
Прогнозирование — это просто. Доступно любому желающему. Прогнозирование котировок на 5 минут вперед. Для интрадея самое оно. Для чего-то большего и длительного — эт не знаю.
В данном примере берем язык Python, строим простейшую нейросеть (перцептрон, 4 слоя) — 15 входов и 1 выход, на котором имеем прогнозируемое значение котировок. На входы подаем обучающую последовательность — Close минутных данных и Close через 5 минут после окончания нашей входной 15 минутной последовательности. Формируем также тестовую последовательность (у меня это 1000 экземпляров). Нормируем наши обучающую и тестовые последовательности, обучаем, и получаем на тестовой последовательности картинку.
Прогнозирование - это просто.
по х — прогнозируемые значения на 5 минут вперед, по у — реальные значения через 5 минут.
Значения predict около нуля (> -0.05 и <0.05) для сделок нас не интересуют, мы же не хотим получать нулевую прибыль, а вот значения <-0.05 и >0.05 для совершения сделок уже вполне подходят, и на графике мы видим, что в этом диапазоне неудачных сделок не так уж и много — в прибыли больше.

( Читать дальше )

Блог им. 3Qu |"Простые" нейросети в трейдинге.

    • 19 ноября 2023, 19:09
    • |
    • 3Qu
  • Еще
Болею, простуда, температуры почти нет — думаю, что в адеквате.) Чем-то серьезным заниматься явно не хочется, а писать посты на СЛ легко и приятно.
Последнее время на СЛ стало много постов об искусственном интеллекте (ИИ) и нейросетям (НС). Про ИИ я ничего не знаю, от слова совсем — мне это не по погонам, а в НС простой структуры что-то понимаю. Даже прочитал одну книгу — читал аж 3 месяца. А что вы хотите, почти 1000 страниц, сплошная математика, описаны перцептроны, SVM, машины Больцмана, рекуррентные, сверточные НС и пр. «простой» структуры. «Простой», в смысле без наворотов и вывертов. Сама такая «простая» НС может содержать хоть бесконечное число элементов. Саму книгу рекомендовать не буду — оч много математики и, чтобы разобраться, нужно как минимум 3-4 курса ВУЗа.
Но что написано в книге — «НС, как правило не применяется самостоятельно и хорошо решает узкоспециализированные конкретные задачи в составе сложных систем». © Цитирую по памяти.
Т.е., в дополнение к НС, нам еще нужно неплохо разбираться в смежных областях для построения системы, а также уметь выделить и сформулировать задачу для самой НС в составе системы и подготовить для НС данные. М… да, нехило так получается. Никому не рекомендую таким заниматься.) Мне можно, мне это интересно.)

( Читать дальше )

Блог им. 3Qu |Все надоело или Deep Lerning (Глубокое Обучение).

    • 29 апреля 2023, 23:09
    • |
    • 3Qu
  • Еще
Что-то скучно, в самом деле, -
Думал Мао с Ляо Бянем.
 © В.Высоцкий

Последние, этак, лет десять, все мои торговые системы (ТС) похожи как близнецы-братья, с некоторыми вариациями. Открываешь котировки на истории, смотришь их параметры, заполняешь шаблон ТС, немного настраиваешь параметры, без всяких оптимизаторов, вручную, и получаешь стратегию уже готовую к применению. Можно даже контрольные тесты не проводить, и так ясно, что будет работать.
Так, недавно сделал стратегию для Binance, фьючерса BTCBUSD. История, всего 3 месяца. Проверил на истории за год — все работает, с теми же, примерно, результатами. Показывал ранее где-то в комментариях.
С Binance совсем другие проблемы, не технического плана, и стратегия так и повисла в воздухе до лучших времен. А с МОЕХ я ушел уже больше года назад — че-то, как-то, кисло там все. Уже после 14-го года стало кисло, а сейчас тем более.
В общем, скучно стало, в самом деле, в течение 10-лет заниматься почти одним и тем же. Время есть, все равно на рынке не функционирую, почему бы не заняться чем-нибудь существенно новым. В тоже время, с новыми идеями тоже плохо. И тут я вспомнил свои эксперименты с машинным обучением где-то 5-ти летней давности, где  с помощью нейросети предсказывались  котировки на 5 минут вперед. Вполне успешный эксперимент.

( Читать дальше )

Блог им. 3Qu |Прогнозирование котировок.

    • 30 ноября 2022, 00:04
    • |
    • 3Qu
  • Еще

Сижу как-то раз за рюмкой чая (это было за год, два или три до моего прихода на Smart-Lab} и приходит мне в голову мысль — а почему бы не попробовать прогнозировать котировки.
Прогноз, естественно, на ТФ 1м, который я использую. Время прогноза пусть будет — 5 минут — вполне достаточное для моих сделок, а недостаточно, так прогноз можно и повторить на следующие 5 минут. Архивы котировок по фьючерсам SBRF и GAZR тоже имеются, минимум за год-два за последние 3 месяца перед экспирацией — хватит и на отладку и на проверку.
Все есть, только как реализовать прогнозирование? — ни одной мысли.
Собственно, не особо мне это было и нужно, рабочая система у меня уже была и меня она вполне устраивала, но мысль о прогнозировании засела, и я время от времени ее думал.
Ничего сколь-нибудь конструктивного в голову не приходило, и было решено для прогнозирования использовать нейросеть, тем более, незадолго до того я немного занимался машинным обучением и нейросетями в том числе.
От использования каких-либо предикторов сразу отказался. Плюс 2-3 слоя к нейросети, и если в данных есть какие-либо взаимосвязи, НС сама внутри себя построит нужные ей предикторы. В общем, подаем на НС поток цен 15-20 отсчетов Vc={C(t0-20),C(t0-19),...C(t0)}, нормируем их к динам диапазону НС — Vcn={c(t0-20),c(t0-19,… c(t0-1), 0} — c(t0) у нас всегда = 0, и пусть НС сама мучается с прогнозированием и поиском c(t0+5). И еще, у всякого метода есть область применимости, потому нельзя учить чему попало. Для этого из обучающей и проверочных последовательностей по возможности исключаем области истории, где прогнозирование невозможно. Иначе получим нечто такое.



( Читать дальше )

Блог им. 3Qu |Сегодня че-то много о нейросетях (НС)

    • 09 марта 2021, 16:04
    • |
    • 3Qu
  • Еще
Основной вопрос — может ли НС, и вообще методы МО, прогнозировать рынок?
Зададим более простой вопрос — можно ли НС обучить выполнять оператор if()… else? Ответ очевиден — конечно можно.
А обучить выполнению группы таких операторов? — Не вопрос, конечно можно.
Т.е., НС можно обучить практически любой логике. Вроде, сомнений не вызывает.

Теперь у нас есть заведомо работоспособная прибыльная торговая система (ТС), принимающая решения о покупке/продаже на основе некоторых данных, констант и логики. Решение — это своего рода прогноз. Решение: покупать — это прогноз роста цены актива, продавать — прогноз падения цены.

Итак, если ТС построена на логике, а НС можно успешно обучить любой логике, то НС можно обучить логике нашей прибыльной ТС. А так как решение ТС — это прогнозирование рынка, то НС и другие методы МО без всяких сомнений могут прогнозировать рынок.
Вот, мы с вами все и доказали:
НС и другие методы МО без всяких сомнений могут прогнозировать рынок.


Блог им. 3Qu |Нейросети в торговых системах. 2.

    • 10 июля 2020, 15:35
    • |
    • 3Qu
  • Еще

В прошлом топике [1] мы разобрались с тем, что и как подавать на входы нейросети (НС). Теперь надо как-то сказать НС — «Горшочек, вари», предварительно рассказав, что конкретно и как именно надо «варить». Мыслей, в общем, нет никаких. Потому, давайте обратимся к классикам — Саймону Хайкину [2,c.33]:
Нейросети в торговых системах. 2.
Вот так вот, сразу и на первых страницах — «не могут обеспечить готовые решения», необходимо интегрировать в сложные ситемы", «относительно простые задачи, часть из которых может решаться НС». Книга конечно старая, но и наш MLP (Multilayer perceptron) в составе scikit-learn новизной не отличается. Этому MLP еще и простую, да конкретную задачу подавай, и вокруг него «сложную систему» городи. Как-то энтузиазма поубавилось.

Ладно, коли на вход нашего MLP уже подается временной ряд, пусть он нам определяет, хотя бы приблизительно, моменты входа в Лонг. А мы потом его проверим, и уточним эти моменты.
Теперь нашу НС надо как-то научить находить Лонг — показать НС как правильно и как неправильно. А мы сами-то знаем как правильно? Учителя фиговы. Это с кошечками-собачками хорошо — показывай себе, и пусть учится.
А давайте что-нибудь предположим, назовем какие-то входы в Лонг правильными, а остальные неправильными. Если мы предположили какую-нибудь ерунду, то НС просто ничему разумному не научится, и при дальнейшей проверке это быстро выяснится. А что-то предположить нам поможет интернет.
Кстати, это свойство НС, отличать фантазии от действительных закономерностей, уже вполне можно использовать для проверки каких-либо наших педположений о поведении рынка. Надо только рассказать о них НС, и она скажет, есть там что-то, с чем следует работать, или выкинуть это и забыть.
Однако, обратимся к интернету. Несколько лет назад наш коллега по несчастью занимался методами Машинного обучения (МО) с целью победить рынок. Он строил массу предикторов, подавал их на входы различных систем МО, и обучал по разметке Зиг-Зага. А что, неплохая идея, входы — лучше не придумаешь.
Вообще, если на минимуме Зиг-Зага загородить правую часть графика, как-то сомнительно, что вообще можно что-то сказать о дальнейшем движении. Да, и по ходу пьесы этот минимум будет постоянно перемещаться. Да и наш коллега долго и упорно менял предикторы и системы МО, потом все реже, реже, и вообще пропал из поля зрения. А на истории, конечно, Зиг-Заг — лепота.
Давайте сдвинем точку входа в Лонг немного вправо от минимума Зиг-Зага, где цена уже начала расти. Мы получим некую U-образную кривую цены, на которой НС хотя бы cможет построить линию регрессии. Не говорю, что это хорошая идея, но мы с помощью НС попробуем ее проверить. Что получим? — понятия не имею, я это делаю по ходу написания материала.
Разметку правильных входов для обучения можно сделать по Зиг-Загу, установив какой нибудь разумный порог от его минимума.
А разметку неправильных входов кто сделает? Опять обращаемся к [2,c.60].
Нейросети в торговых системах. 2.



( Читать дальше )

....все тэги
UPDONW
Новый дизайн