[Python, Алгоритмы, Big Data, Финансы в IT] Инструменты для алготрейдинга на Python. Расчет дневного изменения цены

Автор Сообщение
news_bot ®

Стаж: 6 лет 3 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
27-Май-2021 20:30

Привет, Хабр! Сегодня я хочу начать свой цикл статей по алготрейдингу.Первым делом расскажу о самом простом индикаторе ожидаемой доходности ценной бумаги - дневное изменение цены.Дневное изменение цены - это отношение цены закрытия текущего дня к цене закрытия предыдущего дня. Говоря простым языком, это процент, на который выросла или упала ценная бумага за 1 день.Сам по себе этот индикатор не сильно полезен - он просто показывает дневное изменение цены. Но, вот, если мы накопим статистику за какой-либо период (например, за месяц), мы можем рассчитать медиану и, тем самым, попытаться предсказать ожидаемую прибыль за 1 день.Перейдем к практике:Для проведения расчетов нам понадобится:
  • Данные об изменениях цен (вполне сойдет API Мосбиржи)
  • Знание Python и его библиотек Pandas и Matplotlib
  • Трейдерская чуйка (уверен, если вы читаете эту статью, то она у вас есть)
Весь код я приведу в ноутбуке на google colabДалее я буду рассказывать о дневном изменении стоимости ценных бумаг за период с 1 января 2021г. по 25 мая 2021г.Для примера, возьмем акции компании Лукойл (тикер LKOH). Для них распределение дневного изменения цены выглядит следующим образом:
Для акций Лукойла за период с 1 января 2021 года по 25 мая 2021 года мы имеем медиану, равную 0,26%. Это означает, что если завтра не предвидится никаких хороших или плохих новостей, то мы можем ожидать рост стоимости акций на 0,26%Для понимания разброса значений мы должны рассчитать нижнюю и верхнюю квантили.tickermedianq005q05q25q75q95q995LKOH0.0026-0.036-0.026-0.010.0110.0320.035Рассчитав квантили q25 и q75 мы видим, что 50% всех значений дневного изменения цены лежат в диапазоне [-1%; 1,1%]. Т.е., согласно статистике, в 5 из 10 торговых сессиях, цена акции Лукойла упадет не более чем на -1% или вырастет не более чем на 1,1%.Рассчитав квантили q005 и q995 мы видим, что 99% всех значений дневного изменения цены лежат в диапазоне [-3,6%; 3,5%]. Т.е., согласно статистике, почти во всех торговых сессиях, цена акции Лукойла упадет не более чем на -3,6% или вырастет не более чем на 3,5%.Рассчитав квантили q05 и q95 мы видим, что 90% всех значений дневного изменения цены лежат в диапазоне [-2,6%; 3,2%]. Т.е., согласно статистике, в 9 из 10 торговых сессиях, цена акции Лукойла упадет не более чем на -2,6% или вырастет не более чем на 3,2%.Визуализация этого распределения будет выглядеть следующим образом:
Следующим этапом является разделение данных на месячные периоды. В таком случае, основные квантили будут иметь следующие значения:monthtickermedianq005q05q25q75q95q9952021-01-01LKOH0.0032-0.022-0.029-0.0070.0110.0330.0322021-02-01LKOH0.0041-0.027-0.028-0.0100.0140.0270.0272021-03-01LKOH0.0029-0.028-0.027-0.0060.0140.0340.0352021-04-01LKOH-0.0005-0.019-0.019-0.0110.0050.0150.0152021-05-01LKOH0.0023-0.022-0.024-0.0130.0160.0270.022Видим, что в апреле 2021г. медиана стала отрицательной, что намекает нам об открытии коротких позиций в этом месяце. Визуализировав эти цифры мы получим следующую картинку:
В следующей статье расскажу про индикатор "Полосы Боллинджера".
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_python, #_algoritmy (Алгоритмы), #_big_data, #_finansy_v_it (Финансы в IT), #_algotrejding (алготрейдинг), #_algoritmy (алгоритмы), #_lukojl (лукойл), #_analiz_dannyh (анализ данных), #_birzhevaja_torgovlja (биржевая торговля), #_python, #_algoritmy (
Алгоритмы
)
, #_big_data, #_finansy_v_it (
Финансы в IT
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 20-Май 20:11
Часовой пояс: UTC + 5