Повторю пост, так как в прошлый раз был отправлен в бан за упоминание сторонних сервисов.
⚠️ ПРЕДУПРЕЖДЕНИЕ: много нудной технической информации, но, возможно, кому-то будет интересно :)
Изучаю индикатор RSI 14 - индекс относительной силы (Relative Strength Index). По сути он отображает силу тренда. Методика расчета для каждой свечи примерно следующая. Берутся последние N свечей до текущей включительно (по умолчанию N = 14). В этой пачке определяют растущие свечи (у которых цена закрытия выше закрытия предыдущей свечи) и падающие свечи (цена закрытия ниже закрытия предыдущей свечи). Суммируют дельты цен отдельно в растущих и падающих свечах и вычисляют относительную силу RS как отношение полученных сумм. Затем полученное значение RS приводят к такому, чтобы оно было в интервале от 0 до 100, по формуле: RSI = 100-(1 / (1 + RS))
Зону RSI от 0 до 20-30 называют зоной перепроданности. Зона от 70-80 до 100 - зона перекупленности. Выход RSI из этих зон является сигналом: из зоны перепроданности - к покупке, из зоны перекупленности - к продаже. Рекомендуется подтверждать сигналы RSI другими индикаторами.
Добавил в телеграм-бот сигналы по событиям этого индикатора, сейчас тестирую и отлаживаю.
В процессе обнаружил массу интересных и досадных нюансов. Если вывести в разных сервисах (YF, TV и в терминале ТИ (QUIK)) RSI по одному инструменту с одинаковыми настройками (число периодов, таймфрейм), то можно увидеть разные значения.
Например, AMGN, 1H (таймфрем = 1 час), 14 периодов, на последней свече 06.05.2021 в 22:30:
TV RSI = 69,71
YF = 66,43
QUIK = 63,87
Мои расчеты по описанной выше методике дали 71,7.
Похоже, используются разные способы округления или вычисления промежуточных значений, например, усреднения показателей приростов и падений. К тому же немного различаются цены закрытия часовых свечей.
Например, AMGN, последняя свеча 06.05.2021 22:30:
TV = 251,46
YF= 251,3
неофициальный API YF = 250,11
QUIK = 251,3
Думаю, с этим ничего не поделать, вычисляемый RSI не будет совпадать с показаниями в других сервисах, как ни крути. Поэтому, если всё будет хорошо, и я опубликую в телеграм-боте возможность подписки на сигналы RSI, нужно иметь в виду эти нюансы.
Для расчета RSI пришлось вернуться к апи ТИ, так как YF по некоторым тикерам возвращает пустые (нулевые) часовые свечи. Чем меньше размер свечи и чем свежее данные, тем больше вероятность получить пустые свечи. Но в ТИ другая проблема. Часовые свечи можно получить только за последнюю неделю. Если вычислять RSI по популярному 4H (4 часа), то для 14 периодов часовых свечей не хватает: за 5 рабочих дней для основной сессии Мосбиржи с 10:00 до 18:40 получаем грубо говоря 5*9 = 45 часов. 45 / 4 = 11,2 - уже не хватает, ведь нужно 14. С этим тоже ничего не поделать, придется довольствоваться часовыми или дневными свечами, но не 4H. Пока экспериментирую на дневных свечах - каждый день в 17:00 прилетают сигналы по списку тикеров.
Зато в YF можно получать свечи индексов (S&P, Nasdaq и т.д.), поэтому пока сделал костыль и считаю RSI индексов YF.
Немного прибрался в коде телеграм-бота.
✅ Поправил функционал оповещения об удаленных тикерах (фактически не работал, как оказалось).
✅ В информацию о новых тикерах добавил рост за 5 лет и за год.
✅ Добавил метод get, который выводит информацию по тикеру. Пример вызова на картинке.
⚠️ Нужно учитывать, что данные по доходности могут быть некорректными, так как Yahoo иногда возвращает кривые свечи.
21 ноября 2020 был пост про очередную подборку тикеров. Идея была такая: отобрать акции со стабильным умеренным экспоненциальным ростом (наименее волатильные) за последние 10 лет, и использовать их для краткосрочных спекуляций.
Решил посчитать доходность по ним за прошедший период (~5 месяцев). Результат на картинке.
Из 74 позиций отрицательная доходность у 8-ми. Самая высокая доходность - {$FATE} (86,75%). Самая низкая - {$TAL} (-15,41%).
Хорошо бы еще освоить ТА, чтобы понимать, когда входить в позиции и выходить)
Оставлю на заметку несколько тикеров в категории до 35$. Не рекомендация, просто понаблюдать.
Относительно новые: {$AVTR} {$AOUT} {$ARNC} {$CHNG} {$SPCE}
Растущие за 5 лет: {$NMIH} {$DRNA} {$HPQ} {$AES} {$WSC}
Прочее: {$ZYXI} {$IOVA} {$ASIX}
Несколько компаний (выборочно), которые выросли с 15.02.2021 по сегодня. Вдруг кому пригодится :)
{$CMC} {$AA} {$DISCA} {$MANU} {$MLCO} {$KRYS} {$DISCK} {$MIDD} {$SPR} {$FOXA}
в комментарии продолжение
Век живи - век учись!
Вчера ловил цену для покупки {$PEN} . Цена опустилась до 227$ и было непонятно, продолжится падение или будет разворот. Решил поставить лимитную заявку на покупку чуть выше, по цене 229$ с расчетом, что если цена пойдет вверх, то покупать. Однако, вопреки ожиданиям, заявка исполнилась по текущей рыночной цене!
Оказалось, что у ТИ (не знаю, как у других брокеров) здесь есть нюанс - лимитная заявка исполняется по указанной цене или более выгодной! Это, конечно, весьма неожиданно... Получается, технически нельзя выставить заявку на покупку по цене выше текущей? TP / SL можно поставить только в уже открытой позиции, да и не очень они надежные, а других вариантов я не знаю 🤷
P.s. Стоит ли говорить о том, что как только исполнилась заявка, PEN тут же упал до 224? 😁
—
Upd: спасибо @allinbluff , развеял мои заблуждения! Действительно, всё отработало корректно. Но всё равно получается, что технически я бы не смог слелать то, что хотел, кроме как следить за ценой глазами или алертами, и затем в ручном режиме реагировать. В БКС для таких случаев есть стоп-заявки (stop-limit). У ТИ видимо такого функционала нет, к сожалению...
Сегодня продал {$TSLA} . Я купил её 31 августа за 509$ после какого-то комментария в пульсе другой акции типа “Пока вы тут сидите, там на Тесле люди миллионы зарабатывают!” Посмотрел графики - за день, за неделю, за месяц, за год - уверенный рост! Ну, думаю, раз она целый год растёт, очень маловероятно, что прям завтра повалится, к тому же сплит по логике должен привлечь больше покупателей. Возьму ненадолго прокатиться.
А на следующий день она рухнула, и мой портфель очень заметно просел. Я думаю, что именно это событие побудило меня разобраться в том, что же я покупаю. 09 сентября цена Теслы опустилась до 319$, а 12 сентября я опубликовал первый пост про API Тинькофф-Инвестиции, и начал писать приложение для работы с данными API, осваивать amCharts, телеграм-бота и прочее...
В общем, это был очень ценный урок. С одной стороны, финансовый профит в итоге не большой (продал за 525$), а с другой - очень даже большой. Анализ акций рынка, который я в итоге провел, очень сильно поменял моё представление о бирже, о том, что стоит покупать, а что нет, и что делать с лосями))
Tesla очень классная компания с огромными перспективами, но в её акции я пока больше не игрок :)
Очередная подборка тикеров.
Не понимаю ажиотажа вокруг таких бумаг, как, например, {$RIG}, {$MNK} или {$M} . В ТИ торгуется более 1200 американских акций, среди них есть большое количество более безопасных и достаточно волатильных альтернатив, которые, как мне видится, хороши и для краткосрочных / среднесрочных спекуляций, и для инвестирования, хотя в отношении США я бы пока воздержался от долгосроков минимум на ближайшие полгода.
В комментариях - список таких тикеров. Это акции с уверенным умеренно-экспоненциальным ростом в десятилетнем периоде. Я расставил по ним алерты на тех уровнях, которые считаю хорошими для покупки и реально достижимыми в ближайшее время. Закинул удочки, так сказать, и жду, когда клюнет. Тикеров немало, и поэтому клюёт достаточно часто. На прошлой неделе были алерты по {$RGEN}, {$BSX} и {$NDAQ} .
{$RGEN} уже закрыл в пятницу примерно с +5% за два дня, и, возможно, переоткрою позицию в понедельник.
{$BSX} обвалился подозрительно резко, поэтому поинтересовался, на чем был обвал, и решил, что пока лезть туда не стоит.
{$NDAQ} тоже пока не решился брать, есть ощущение, что скоро будет коррекция (пора бы уже), и он повалится вместе со всеми вниз.
В периоды падения рынка (и не только), мне кажется, хорошо вкладываться в {$FRHC} - у меня это сейчас вообще самая активная бумага в портфеле, она прёт и прёт вверх, особо не реагируя на выборы, коррекции, короны и прочие новости, живет в своем мире :) Судя по комментам в FRHC, которые добавляются всё чаще и всё больше становятся похожими на пульс TSLA, эта бумага набирает популярность.
Надеюсь, что этот список отборных акций (я несколько часов отбирал их 🙂 ) будет хоть кому-то полезен 🙏
Еще несколько растущих американских компаний для наблюдения. Это акции, которые начали торговаться относительно недавно, после 01.01.2017.
{$TXG} {$AYX} {$AVLR} {$BAND} {$NET} {$INSP} {$MDB} {$OKTA} {$PINS}
Оставлю для наблюдения несколько компаний из наиболее растущих отраслей сектора здравоохранения США.
Healthcare Plans
{$HUM} {$MOH} {$UNH}
Medical Care Facilities
{$AMED} {$CHE} {$LHCG}
Небольшой анализ рынка США.
Составлять вручную собственные индексы по отраслям и секторам для всего американского рынка оказалось слишком муторной затеей, поэтому я решил просто написать отчет, который за заданный период рассчитывает для каждого сектора и отрасли (по данным Yahoo) усредненные свечи по всем входящим в них акциям. Некоторые названия отраслей/секторов указаны по-русски (что успел перевести), некоторые - по-американски.
Сразу предупреждаю - расчеты непростые, к тому же помноженные на несовершенство исходных данных Yahoo, поэтому могут быть ошибки и неточности. Но в целом результат выглядит похожим на правду.
За 10 лет (с 01.10.2010 по 01.10.2020) получилось следующее:
В топе роста по секторам - телекоммуникации, технологии и здравоохранение. Все остальные сектора тоже растущие, за исключением энергетики.
В секторе телекоммуникаций в топе роста Видеоигры/мультимедиа и Telecom Services.
В секторе технологий: Semiconductor Equipment & Materials, Software—Application и Полупроводниковые компоненты.
В секторе здравоохранения: Medical Instruments & Supplies, Healthcare Plans и Medical Care Facilities.
По просьбам @HUQAFU и @gabj сделал телеграм-бота с уведомлениями об обновлениях каталога ТИ. Работает ежедневно с 09:00 до 23:00, проверяя обновления каждые 30 минут. По новым тикерам сразу подгружаются данные из Yahoo и рассчитывается доходность за 10 лет.
Ссылка на бота в описании профиля. Не забудьте нажать кнопку Start / Начать для подписки на обновления.
Дополнительно командой /new можно посмотреть список последних добавленных тикеров, по умолчанию за последний день. Можно указать количество дней, например: /new 10 - выведет список новых тикеров, появившихся в каталоге ТИ за последние 10 дней. Но эта функция нормально работает в пределах может быть месяца, так как основная масса каталога загружалась сразу одновременно скопом. Для новых акций, которые будут появляться, это должно работать нормально.
Все тикеры в сообщениях бота кликабельны.
У бота есть еще некоторые команды, но они пока в процессе тестирования.
Новые акции в каталоге Тинькофф: {$CNS} {$IOSP} {$NTRA} {$POR} {$TW}
Yahoo дает цены и объемы по каждой свече. В интернетах пишут, что резкий рост объемов двигает цену вверх или вниз, а когда объемы средние или отсутствуют, акция пребывает в боковике. В связи с этим возникла идея: отобрать наиболее волатильные и интересные акции и постоянно запрашивать по ним последние свечи (например, минутные раз в минуту). Если рост объема в последней свече превышает некое пороговое значение, отправлять уведомление об этом как сигнал для покупки или продажи.
Волатильность - это изменчивость цены. Если взять график инструмента за период, то степень волатильности - это по сути длина кривой графика. Поэтому её можно измерить так: по каждой свече считаем изменение цены по модулю и суммируем полученные значения. Например, если в свече Open = 10, а Close = 10.5, то изменение = (10.5 - 10) / 10 = 0.05. В принципе этого достаточно, но дополнительно можно вычислить отношение полученной волатильности к минимальному из списка. Не знаю, насколько так правильно считать, но меня полученные результаты вполне устроили, достаточно показательные.
В файле (ссылка в описании) пересчитал данные за 10 лет и добавил новый параметр Volaty - можно пользоваться.
Для уведомлений и управления подписками на тикеры решил использовать Telegram. Спасибо @tibot за наводку, я совсем отстал от прогресса и до недавнего времени не знал, что у Telegram есть такой прекрасный API! Телеграм-бот уже минимально работает в части команд, алерты пока еще не тестировал, буду тестить на следующей неделе.
Есть нюанс - Yahoo дает свечи только в основное торговое время. По акциям США - только с 16:30 до 23:00, поэтому в другое время по ним мониторинг работать не будет.
На каких пороговых значениях должен срабатывать алерт? Пока есть идея плавающего порога с эффектом толерантности: если значение роста объема превышает предыдущее, увеличиваем порог. Если в течении определенного периода времени алертов не происходит, начинаем постепенно снижать значение порога.
На графике - самая волатильная {$ZYXI} и самая неволатильная {$DISCB} из акций США, торгующихся на рынке более 10 лет.
За последнюю неделю в каталоге ТИ добавилось, если не ошибаюсь, аж 34 новых акций. Не буду расписывать каждую и выкладывать графики роста, ограничусь только списком тикеров:
AAON AIT APLT ARCT ATEX ATRC BTAI CEVA CHWY CNST CRWD CWST DT ENPH EVER FELE INDB LCII LNN LVGO MED NCBS NP NWE PGNY PIPR PTCT PTON TDOC TMUS TNC UTL VIE VRTS
Для себя из новых отметил {$ENPH} - солнечная энергетика. Торгуется в США с 2012 года.
Несколько компаний сектора Здравоохранение из топов роста показателя Volume*Price за 10 лет, тоже сделаю метку для наблюдения.
{$MRTX} {$MYOK} {$NEO} {$RGEN} {$ARWR} {$IMMU}
Новые акции в каталоге Тинькофф-Инвестиции:
{$WORK} / SLACK TECHNOLOGIES INC - разработчик программного обеспечения. В период работы в БКС пользовался их корпоративным мессенджером Slack - очень крутое приложение.
Торгуется с 20.06.2019. Пишут, что США, хотя похоже, что основана в Канаде.
{$SPOT} / SPOTIFY TECHNOLOGY SA - разработчик музыкального стрим-сервиса.
Швеция. Торгуется с 03.04.2018.
{$SPCE} / VIRGIN GALACTIC HOLDINGS INC CLASS A - разрабатывает ракетные двигатели, планирует организацию туристических полетов в космос.
США. Торгуется с 29.09.2017.
Оставлю для эксперимента / наблюдения несколько компаний технологического сектора с топом роста условного параметра Interest за 10 лет (среди техов). Здесь Interest = Volume * Price.
Рядом график изменения цен по ним же.
{$RP} {$NXPI} {$MLAB} $IPHI {$TCX} {$SSNC} {$RNG}
По поводу ракет на графике {$RTX} . Похоже, это какой-то баг у Yahoo. Такие ракеты только в недельных или месячных свечах.
Например, за период с 2017-12-01 по 2018-04-01 по недельным свечам Yahoo даёт такие цены Open:
74.84581756591797,
76.26180267333984,
77.36312103271484,
79.76085662841797,
1584.81005859375,
1597.6400146484375,
85.07866668701172,
1771.27001953125,
84.94021606445312,
86.8785400390625,
84.00251770019531,
77.45122528076172,
1770.6099853515625,
84.21649169921875,
81.384521484375,
84.77029418945312,
80.5538101196289,
77.99874114990234
Если за тот же период запросить дневные свечи, то цен 1584, 1597 и 1770 уже нет, максимальный рост в периоде +16%.
Ничему верить нельзя :) у SPBEX графики неполные, у Yahoo - местами кривые. Но бесплатных более качественных источников пока не нашел.
Вытащил из Yahoo! Finance сектор и отрасль эмитента, за исключением единичных инструментов : POGR, ENPG, GD, BRK.B - по ним этих данных нет. С POGR вообще всё сложно, по нему в API Yahoo почему-то не получается даже котировки получить, поэтому пока приходится в индивидуальном порядке запрашивать данные в API Tinkoff.
Yahoo! Finance в исторических свечах помимо цен Open, High, Low и Close дает объем торгов Volume. Объем торгов - это количество акций, сменивших владельца за период времени. Насколько я понимаю, по этому параметру с одной стороны можно косвенно судить о капитализации компании, с другой - об интересе рынка к акции, но в чистом виде этот параметр не совсем информативен, так как не учитывает, например, цену акции. Если у меня есть 1000$ и одинаковый интерес к акциям за 500$ и за 100$, то первых я могу купить две, а вторых - десять. Соответственно, объем торгов в таком случае у вторых будет в 5 раз больше.
Поэтому я решил с учетом дополнительных имеющихся параметров вычислить более понятное значение таким образом:
1. По каждому инструменту в каждой свече считаю среднюю цену (среднее арифметическое между Open и Close).
2. Пересчитываю полученную цену в USD, если валюта акции другая.
3. Умножаю объем торгов в свече акции на полученную цену в USD.
4. Далее усредняю полученные значения в оцениваемом периоде. Например, если период 1 год с размером свечи месяц, суммирую полученные по каждой свече значения и делю на 12.
5. И, наконец, в списке акций нахожу минимальное значение, полученное в п.4, и делю все значения на это минимальное. То есть у акции с наименьшим значением “приведённого” объема торгов полученное значение будет равно 1.
Полученный параметр назвал Interest. Конечно, он весьма условный. Я рассчитывал его в основном для того, чтобы хоть как-то ориентироваться и на что-то опираться при составлении индексов по американским акциям, где, например, в секторе технологий набирается около 200 акций. Можно, конечно, смотреть на S&P500 и прочие индексы, но это долгая ручная работа.
Обновил данные в файле: добавил сектор, отрасль, новый параметр Interest. Итого, сейчас в файле такие поля:
- name - наименование инструмента
- ticker, isin, figi - тут всё понятно
- open, high, low, close - соответственно, цена на начало периода (open), максимальная (high) и минимальная (low) в периоде и цена на конец периода (close)
- close %, high % и low % - отношение цен close, high и low к close в процентном выражении.
- start trade - дата, с которой инструмент торгуется на рынке
- sector и industry - сектор и отрасль в секторе по данным Yahoo (пока не переводил на русский, оставил как есть)
- Yahoo country - страна эмитента по данным Yahoo
- Interest - расчетный параметр, о котором писал выше
Ссылка на файл та же, добавил в описание профиля.
Чтобы разбавить пост картинкой и тикерами, прикладываю графики 10-летнего роста семи акций из топа по параметру Interest: {$AAPL} {$AMZN} {$FB} {$TSLA} {$BABA} {$RTX} {$MSFT} . У {$RTX} очень неожиданный нетипичный график с регулярными ракетами. Естественно, это же военпром :)
+ обновил аналогично данные за год на втором листе
++ ракеты {$RTX} - это баг в свечах Yahoo. Добавил отдельно график с пятидневными свечами, там таких ракет нет
Новые акции в каталоге Tinkoff: {$LNZLP} {$SELGP} $FLOT
$FLOT совсем новая, думаю, всем приходило сообщение об IPO. Остальные - старые знакомые золотодобытчики. {$SELGP} торгуется на рынке с 22.05.2012, у ТИ график почему-то с 2018 года.
Вывел для сравнения графики роста за 10 лет по обычным и новым привилегированным.
Продолжаю разгребать и сортировать тикеры, с API Yahoo дело пошло быстрее и интереснее.
Среди стран, которые выдает яху, попался Kazakhstan - это единственный тикер {$FRHC} . При этом у ТИ указана страна Россия, а на сайте самой компании - США, Невада.
На SPB график как обычно неполный, на Nasdaq торгуется с 07.02.2018.
Интересная, стабильно растущая компания. Добавлю в избранное.
Новые тикеры в ТИ
{$ADS@DE} - Германия / Одежда и аксессуары. Торгуется с 24.06.1998.
{$BAYN@DE} - Германия / Фармацевтика. Торгуется с 16.12.1996.
{$DTE@DE} - Германия / Телекоммуникации. Торгуется с 18.11.1996.
{$DKNG} - США. Оператор ежедневных фэнтези-спортивных соревнований и ставок на спорт. Торгуется с 25.07.2019.
У СПб графики по акциям не полные. На изображении - рост компаний за последние 10 лет.