О чем не расскажут новичку тиции?

 

Содержание

Что не показывает аналитика в Тинькофф Инвестициях. Подробно разбираем свой портфель

У меня, как у пользователя Тинькофф Инвестиций, часто возникали вопросы: какие акции за весь период торговли принесли мне наибольший доход; сколько всего я заплатил за обслуживание тарифа и прочие комиссии; какие акции в портфеле давно лежат и не приносят мне доход; как отсортировать акции в своем портфеле по какому-либо критерию.

Текущая аналитика брокера показывает только открытые позиции, а профиль в «пульсе» подсчитывает лишь общий процент, без конкретики. Это не дает возможность увидеть «настоящую» картину своего портфеля.

К примеру, покупаем 1 акцию по 1000, после падения до 900 усредняем еще одной акцией. Затем при отскоке до 950 продаем 1 акцию. В итоге оставшаяся акция в портфеле «горит зеленым» (образуется плюс +50 по правилу fifo), хотя фактический результат бумаги на данный момент будет 0 (без учета комиссий). Такое отображение бумаг в приложении может сбить с толку, и привести к неправильным решениям и большим потерям, при совершении множества сделок.

Идея вести дневник сделок в excel, или периодически копаться в налоговом/брокерском отчете, мне не понравилась. Зато приглянулась мысль — обрабатывать данные полученные из официального API.

Результатом стал онлайн-инструмент, в который легко загрузить историю операций. После чего она отображается в табличном виде, с которыми удобно работать.

В статье я продемонстрирую, как пользоваться созданным инструментом, и какие задачи решаются. Подсвечу некоторые особенности данных полученных из API.

Об инструменте, немного лирики

Мои первые шаги по анализу истории были сделаны года два назад. Результатом были таблицы, которые помогали мне закрыть любые вопросы:

Скрин статистики 2020 года

Скрин статистики 2020 года

Я даже периодически делал разного роды выгрузки друзьям и знакомым. Передавать VM/doсker образ со скриптами людям без навыков в IT было сложно, поэтому делалось все мною вручную. Зародилась мысль автоматизировать и вывести процесс в онлайн.

По акции от AWS достался бесплатный сервер на год, куда я перенес базу и продолжил изучение python, придумывая себе различные задачи, позволяющие автоматизировать торговлю.

Позже к разработке подключился друг. И вот мы больше года держим сервер, где крутятся наши наработки на python (Telegram-боты, скринеры и прочее). К примеру, боты уведомляют о различных событиях по акциям наших портфелей.

Разработка велась нерегулярно, в свободное время. Различных скриптов со временем стало много, для этого мы создали единый модуль с веб-интерфейсом для управления всеми наработками, заодно изучили React. Начали с отображения табличных данных.

Результатом полуторамесячной работы по выходным стал сайт https://tstocks.ru/, который использует:

Front: ReactJS (Nginx)

Backend: Python Flask

Все запросы и параметры хранятся в БД. Получился достаточно удобный конструктор таблиц и прочих методов

Управление таблицами в БД Меню

Сайт должен работать во всех современных браузерах. Публично пока доступен лишь анализ истории.

Ближе к делу, как загрузить данные для анализа

Для анализа требуется история сделок, которую можно забрать в формате json из API Тинькофф. Пример для curl, а ниже будут команды и для Windows.

Следует ознакомиться с правилами использования OpenApi Тинькофф. Никому не передавайте токен и не оставляйте его в истории команд, т.к. с помощью него можно совершать операции. Если вы считаете, что токен мог быть скомпрометирован, то отзовите его на странице банка https://id.tinkoff.ru/account

Если вы ранее не работали с консолью, и у вас вопросы по использованию команд, то лучше спросите в ЛС/комментариях перед использованием.

Параметры запроса CURL

Можно изменить параметры запроса в url к api-invest.tinkoff.ru/openapi/operations:

from=2015-01-01 — период выгрузки ОТ

to=2025-01-01 — период выгрузки ДО* лучше указывать максимальный период, для консистентности данных

&figi=******* — необязательный параметр, выгрузка операций по конкретному FIGI

&brokerAccountId=****** — необязательный параметр, указываем конкретный брокерский счет, если у вас их несколько

brokerAccountId можно получить командой:

Json не содержит API токен и прочую личную информацию. Исключить передачу токена было главной целью.

Некоторые операции имеют вложенный элемент «trades»

Далее эти данные загружаются на сервер, в json ответе возвращается sha1 hash ваших операций (именуемый id).

Получение и импорт сделок можно поместить в одну команду:

повторный импорт

При повторном импорте, если данные по сделкам не изменились, то будет выдан тот же id, а загрузка пропущена.

*Nginx имеет небольшие лимиты на повторный импорт

Пример для Windows:

Сохраняем историю сделок в файл

from=2015-01-01 — период выгрузки ОТ

to=2025-01-01 — период выгрузки ДО* лучше указывать максимальный период, для консистентности данных

&figi=******* — необязательный параметр, выгрузка операций по конкретному FIGI

&brokerAccountId=****** — необязательный параметр, указываем конкретный брокерский счет, если у вас их несколько

brokerAccountId можно получить командой:

Отправляем файл на сервер

Как пользоваться

После загрузки операций и получения id, вставляем его на сайт. Не путайте с токеном TinkoffApi. Имеется демонстрационный id, для тех, кому интересно посмотреть функционал, не загружая свои сделки.

На сайте нет авторизации в привычном виде, т.к. цель максимально упростить процесс, избежать регистраций и сбора личной информации.

Id это sha1 хэш, который достаточно уникальный и длинный для перебора. Просмотреть сделки сможет любой, кто знает id, что может быть удобно для передачи его другу-инвестору.

Имеется кнопка удаления данных по id, а также в планах ввести время жизни загруженного портфеля.

Если у вас есть сомнения по поводу описываемых операций, уточните подробности у нас, если есть идеи как сделать лучше — сообщите.

При нажатии на кнопки открываются соответствующие таблицы, я покажу несколько кейсов их использования, чтобы было понятно, как с ними работать. Постараюсь воздержаться от комментариев самих сделок и результата.

Статистика по инструментам

Таблица отображает данные сгруппированные по FIGI. В наименованиях столбцов кратко описан смысл, по ходу статьи дополнительно уточню значения некоторых столбцов.

а) Смотрим доходность торговли по конкретной бумаге

Почти два года назад я наивно игрался с «шортами Tesla», и мне было интересно сколько дохода это приносит. С этого кейса родилась идея извлекать данные из API.

Итог сделок плачевный, хотя начиналось все неплохо. Опыт, сын ошибок трудных..

Поясню значения столбцов:

Фикс разница — зафиксированный доход/убыток. Купоны/дивиденды/комиссии не включены, они отображаются в отдельных одноименных столбцах

Оказывается, что это не так легко посчитать, если на руках не 0 бумаг.

Бумаги покупаются и продаются частями в разное время, требуется раскрывать и упорядочивать сделки, соблюдая правило FIFO, еще у некоторых акций огромные лоты (*в TGKB миллион шт.)

Все расчеты ведутся в БД, т.ч. пришлось повозиться с оптимизацией sql запросов и функций, чтобы это работало очень быстро. Для оптимизации использовал https://explain.dalibo.com/

Доход — это сумма двух предыдущих столбцов, купоны/дивиденды/комиссии не включены

Общий доход — это предыдущий столбец + налоги(див/купон)/купоны/дивиденды/комиссии

Figi содержит ссылку, по которой открывается вся история по бумаге:

*для демонстрационного портфеля некоторые подробности недоступны

**комиссия за маржинальную торговлю не привязана к конкретному figi, ее можно посмотреть на вкладке «Прочие платежи»

б) Смотрим то, что не видно в приложении при фиксации убытков, или активной торговле

Скоро конец года, и для снижения налога на доход я зафиксировал убыток по FEES, и снова выкупил акции. Открыв приложение брокера, я даже увижу прибыль (столбец «Доход текущий»). А если так зафиксировать все убытки, то можно увидеть «зеленый» портфель в приложении.

Однако, мне интересно видеть и не забывать про реальный итог торговли по тикеру.

в) Ищем бумаги, которые принесли наибольшую прибыль за все время

Столбцы таблицы поддерживают фильтрацию, сортировку и группировку по нескольким столбцам. Сортировка осуществляется кликом по нескольким столбцам через SHIFT, группировка осуществляется через меню-ПКМ в требуемой последовательности. При группировке некоторые числовые столбцы показывают итог с суммой, минимальным и максимальным значением

Группируем или фильтруем по валюте и сортируем по «Общему доходу»

Наиболее прибыльной стратегией для меня было — купить несколько голубых фишек, и забыть про них:)

г) Считаем дивиденды

Некоторые компании торгуются в рублях, но платят дивиденды в валюте (например «Полиметалл»). Поэтому для группировки введен отдельный столбец — «валюта дивидендов». Не буду повторяться и показывать, как группировать и сортировать.

В примере покажу некий парадокс, у меня приложение Тинькофф не отображает дивиденды по своим же акциям.

Обратил внимание, что TCS($) принес большие дивиденды, и огромную доходность (* считаю как отношение всего оборота доходов/расходов).

Понимаю, что этот доход скорее всего относится к рублевой акции, т.к. сумма достаточно большая. Почти все, кто использовал Тинькофф API знают, что TCS и TCSG раньше висели на одном FIGI, и создавали головную боль. Пришлось ввести простой костыль, который меняет FIGI в зависимости от валюты.

Но особенность в том, что даже в терминале по этим тикерам не видно информации по данным выплатам:

История в терминале

В ленте приложения эти событие отображается, и при клике переводит в TCS ($)

Но и в истории тикеров данной информации нет:

TCS TCSG

е) Еще один необычный пример. По STX статистика показывает отрицательное количество акций.

*в данном случае эмулируется шорт-позиция. Доход рассчитывается, словно я продал по 98, а выкупить сейчас можно по 104

Видимо у Seagate когда-то сменился figi. Такая же история в официальном терминале, т.е. я словно из воздуха получил и продал эти акции, никакого наследования не видно. Техподдержка отправила в брокерский отчет смотреть сумму покупки по старому isin (IE00B58JVZ52):

Вся история по STX в терминале

Вся история по STX в терминале

Есть еще минусы анализа данных из API, которые опишу в конце статьи.

е) Ищем «залежавшиеся» акции через столбец «дней с последней сделки»

Это была одна из первых покупок, оказавшаяся падающим ножом, которую я почему-то наивно храню. Акция не приносит дивидендов, и лежит в долгосроке почти 3 года. Возможно пора зафиксировать убыток..

Отклоненные операции

Таблица может быть полезна для обнаружения несработавших тейк-профитов/стоп-лосс, попыток купить/продать акцию.

Например, у меня стоял тейпрофит на TGKN, выставивший заявку, которая не исполнилась.

Несработавший тейк/стоп придется переставлять вручную.

Еще можно вспомнить, какие акции вы хотели купить/продать, и как повела себя акция по отношению к текущей цене.

В примере ниже видны мои попытки купить ISKJ, который взлетел в 3.5 раза за короткий промежуток времени.

Есть и обратные примеры, куда к счастью не удалось войти. Мне такой анализ позволяет вспомнить, чем я руководствовался и немного порефлексировать:)

Прочие операции

Данные таблицы содержат операции, не связанные напрямую с инструментами, например, ввод/вывод средств, комиссию за маржинальную торговлю, плату за тариф и т.п.

Дополнительные столбцы с датами позволяют удобнее фильтровать/группировать данные по периодам, а одна из таблиц уже сгруппирована по месяцам, валюте и типу.

Анализируя траты на оплату тарифа «Трейдер», я заметил, что в августе 2021 год плата списалась с меня 2 раза. Я даже подумал, что это глюк API:

Пример ручной группировки

Ответ тех. поддержки я не очень понял. Судя по всему, я с каких-то пор стал привязан к расчетному периоду и дате платежа (22-е). Хотя мне казалось, что если я заплатил 05.08.2021, то могу торговать до 04.09.2021.

UPD. В комментариях представители банка написали, что двойное списание осуществлено из-за технических проблем https://habr.com/ru/post/589865/comments/#comment_23875149

Этот пример показывает, что необходимо всегда сверять ожидание с реальностью.

Проблемы анализа через API

API не возвращает историю по бумагам, которые больше не обращаются на бирже. Некоторых погашенных облигаций я тоже не нашел в ответе API.

Видимо поэтому, чтобы узнать сколько я потратил на упомянутый выше Seagate, мне нужно скачивать отчет брокера.

По этой же причине не берусь считать суммарный итог портфеля.

При сплите/консолидации бумаги непонятен коэффициент, и я не нашел способа получить его от брокера. Видимо надо мониторить какие-то ресурсы/новости. Или пытаться высчитывать самому по разнице дневных свечей, но не уверен, что это надежно.

На данный момент бумаги, прошедшие сплит/консолидацию могут неправильно отображать доход в таблице. Если кто знает, как это решить — напишите.

Пока что не учитываю налоги, т.к. цель показать общую картину без тонкостей: учета ИИС; W-8BEN; сроков владения и т.д.

За последние годы приложение Тинькофф стало лучше, появились скринеры, группы, заметки. Не знаю есть ли такое у других брокеров. Но я до сих пор не нашел способа фильтровать/сортировать инструменты своего портфеля. Не раз писал предложения по улучшению, в том числе на Хабре. Как раз статья @softandiron вдохновила меня оживить забытый инструмент.

Я показал лишь часть ярких примеров использования. В будущем планируется расширить функционал сайта https://tstocks.ru/. Не откажемся от помощи грамотных инвесторов и программистов.

Как вам в целом такой формат загрузки, преобразования и отображения данных. Пользуйтесь ли вы сторонними инструментами, и помогают ли они пролить свет на портфель? Хватает ли вам штатного функционала брокера?

Таблицы несложно расширить, пишите, чего не хватает, сообщайте о недочетах и делитесь общим впечатлением.

О чем не расскажут новичку Тинькофф.Инвестиции?

Еще

О чем не расскажут новичку Тинькофф.Инвестиции?

Гуляя в просторах ленты ВК, я все чаще стал натыкаться на Тинькофф. Инвестиции, а точнее на посты ребят с таким содержанием.

Тысячи новичков спрашивают друг у друга мнения, касательного того или иного актива.

Причем 90% акций, которые обсуждаются – являются с фундаментальной точки зрения такими, в чью сторону не хочется даже смотреть. Думаю, что существует несколько причин такой ситуации.

  1. Полное отсутствие знаний по фундаментальному анализу. Никто из ребят с вероятностью 90% даже не открывал финансовый отчет акций, которых он накупил в свой портфель, и уж тем более мало что там понял.
  2. Индекс на исторических максимумах. Так уж получается, что акции хороших компаний выросли и новички интуитивно пытаются торговать, глядя на капитализацию компании.

О чем не расскажут новичку Тинькофф.Инвестиции?

Они открывают график Газпрома, Лукойла, Сбербанка и видят, что акции очень сильно выросли.

И новички бояться их покупать, считая, что данные акции сейчас дороги!

О чем не расскажут новичку Тинькофф.Инвестиции?

Они заходят в Финам (Инвестинг или Квик) и листают графики, пока не находят компании, которые, по их мнению, сейчас на «дне».

О чем не расскажут новичку Тинькофф.Инвестиции?

Например, МРСК Центра.

О чем не расскажут новичку Тинькофф.Инвестиции?

Ух ты, и правда на графике есть «дно»! Только вот если закрывать правую часть графика, и отмотать время назад, то можно найти еще одно «дно».

А что показывают финансовые показатели компании?

О чем не расскажут новичку Тинькофф.Инвестиции?

Эх, вот незадача, финансовые показатели продолжаю падать и вслед за ними падают котировки. И, разумеется, никакое «дно» еще не достигнуто.

В процессе покупки акций компании главная задача любого инвестора заключаются в ответе на вопрос: «будут ли расти финансовые показатели?», не пытаясь, при этом, определить дно по графику.

Вот весьма интересный пример.

О чем не расскажут новичку Тинькофф.Инвестиции?

Можно ли найти на таком графике «дно»? Сильно сомневаюсь.

Теперь перейдем к суровой, но честной статистике инвестиционных счетов по состоянию на август 2019 года.

О чем не расскажут новичку Тинькофф.Инвестиции?

Иными словами, общее число клиентов составляет 3,1 млн (по количеству счетов) счетов и лишь 247,8 тысяч клиентов, совершающих хотя бы одну сделку в месяц! Это говорит о том, что за первые 9 месяцев (а это средняя жизнь брокерского счета), около 90 – 92% новичков закроют свои счета, вероятнее всего, с убытком, и будут проклинать тот день, когда они решили инвестировать свои средства в эти непонятные для него ценные бумаги.

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

  1. Продайте все акции, купите облигации с коротким сроком погашения от 6 месяцев до 1-ого года. Причина простая – вы не обладаете необходимыми навыками анализа финансовой отчетности, а значит, пока не в состоянии отличить хорошую компанию от плохой.
  2. Начните читать специальную литературу. В первую очередь я бы обратил внимания на такие книги, как:
  • «Заметки в инвестировании» от УК Арсагера.
  • «Маленькая книга победителей рынка акций», Джоэл Гринблатт.
  • «Финансовая отчетность для руководителей и начинающих специалистов», А. Герасименко
  • «Метод Питера Линча», П. Линч
  • Любые книги Уоррена Баффета.

Список можно продолжать, но для старта этого более чем достаточно.

3. Подпишитесь на группы ребят, которые разбирают финансовые показатели компаний. Определите и запоминайте те данные и факты, на которые обращают внимание опытные инвесторы при анализе финансовых показателей. Вот некоторые из них:

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

Напоследок я бы хотел дать вам несколько советов.

  1. Никого не слушайте, нет никакой гарантии, что советующий знает больше вас.
  2. Никогда не инвестируйте в компанию, если не знаете ее финансовое состояние. Именно предприятия с плохим финансовым положением ведут к рекордным убыткам.
  3. Ограничте свой круг анализа акциями из списка МосБиржи.
  4. Настоятельно не рекомендую инвестировать новичкам в американские активы, так как в большинстве случаев их акции более волатильные, чем наши.
  5. На начальных этапах забудьте про плечи и покупайте только на свои деньги.
  6. Только на свои. Слышите? Никаких плечей! Я серьезно!

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

P/S. Данную статью писал для ребят из Тинькофф.Инвестиции, но редакция отказалась ее репостить в группу.

О чем не расскажут новичку Тинькофф.Инвестиции?

Моя группа вк: vk.com/club154619375
Телеграм канал: t.me/dnevnik_investora56

Почему заблокировали мои акции?

Часть торгуемых на СПБ Бирже ценных бумаг хранятся в НРД. По решению Банка России СПБ Биржа и брокеры временно заблокировали некоторые иностранные бумаги на счетах части клиентов. Ограничения касаются ценных бумаг, заблокированных Euroclear Bank S.A./N.V., учет и хранение которых осуществляется на счетах расчетного депозитария СПБ Биржи — ПАО «Бест Эффортс Банк» — в НКО АО «Национальный расчетный депозитарий».

Какие бумаги у меня заблокированы и на какой объем?

Заблокированная часть портфеля автоматически отразится в приложении Тинькофф Инвестиции во вторник, 31 мая — первый торговый день СПБ Биржи на этой неделе.
Порядок блокировки ценных бумаг определен предписанием ЦБ. Список ценных бумаг и необходимый объем их блокировки предоставлен СПб Биржей. Решение затронуло около 14% всего объема бумаг, торгующихся на СПб Бирже и находящихся на хранении в НКО АО НРД.

Почему у меня заблокировано не 14% бумаг, а все или какая-то другая доля?

Решение о блокировке коснулось около 14% объема бумаг, торгующихся на СПБ Бирже и находящихся на хранении в НКО АО НРД. При этом каких-то бумаг блокировка не коснулась вообще, а по каким-то бумагам заблокировано 100% бумаг на счетах клиентов. Это означает, что первые бумаги не хранились в НРД, а вторые в полном объеме учитывались на счетах в НРД.

Когда бумаги разблокируют? Что Брокер делает для урегулирования?

По информации, размещенной на сайте Национального расчетного депозитария, Euroclear ожидает разъяснений касательно применения введенных ограничительных мер по отношению к счетам российских резидентов от европейских регуляторов — МинФина Бельгии и Еврокомиссии. Несмотря на блокировку, клиенты остаются собственниками заблокированных активов, бумаги продолжают храниться и учитываться на счетах депо.
Мы ведем работу для того, чтобы как можно скорее возобновить доступ к торговым операциям по данным ценным бумагам. Тинькофф привлек юридические компании для проведения необходимой работы по защите прав и интересов своих клиентов.

Почему эти акции хранились именно в НРД?

НРД имеет статус единственного центрального депозитария в стране и блокировка операций по счетам НРД в иностранных депозитариях (в данном случае Euroclear) произошла по независящим от НРД обстоятельствам в одностороннем порядке со стороны Euroclear.

Бумаги заблокированы только в Тинькофф?

Нет. По решению Банка России СПБ Биржа и все брокеры, предоставляющие доступ к торгам на СПб Бирже, временно заблокировали некоторые иностранные бумаги на счетах части своих клиентов. Ограничения касаются ценных бумаг, заблокированных Euroclear, учет и хранение которых осуществляется на счетах расчетного депозитария СПБ Биржи — ПАО «Бест Эффортс Банк» — в НКО АО НРД. Места хранения конкретной ценной бумаги могут быть отличаться у разных брокеров.

Будет ли расширен список заблокированных бумаг? Безопасно ли покупать дальше бумаги на СПБ?

В результате решения, принятого Банком России, состоялось полное разделение иностранных ценных бумаг на те, которые могут свободно торговаться, и те, которые учитываются в НРД и торговаться не могут.
Торговые операции по всем 1650 эмитентам на СПб Бирже продолжаются без изменений, при этом некоторые клиенты временно не могут продать заблокированную часть бумаг из своего портфеля, которая находится на хранении в НКО АО НРД.

Могу ли я перевести эти бумаги другому брокеру/в другой депозитарий?

Да, все права собственности на эти ценные бумаги остаются за вами, вы можете перевести ценные бумаги в другой депозитарий внутри НРД. Там эти бумаги также будут заблокированы.

Буду ли я получать дивиденды?

Все доходы по ценным бумагам, учитываемым на счете НРД в Euroclear, также блокируются в Euroclear, поэтому получение дивидендов по таким ценным бумагам невозможно до решения обозначенной проблемы. Они копятся на счетах НРД в Euroclear.

Будут ли учитываться заблокированные бумаги для маржинальной торговли?

Нет. Заблокированные ценные бумаги Брокер не может принимать в обеспечение при маржинальной торговле, так как в случае снижения их стоимости их невозможно продать. Если вы пользовались услугой маржинальной торговли и после исключения блокированных ценных бумаг из ликвидного портфеля его стоимость опустилась ниже минимальной маржи, то вам необходимо пополнить свой счет или сократить часть позиций.

Если заблокированные ценные бумаги на ИИС могу ли я его закрыть и как?

Для закрытия ИИС блокированные ценные бумаги необходимо будет перевести на обычный брокерский счет.

Ценные бумаги и другие финансовые инструменты, упомянутые в данном обзоре, приведены исключительно в информационных целях; обзор не является инвестиционной идеей, советом, рекомендацией, предложением купить или продать ценные бумаги и другие финансовые инструменты. Уведомляем Вас о том, что при приобретении и владении иностранными ценными бумагами вы можете столкнуться с рисками депозитарной инфраструктуры, связанными с геополитической ситуацией.

Источник https://habr.com/ru/post/589865/

Источник https://smart-lab.ru/blog/560963.php

Источник https://www.tinkoff.ru/invest/social/profile/Tinkoff_Investments/bd08e8dd-c2a2-4c2a-8dc5-4dff265252e4/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *