Перейти к содержанию

Сервис получения информации о портфеле по конкретному счёту

Получить список операций по счёту

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

Для этого можно использовать два метода:

getOperationsByCursor — более предпочтительный для использования. Метод возвращает информацию обо всех операциях, в том числе отменённых, поддерживает пагинацию, расширенную фильтрацию и обладает всеми преимуществами метода getOperations.

Для вызова методов во входных параметрах достаточно указать account_ID.

Важно
Метод getOperations:

  • Не поддерживает опционы. Для получения информации по операциям с опционами используйте метод getOperationsByCursor.
  • Возвращает отменённые операции — параметр state. Учитывайте это в алгоритме работы.
  • Возвращает только последнюю тысячу операций.

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

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

При работе учитывайте особенности методов.

Получить портфолио

Чтобы торговый робот получал текущее состояние портфеля по счёту, используйте метод getPortfolio.

Отличие метода от getPositions в том, что он возвращает статистическую информацию по портфелю — абсолютные и относительные доходности, текущую стоимость активов и другое.

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

Важно
Сейчас запросить портфолио по счёту Инвесткопилки нельзя — type: ACCOUNT_TYPE_INVEST_BOX.

Особенности:

  • В методе есть булев параметр blocked — он принимает значение true, если инструмент заблокирован депозитарием.

  • Значения средних цен покупки инструментов рассчитываются асинхронно. Возможна задержка в пересчёте до одной секунды. Параметры:

    • average_position_price_pt;
    • average_position_price — средневзвешенная цена позиции;
    • average_position_price_fifo — средняя цена позиции по методу FIFO.

Подробнее о методах расчёта с примерами

Получить список позиций портфеля по счёту

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

В методе также возвращаются:

  • Тип инструмента для списка ценно-бумажных позиций портфеля — параметр instrument_type.
  • Булев параметр exchange_blocked — принимает значение true, если инструмент заблокирован депозитарием.
  • Массив опционов в портфеле.

Важно
Метод не возвращает объём средств, заблокированных под гарантийное обеспечение фьючерсов. Для получения этой информации используйте метод getWithdrawLimits.

Получить доступный остаток для вывода денежных средств

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

Получить отчёты

В Tinkoff Invest API можно получать различные отчёты. Например, брокерский отчёт или справку о доходах за пределами РФ.

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

Запрос справки о доходах за пределами РФ работает корректно, если верхний интервал запрашиваемых дат не позднее, чем 2 рабочих дня от текущей даты.

Стрим позиций и доходности портфеля

gRPC server-side stream PortfolioStream предназначен для получения информации об изменении портфеля по факту совершения сделок.

Стрим возвращает статистическую информацию по портфелю — абсолютные и относительные доходности, текущую стоимость активов и другие.

В валюте инструмента возвращаются:

  • средневзвешенная цена позиции,
  • текущая рассчитанная доходность,
  • текущая цена инструмента,
  • средняя цена лота в позиции по методу FIFO.

Для фьючерсов cредняя цена лота в позиции возвращает количество в пунктах.

Стрим изменения позиций портфеля

gRPC server-side stream PositionsStream предназначен для получения информации по изменению позиций портфеля.

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

В качестве сообщений стрима приходят изменения позиций, объекты money, securities, futures, options и дата и время операции, изменившие позицию.

Торговые статусы инструментов и расписание торгов

Торговые статусы инструментов и расписание торгов

Также рекомендуем смотреть актуальную информацию по режимам и статусам торгов на сайтах Московской биржи и СПБ биржи.