В этой статье мы подробно рассмотрим все этапы создания предсказателя свечного паттерна с помощью Python.

Что такое свечные паттерны?

В финансово-техническом анализе свечной паттерн – это движение цен, графически отображаемое на свечном графике, которое, по мнению некоторых, может предсказать конкретное движение рынка. Распознавание шаблона является субъективным, и программы, используемые для построения графиков, должны полагаться на предопределенные правила, чтобы соответствовать шаблону. Существует 42 распознаваемых шаблона, которые можно разделить на простые и сложные шаблоны. — Википедия

Вот пример графика свечного паттерна:

Каждая свеча состоит из значений открытия, максимума, минимума и закрытия.

Требуемые модули:

  1. TA-Lib
  2. Яху Финансы

Шаг 1: Установка необходимых модулей

Извлечение различных моделей свечей очень просто с модулем talib. Итак, сначала нам нужно установить модуль TA-Lib, который можно установить с https://github.com/mrjbq7/ta-lib. Репозиторий содержит простое руководство по процессу установки.

yfinance — это модуль, который позволяет нам загружать рыночные данные с Yahoo! Финансовый API. yfinance можно установить следующим образом:

Затем импортируйте модули TA-Lib и yfinance, также нам нужно импортировать модуль даты, чтобы получить текущую дату.

Шаг 2. Загрузка необходимых данных об акциях из Yahoo Finance API.

В этом примере мы будем использовать дневные данные таймфрейма S&P BSE SENSEX за последние 6 месяцев.

Шаг 3: Извлечение паттернов свечей с помощью TA-Lib

Теперь с помощью модуля talib мы извлечем наиболее эффективные модели свечей из данных, загруженных из Yahoo Finance.

Шаг 4: Создайте столбцы для каждого шаблона

Теперь мы создадим 10 столбцов для 10 моделей свечей, упомянутых выше, а затем назначим данные свечей, полученные с помощью модуля talib, отдельным столбцам.

Шаг 5: Очистка полученных данных

TA-Lib присваивает целочисленное значение 0, если паттерн не найден, положительное целочисленное значение, если найден бычий паттерн, и отрицательное целочисленное значение, если обнаружен медвежий паттерн.

Итак, теперь мы будем очищать полученные данные и организовывать их в хорошо табличную форму, а затем загружать полученные данные в файл csv.

Вуаля!, мы успешно получили наш набор данных для необходимого запаса.

Проверка полученных результатов

1] Согласно полученным данным 16 ноября 2021 года наблюдалась вечерняя звезда медвежьего паттерна, поэтому давайте проверим, правда ли это на графиках.

Как уже упоминалось, на графиках было видно формирование паттерна вечерняя звезда, и рынок просел примерно на 5-6%, медвежий сигнал был виден в нашем csv-файле в тот же день. Похоже, это была бы отличная короткая возможность

2]Согласно полученным данным, 18 января 2022 года наблюдалась модель медвежьего поглощения.

Как видно из графика, после 18 января рынок пошел вниз, такой же сигнал был и в csv файле.

3]Согласно полученным данным, 8 марта 2022 года наблюдалась модель бычьего поглощения.

Как видно на графике выше, наблюдалось бычье поглощение, а затем на рынке наблюдался хороший восходящий тренд.

Вывод:

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

Я хотел бы поблагодарить создателей модуля TA-Lib за то, что они сделали свою работу общедоступной, поскольку контент здесь в основном основан на модуле TA-Lib.

Если вы найдете мою работу полезной, оставайтесь на связи и не стесняйтесь связаться со мной в LinkedIn.

Ниже приведен весь код скрипта Python: