Таблица элементарных инвестиций тинькофф акция
Что недоговаривают Тинькофф Инвестиции. Вытаскиваем все данные по портфелю через API в большую таблицу Excel
Однако, когда инвестиции приобретают серьёзный характер, инвестору нужны точные и подробные данные по его портфелю, в частности, для оценки эффективности инвестирования. И вот здесь с приложением возникают неоднозначности.
Описание проблемы
Рассмотрю на примере своего портфеля (не ИИС) в мобильном приложении. (С даты публикации приложение может обновиться).
На главном экране видим ободряющие значения:
У меня здесь сразу возникают вопросы:
Каким образом была посчитана эта зелёная сумма и 12,21%? Причём, несколько дней назад у меня было что-то около +17%, потом я зафиксировал одну бумагу с профитом, стоимость портфеля почти не изменилась, а вот этот зелёный «общий процент» сразу упал до 12,21.
Мой портфель почти полностью в иностранных бумагах и USD. Каким образом это было переведено в рубли: по курсу ЦБ или по рынку?
Сколько от этой суммы у меня реально останется после уплаты налогов и комиссий, если я продам весь портфель и выведу деньги?
Заходим в раздел Портфельная аналитика, и находим там уже другие значения:
Почему на главной странице было +955 644, а здесь почти на 2 миллиона больше?
Кстати, здесь уже можно посмотреть результаты за год, приложение выводит сумму, но не процент.
Пока всё выглядит весьма оптимистично, открываю профиль в Пульсе.
Вот это результат! Посмотрим по-подробнее.
Здесь приведены результаты по месяцам. За 4 месяца текущего года +6,67%, а если посмотреть на 2020 год, там у меня +31,41%. Для сравнения, если не ошибаюсь, S&P 500 за 2020 год вырос на 16,26%. Не совсем понимаю, как я мог его так обогнать, если только дело не в курсовой разнице. В любом случае, это не вяжется с обозначенными на главном экране +12,21% за всё время, т.к. 2019 и 2018 года тоже зелёные. В общем, не понятно, как и в какой валюте они считают, надо разбираться.
Поиск решения
Чтобы внести больше ясности в процесс инвестирования, сделать этот процесс более осознанным, мне нужно:
Разобраться, как вычисляются значения, отображаемые в мобильном приложении
Выяснить реальные показатели эффективности портфеля
Узнать общие суммы налога и комиссий, которые я уплатил за всё время
Вычислить сумму, которую я могу вывести со счёта, после уплаты налогов при продаже портфеля
Это особенно актуально в свете того, что портфель у меня, в основном, валютный, а налог считается в рублях относительно официального курса на день покупки актива. Поскольку я начал покупать бумаги несколько лет назад, когда USD был гораздо дешевле, налог при фиксации прибыли может оказаться огромным сюрпризом и съесть существенную часть отображаемой на главном экране суммы.
Собрать все возможные данные по портфелю и визуализировать их в удобной для меня форме, такой как таблица Excel, с которой я смогу дальше работать средствами самого Excel или Google Sheets.
Есть вариант пытать персонального менеджера и службу поддержки, но переписка с ними бывает утомительна, и они не помогут с визуализацией данных. Лучше написать программное средство, чтобы формировать результат в удобной для меня форме и делать это автоматически.
Проблема только в том, что я не программист и с банковскими API раньше не работал. Видимо, пришла пора попробовать.
Знакомство с API
Находим официальную страницу Open API от Тинькофф:
На странице предлагаются SDK: Java, C#, Go, NodeJS.
Приведены и неофициальные: Python @daxartio,Python @Awethon, Python @Fatal1ty, PHP, Ruby.
Ничего из того, что я умею. В основном, я делал DIY проекты на Arduino-подобных контроллерах с WiFi, проектировал и заказывал для своих электронных устройств печатные платы, делал небольшие одностраничные WEB-интерфейсы и телеграм-боты для взаимодействия с этими устройствами. Т.е., в основном я работал с железом и писал прошивки на Arduino Wiring (на основе C++).
Из представленного списка мне больше всего импонировал Python, я писал на нём что-то на уровне print(‘Hello World’) и давно хотел познакомиться поглубже. Поэтому, я решил, что буду делать проект с Тинькофф API на Python.
Это сильно помогло мне продвинуться на начальном этапе: понять, как получать данные с API.
Если коротко, работает это так:
Устанавливаем и настраиваем его на своей машине
Устанавливаем через PIP библиотеку tinvest
Открываем редактор кода, например Idle, импортируем установленную библиотеку:
Создаём объект для дальнейшей работы с API:
В my_token выше подставлем свой API key, который получаем в личном кабинете брокера.
Я не стал пробовать в демо-счёте, сразу указал API своего реального портфеля.
Создаём объект с позициями портфеля:
positions = client.get_portfolio() Это сложный массив, который содержит информацию по каждой бумаге.
Создаём объект с операциями. Здесь указывается дата начала инвестирования и текущая дата в определённом формате.
operations = client.get_operations(from_=account_data[‘start_date’], to=account_data[‘now_date’])
Получаем рыночные курсы валют (понадобятся для дальнейших расчётов):
course_usd = client.get_market_orderbook(figi=’BBG0013HGFT4′, depth=20
course_eur = client.get_market_orderbook(figi=’BBG0013HJJ31′, depth=20)
И чтобы в нашей будущей таблице появились не только бумаги, но и валюты кэшем, запросим и их тоже:
for pos in positions.payload.positions:
ecxelFileName = ‘tinkoffReport_’ + today + ‘.xlsx’
Так, на этом этапе, у меня получилась небольшая программка, создающая таблицу с базовой информацией по бумагам, получаемой по API, а именно:
Наименование, тикер, валюта бумаги, количество бумаг, средняя цена покупки, ожидаемая выручка.
Из имеющихся данных простой арифметикой высчитывались: текущая рыночная цена одного лота и суммарная стоимость всей позиции.
Писалось всё в Idle, выглядело как-то так: (НЕ ПОВТОРЯТЬ!)
НЕ ПОВТОРЯТЬ
Подглядывая в проекты других разработчиков на Python, я тогда ещё мало что понимал, но было очевидным, что их проекты пишутся совсем по-другому, и мне придётся менять структуру в корне.
Я решил переписать всё заново, как положено, и в более удобной среде разработки.
Знакомство с Python
В качестве более продвинутой среды, ребята с работы посоветовали PyCharm.
С ним дело пошло гораздо продуктивнее, среда автоматически дрессирует писать в соответствии с PEP8 (стандарт оформления кода).
Общие знания по Python я брал из своего любимого справочника: https://www.w3schools.com/
Просто прошерстил все его статьи по питону сверху вниз, и потом периодически обращался за подробностями.
Вообще, чисто субъективно, мне этот язык сразу понравился. Порадовала краткость путей решения задач. Сложилось впечатление, что если просто нужно, чтобы что-то заработало, оно здесь заработает в два счёта, без лишних заморочек. Гуглится всё элементарно, по крайней мере, на моём уровне сложности. Чаще всего, решения находил на https://stackoverflow.com/
Структура программы
Структура таблицы
— Позиции
В левой части таблицы выводится информация по текущему портфелю:
Параметры (базовые, из API):
Параметры, посчитанные на основе базовых:
Сразу после блока с рыночными ценами, располагается самый сложный, с точки зрения расчётов, блок: стоимость активов по ЦБ и расчёт ожидаемого налога при продаже.
Сложность в том, что бумага могла приобретаться частями, в разные дни, а могла частично продаваться. Здесь действует такое правило, что первой продаётся та бумага, которая первой покупалась.
Чтобы решить эту задачу, я придумал сделать для каждой позиции упорядоченный список (массив). Программа пробегает по всем операциям покупки, находя операции с figi данной бумаги, и каждая покупка добавляет в список количество ячеек, соответствующее количеству приобретённых бумаг. Каждая ячейка содержит значение, соответствующее цене покупки в рублях по курсу ЦБ на дату операции. А каждая продажа удаляет нужное количество ячеек из начала списка. Затем считается среднее значение по оставшимся ячейкам, так получается средняя цена покупки в рублях по курсу ЦБ.
Был небольшой подвох, связанный с тем, что в списке операций от Tinkoff API есть не только выполненные, но и нулевые операции, которые пришлось отсеивать.
Чтобы API ЦБ РФ не решил, что мы его ддосим, я поставил небольшую задержку. В итоге, всё считается как надо, но этот этап обрабатывается ощутимо медленно. Чтобы обработались мои 15 позиций и 430 операций, приходится ждать около 1 минуты.
Наверняка это можно как-то оптимизировать, но, в принципе, мы не торопимся.
Разобравшись с самым сложным этапом, можно составить следующие колоночки:
— Операции
Справа от раздела с позициями, выводим колоночки со всем типами операций, которые может нам предоставить Tinkoff API. Их много, на один скриншот не влезают, но на большом мониторе помещается:
Под каждой колоночкой считается сумма. Это как раз то, что нам не покажет брокер. И здесь есть кое-что интересное.
Теперь мы можем сравнить сумму внесённых средств и сумму выведенных (в переводе на рубли по курсу ЦБ)
Ещё можно посчитать сумму всех купонов и дивидендов, а также, внимание:
все комиссии, уплаченные брокеру, и все налоги, удержанные брокером!
Итак, вот мы получили и разложили перед глазами все имеющиеся данные.
Теперь можно сделать из них выводы.
— Аналитика
Я впихнул этот маленький раздел прямо под таблицей с позициями.
Кстати, что касается дат, я не учитывал часовые пояса, и это может где-то выплыть.
Кстати, из-за появления в портфеле позиции «Сегежа» в первый день после IPO программа не могла выполниться и выдавала ошибку. На следующий день по бумаге с API стали приходить нормальные данные и программа снова заработала.
Если что, форма W8BEN, у меня, на данный момент, по некоторым причинам, не действует.
Итого, в российский бюджет я уже уплатил 117 631 руб, и, как было посчитано выше, мне предстоит уплатить ещё порядка 207К, если я зафиксирую портфель сейчас.
В общем-то, это пока всё, что я сделал.
Заключение
Зато, мы разобрались, откуда получаются значения, приводимые в клиентском приложении.
Также, мы узнали суммы комиссий и налогов, как уплаченные, так и ожидаемые.
Нашли реальную сумму, которую сможем вывести со счёта при фиксации портфеля, после удержания налогов.
А главное: получили возможность одним кликом собирать все данные по портфелю со всеми операциями в одну большую таблицу Excel, с которой дальше можем работать средствами самого Excel, можем экспортировать в Google Sheets, или просто сохранить как архив для анализа в будущем.
Это мой первый проект на Python и первая публикация на Хабре.
Надеюсь, информация окажется полезной для улучшения взаимодействия с приложениями Тинькофф, работы с API и разработки подобных программ, а также поспособствует более осознанному инвестированию, а следовательно, повысит ваше благосостояние. Благодарю, что дочитали до конца.
Таблица для учета инвестиций
В первые месяцы инвестирования — начало 2020 года — я просматривал разные сервисы по учёту инвестиций. Некоторые нравились, некоторые — не очень. Одновременно с этим я вёл учёт расходов семьи. И заметил, что довольно много небольших расходов в разных категориях. Добавлять ещё одну категорию — оплата сервиса учёта — совсем не хотелось. Вроде копейки, но на эти «копейки» можно купить какую-нибудь акцию. А за год — 12 акций. Если каждый год такие 12 акций будут приносить прибыль, то почему я должен тратить эту сумму на сделанные кем-то таблички?!
Несмотря на то, что я придерживаюсь долгосрочных инвестиций, в табличку заглядываю несколько раз в день — просто так. Как минимум по утрам я вношу данные по доходности (об этом будет ниже), а в середине дня просто смотрю на цифры.
Разобью функции по вкладкам.
Портфель. У меня открыто два счёта у одного брокера — обычный брокерский и ИИС. Поэтому в первой вкладке два портфеля. Цены подтягиваются с сайта Мосбиржи, раньше пользовался функцией Googlefinance. В самом низу вкладки подсчитаны суммы по категориям эмитентов, чтобы понимать диверсифицированность суммарного портфеля. На момент написания статьи в лидерах категорий у меня «нефть и газ», «химия» и «энергетика». Стоимость активов подтягивается сама из формулы суммы с двух счетов. Я заполняю только среднюю цену входа, беру из приложения, и количество акций.
Во вкладке «Вложения 2021» я ежедневно обновляю данные по доходности портфеля, при вычислении её стандартной формулой «сумма вложений/текущую стоимость портфеля». По этим данным строится график.
«Составной портфель». Поскольку на двух моих счетах некоторые эмитенты дублируются, однажды я решил совместить их в одну вкладку. Здесь суммируется общая стоимость каждого эмитента, его доля в суммарном портфеле и сумма полученных дивидендов. Сюда же добавил столбец со значением, насколько процентов увеличились поступления от каждого эмитента по сравнению с прошлым годом. Понимаю, что каждый год они будут увеличиваться в любом случае, так как регулярно идет увеличение количества акций каждого из эмитентов. Посмотрим, может быть вскоре откажусь от этого столбца. Ниже в той же вкладке обозначена диверсификация активов по странам. У меня нет строгой стратегии, сколько процентов от портфеля должны составлять акции той или иной страны, но со временем более менее я пришёл к действующим цифрам.
«Дивиденды» — моя любимая вкладка. Очень приятно наблюдать за их увеличением, в том числе средним значением за последние 12 месяцев. На момент написания этого текста мой пассивный доход в среднем составляет более 3000 рублей в месяц. Даже подсчитана средняя сумма дивидендов за всё время инвестирования — 22 месяца, включая первые месяцы с полным отсутствием дивидендных выплат.
XIRR — более справедливый, на мой взгляд, способ оценки доходности. В данный момент он практически совпадает с данными доходности по формуле из вкладки «Портфель».
Идеи. Название говорит само за себя, можно и без пояснений.
Сравнение. По этой таблице я выбираю наиболее привлекательные акции, голосуя за них по разным критериям. Для иностранных акций данные нахожу на Finasquare, для российских — на Смартлабе. Наиболее привлекательному показателю ставлю единичку, наименее привлекательному — 0, иногда 0,5. И затем смотрю, какая компания набрала больше баллов.
План. После первого года инвестирования стало интересно, когда при текущих условиях я приду к сумме в 10 000 000 рублей. Тут можно играться с процентной ставкой и суммами ежегодных вложений.
Вложения (все). За неполные 2 года инвестиций были разные месяцы по вложениям. Поэтому здесь просто строится интересный график по сумме всех-всех-всех пополнений. И автоматически появляется линия тренда, как и в дивидендной вкладке, что позволяет оценить динамику вложений и среднюю сумму ежемесячных вложений за весь срок инвестирования.
В идеале было бы интересно из этой таблицы создать более презентабельный вид при помощи какого-нибудь Python или другого языка. Но поскольку таблица создавалась исключительно для себя, да и знаний у меня на это нет, она остаётся такой, какая есть в данный момент. Иногда я что-то в неё добавляю, иногда убираю. Посмотрим, как она будет выглядеть через несколько лет.
Эксельки. Здесь хвалятся своими наработками в «Гугл-таблицах»
Тинькофф Инвестиции, в чем подвох
Тинькофф Инвестиции — профессиональный участник рынка ценных бумаг, который сегодня занимает все новые позиции на российском фондовом рынке. У этой компании есть свой собственный подход к работе с клиентами. Попробуем разобраться, кому могут быть интересны услуги Тинькофф Инвестиции, и в чем подвох, как выглядит сервис на самом деле.
Как работают инвестиции в Тинькофф
Тинькофф Инвестиции — сервис, который разработан для предоставления клиентам максимально простого доступа к сделкам с валютами, акциями, облигациями и другими ценными бумагами на Московской бирже.
При этом особенность Тинькофф заключается в том, что эта организация не имеет широкой сети офисов, как другие банки. Клиент оформляет заявку и получает все, что требуется, с доставкой на дом или в офис.
Изначально требуется перейти в хранилище мобильных приложений PlayMarket или AppStore, найти Тинькофф Инвестиции, установить программу бесплатно в свой смартфон и запустить ее. Далее клиенту будет предложено подтвердить свой номер телефона при помощи кода через SMS, а затем заполнить анкету.
Далее согласовывается время, приезжает представитель банка, который привозит пакет документов на подпись.
Единожды подписав договор, пользователь получает дебетовую карту с рядом специальных «фишек», таких, как повышенный кэшбэк, проценты на остатки при соблюдении определенных условий, и прочее. Логическим продолжением сервиса стало и появление системы Тинькофф Инвестиции.
Уже существующий клиент может просто подписаться на дополнительную услугу, подтвердить свое решение отправкой SMS в системе клиент-банк или в специальном приложении для телефона, и счет открыт.
Для тех, кто впервые решает работать с Тинькофф, процесс предельно похож на открытие счета. Более того, ему даже и открывают этот самый счет после визита представителя, и выдают обычную дебетовую карту Tinkoff Black.
Отказаться от нее невозможно, потому что именно на этот пластик происходит вывод средств с брокерского счета в дальнейшем.
Особенности торговли через Тинькофф Инвестиции
В отличие от других брокеров, специалисты Тинькофф Инвестиции пошли по своему особенному пути и написали два собственных приложения для торговли ценными бумагами, одно для web, а второе для мобильных устройств. Оба они имеют свои особенности.
Веб приложение устанавливать не нужно, в него можно перейти со страницы Тинькофф. Действует двойная система аутентификации, вход подтверждается не только паролем, но и кодом, полученным через SMS. Торговый терминал выглядит вполне качественно, удобен и даже по многим параметрам производит лучшее впечатление, чем общепринятая программа Quick. Здесь есть все, от котировок в реальном времени с графиками и «стаканом» заявок на покупку и продажу с объемами, до новостей, инвестиционных идей, прогнозов и социальной сети трейдеров в одном месте.
Приложение для мобильных телефонов, работающих на IOS или Android, конечно, попроще, чем для стационарного компьютера, но вполне достойные его дополнения.
Тарифы Тинькофф Инвестиции
За все хорошее, за доставку договора на дом, карту в подарок, за особый специально для клиентов написанный торговый терминал и приложение для телефонов, в общем, за все поздно или рано приходится платить, причем клиенту.
Тарифы системы Тинькофф Инвестиции в общем виде выглядят так
0.25-4% в зависимости от рынка
0 портфель от 3 млн рублей;
990 руб. от 1 до 3 млн;
Базовый тарифный план с комиссией в размере 0.3% от сделки значительно выше, чем у конкурентов Тинькофф, если сравнивать брокера со Сбербанком, ВТБ и другими. Не говоря уже о брокерах-дискаунтерах, изначально рассчитанных на массовых пользователей, таких, как Финам.
Базовым тарифом, по утверждению самих представителей Тинькофф, выгодно пользоваться при объеме сделок до 116 тысяч за месяц. При превышении этой суммы имеет смысл переходить на тариф трейдер, по которому комиссия 0.05% от сделки, но есть ежемесячный обязательный платеж в размере 290 рублей. Чтобы его не платить, надо совершить сделок на 5 млн рублей за прошлый месяц или иметь портфель общей стоимостью не менее 2 млн рублей.
Тинькофф утверждает, что его ставки сопоставимы с платежами другим брокерам. Однако на самом деле, за 0.5% в том же Сбербанке можно получить уже доверительное управление, а это совсем другая услуга.
Вывод денег из Тинькофф Инвестиции считается бесплатным, но на карту самого банка. Если учитывать, что у кредитной организации нет отделений, где можно было бы снять без процентов, то клиентам приходится общаться с банками-партнерами, которые на все выставляют свои собственные условия и ограничения.
Плюсы и минусы Тинькофф Инвестиции
Среди плюсов можно отметить
Однако, помимо достоинств, у Тинькофф Инвестиции есть и свои недостатки.
Акции в подарок за опрос в Тинькофф Инвестиции
⚡ НОВАЯ АКЦИЯ В ТИНЬКОФФ ИНВЕСТИЦИИ – за прохождение опроса дарят 3 акции стоимостью до 30 000 ₽.
Срок этой акции – с 01 по 30 сентября 2021г.
❗ Акция только для новых клиентов.
Порядок и условия участия в Акции
1. Заполните заявку онлайн на открытие брокерского счета (открытие и обслуживание бесплатно)
2. Пройдите Опрос в Мобильном приложении (всего 9 вопросов)
3. На основании ответов робот-советник подберет инвестиционный портфель
4. В течение 90 дней сформируйте портфель на сумму, указанную в 9 вопросе. Вы можете воспользоваться рекомендациями робота-советника или самостоятельно собрать портфель.
После выполнения этих условий вы получите от брокера Тинькофф три бонуса:
◽ за ответы на первые три вопроса – подарочная акция стоимостью до 1000 рублей
◽ за ответы на 4,5 и 6 вопросы – подарочная акция стоимостью до 1000 рублей
◽ третий бонус зависит от суммы, определенной в 9 вопросе, после ответа на 7,8 и 9 вопросы анкеты, но не более 30 000 рублей.
Как продать подарочные акции
У всех подарочных акций ограниченный срок действия – 90 дней. В течение этого срока акции можно продать и получить деньги на карту Тинькофф банка, или же на вырученную сумму можно купить другие активы.
Есть еще одно условие, при выполнении которого вы сможете продать подарочные акции:
✅ Необходимо, чтобы на вашем брокерском счету было куплено ценных бумаг на сумму от 20 000 рублей и их не продавать в течении 30 дней!
Инвестируйте вместе с Тинькофф, получите 30 дней без комиссии
за сделки купли/продажи с акциями, облигациями, ETF и валютой, а также без платы за обслуживание счета на тарифе «Инвестор».
Обслуживание от 0 ₽ в месяц
Комиссия от 0,025% за любые сделки. Открытие счета, ввод и вывод денег, услуги депозитария — бесплатно
Мгновенное пополнение и вывод
24/7 — даже сразу после сделки. Пополняйте брокерский счет с карт любых банков