API v2 Тиньков Инвестиции + Python 💥 getPortfolio - как получить активы на брокерском счету | ч.2

preview_player
Показать описание
Метод getPortfolio отдает нам через API v2 Тинькофф Инвестиции список активов на брокерском счету (акции, облигации, фонды, валюта) и базовую аналитику (ожидаемая прибыль, средняя цена покупки бумаги). Не нужно путать get_portfolio с новым методом второй версии API get_positions.
~~
~~
Исходный код из видео
🤑 🔥 Хочешь поддержать беднеющего на инвестициях блоггера
Весь плейлист по API v2 Тиньков Инвестиции
~~
👽 Таймкоды
00:00 О чем в сегодняшней серии
03:02 Видео начинается ЗДЕСЬ
04:29 Сравниваю ответ get_positions и get_portfolio
05:40 Немного про GetBrokerReport (может нам и не нужен getPortfolio)
09:00 О типах MoneyValue и Quotation
13:58 Что за average_position_price, много кулькулятора!
17:06 Как посчитать сколько денег я получу, если продам всё (для расчета налогов и комиссий)
21:19 Почти полностью готовый код

.
.
.
#tinkoffinvest #python #инвестиции
Рекомендации по теме
Комментарии
Автор

Огромное спасибо! Никто так круто про API ТИ не рассказывал, контент отличный!

arkabaev
Автор

Досмотрел только что второе видео из этого плейлиста, всё очень подробно и интересно. Решил посмотреть, что там еще за видосы на канале есть... Если коротко - искал медь, а нашел золото)☺

mrsalem
Автор

Дополнение
также в ответе get_portfolio в PortfolioPosition появились новые поля, в т.ч. current_price и заниматься расчетами цены продажи от expected_yield теперь не нужно. Для валют на счете average_position_price возвращает нули, но, надеюсь, это баг и его поправят. Но кбн деньги сейчас считать лучше от current_price .

AzzraelCode
Автор

Спасибо, классные уроки!!! Единственное, налог занизил в 10 раз)) Там должно быть не 0.013, а 0.13. Также при вычислении налога нужно вычесть комиссии за покупку и комиссии за продажу.

grishasidorov
Автор

Привет. Уроки классные. Помогли разобраться с API Тинькофф. Возникла проблема с облигациями:
- Я могу получить стоимость своего портфеля, с НКД, разницей в + или - текущей стоимости и цене покупки. Т.е. можно посчитать в принципе все от и до. Но по текущим моим бумагам.
Но когда я запрашиваю bond_by или bond, пытаясь оценить привлекательность облигации, то нигде нет информации по текущей стоимости. Перерыл все API. Но нигде не смог найти такого параметра, чтобы вывести для себя - номинал / текущая цена и не могу понять есть ли это вообще))) Т.е. там есть все: НКД, график начислений НКД, кол-во выплат в год и т.д. Но нигде нет текущей стоимости облигации.

Подскажи пожалуйста получалось ли у тебя или может тут в комментах еще кто есть, кто задавался такой де задачей?
ну либо придется seleniumом дергать весь список))

ser.makarov
Автор

Как получить лотность конкретного инструмента (минимальное количество акций для операции)?

frmRU
Автор

Денис, привет! Спасибо за видео, хорошее. И прошлое и это, буду смотреть ещё. Не понял как ты DataFrame готовишь и такое ощущение, что в репозитории более навороченный код, чем в видео. Если где-то это дело с DataFrame (преобразование в dict) как-то отдельно разбирается в другом твоём видео, то направь, пожалуйста (касательно данной темы с тинькофф АПИ).

volsof
Автор

что такое r: PositionsResponce = ... первый раз такую конструкцию вижу (я ламер). Пишу также в оболочке VCCode - ругается на таукю конструкцию, но выполняет

TheUncleCarlo
Автор

Отличное видео, спасибо! Есть пара вопросов. Почему для вычисления налога вы умножаете на 0, 013? Ведь это получается 1, 3%, а считать надо 13%. Также в коде не учтен тот факт, что если акцию держать более 3 лет, то налог платить не надо.

sergeysergeenkov
Автор

Спасибо. Пока очень интересно, но крайние 10мин вообще непонятны, дело не в вас, а в моей умной голове)

makedatauseful
Автор

У меня 2 счета. Обычный брокерский и ИИС. Все получилось сделать по ним как у вас в видео. Но по каждому отдельно.
Не подскажите, как правильно объединить два полученных фрейма в один с учетом, что многие бумаги есть и там и там (одинаковый figi).

Gaunteros
Автор

Что-то при переходе по ссылке на телеграм бот пишет, что такое имя не найдено, может поменялся или ссылка кривая?

dmitriyelkin
Автор

Есть небольшая неточность, комиссию с нкд брокер не удерживает

ВладимирШилов-чю
Автор

Ссылка на чат в телеграм НЕ РАБОТАЕТ. Чат переехал или совсем закрылся? о_0

Yaroslav_A.
Автор

quantity в quataton перевели, можно просто также его в cast_money() запихнуть и все

murshig
Автор

Не ясно как связаны да файла: app.py и __init__.py
Запускаете Init, но срабатывает print из app: print("** Hola Hey, Azzrael Code YT subs!!!\n")
остановился на 4 минуте, дальше не могу. при запуске пишет ошибку: Unresolved reference 'PositionResponse'

дополню: отправил сообщение - увидел что написал не правильно. буква S выпала. PositionResponse.
но сильно не помогло. отработало без ошибок, но ничего не вернуло. просто Process finished with exit code 0

Gaunteros