Токен для песочницы тинькофф что это

Обновлено: 25.04.2024

Это видео открывает долгожданный сериал, где я буду разбираться как совершать сделки с помощью API Тинькофф Инвестиции и Python . Я покажу как можно покупать бумаги (акции, облигации и валюту) на питоне с помощью API. Пока я планирую работать только с песочницей, но код для работы с песочницей вполне может работать и рабочим аккаунтом с небольшими изменениями.

Сегодня я расскажу что такое Песочница и чем она отличается от реального счета. Как её инициализировать, как пополнить счет песочницы виртуальными деньгами и как совершать первые сделки.

Я предполагаю что вы посмотрели мои предыдущие видео в плейлисте Open API Тинькофф Инвестиции, поэтому рассказывать что это такое, как и пользоваться, что такое токены, какой SDK использовать, с чего вообще начать и так далее не буду — все это есть в предыдущих видео в этом плейлисте.

Код примера из видео доступен, как всегда, в репозитории в ветке с номером 1.

Что такое Песочница API Тинькофф Инвестиции

У Open API Тинькофф Инвестиции есть два окружения (режима) в котором может работать API. Одно рабочее (Production), уже знакомое нам по предыдущим видео, где у нас идет работа с реальными деньгами, где может быть несколько брокерских счетов и счет ИИС. Второе — Песочница (Sandbox), доступ к нему я могу получить только программно с помощью Open API. Это как бы игровое, тестовое окружение, где деньги виртуальные и счет мы можем пополнить в любой момент и в любой момент пересоздать счет с нуля.

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

При тестировании стратегий (не кода — с кодом все проще) обратите внимание что в Песочнице:

  • сделки исполняются моментально и в полном объеме
  • комиссии при покупке/продаже не учитываются

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

Структура проекта для видео

Как обычно, токены я вынес в отдельный пакет и добавил этот пакет в gitignore, соответственно если будете клонировать репозиторий — не забудьте создать пакет creds и наполнить его токенами.

Нужно установить зависимости в файле req.txt. Я обычно использую для этого команду pip install -r req.txt.

Вся же работа с Open API Тинькофф Инвестиции будет вестись в классе classes.Ti , конструктору которого по умолчанию передается булева переменная use_sandbox, которая в значении True означает что я работаю с Песочницей (других режимов пока и нет особо, но на будущее возможность заложил).

Инициализация Песочницы Open API Тинькофф Инвестиций

Если впервые включить режим песочницы, создать синхронного клиента с помощью SDK от daxartio и запросить состояние счетов с методом get_accounts, то в ответ я получу пустой массив. Дело в том, что перед использованием Песочницы её нужно инициализировать. То есть создать счета. А затем закинуть на эти счета виртуальные деньги. Для этого я использую методы register_sandbox_account и set_sandbox_currencies_balance.

В классе Ti я создал метод create_sandbox, где я:

  • проверяю инициализирована ли Песочница ранее,
  • если да, то удаляю её (хотя в API есть и методы по очистке Песочницы)
  • затем создаю Песочницу вновь получаю номер счета Песочницы,
  • наполняю счета Песочницы деньгами в рублях и долларах (есть ещё возможность использовать и евро, но мне не надо)

В результате метод create_sandbox возвращает номер брокерского аккаунта, который необходим для совершения сделок.

Метод для покупки бумаг с Open API Тинькофф Инвестиций

Для покупки бумаг я создал метод buy, который просто обертка над методом tinvest.MarketOrderRequest — это post запрос к API Тинькофф Инвестиций, где я указываю figi бумаги которую нужно купить и количество лотов для покупки. Как работает MarketOrderRequest я разберу в следующих видео, а сегодня он будет просто покупать доллары на бирже по «лучшей цене». А теперь давайте посмотрим как это все работает.

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


Привет! На связи команда Тинькофф Инвестиций. Мы запустили новую версию программного интерфейса для алгоритмического трейдинга. Расскажем про Tinkoff Invest API и что новенького в сервисе.

Что такое Tinkoff Invest API

Tinkoff Invest API — программный интерфейс для работы с платформой Тинькофф Инвестиций, с помощью которого клиенты Тинькофф могут автоматизировать свою работу на бирже и написать торговых роботов.

Чтобы начать работать с интерфейсом, нужны брокерский счет в Тинькофф, токен доступа и знание языка программирования. Никакого специального ПО не потребуется. У алготрейдеров есть единый API и единый брокерский счет для торгов ценными бумагами с крупнейших мировых бирж. Открывать отдельные счета для торговли на каждой из бирж не нужно. Сервис построен на современном протоколе, есть вся необходимая документация и SDK на разных языках программирования.

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

выгружать историю котировок и текущие рыночные котировки;

выставлять и отменять все виды поручений — рыночные, лимитные, стопы;

просматривать текущий портфель пользователя и историю операций;

получать время работы бирж;

загружать ставки риска инструментов;

подписываться на поток событий по исполнению сделок.

Что нового в последней версии

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

Реализовали API на производительном протоколе gRPС, в числе плюсов которого строгая типизация контрактов, поддержка версионности и автоматическая генерация клиентского программного кода на большинстве языков программирования. gRPC также поддерживает потоковую передачу данных, что позволяет в рамках одного сервиса получать рыночные котировки в режиме реального времени. Для приверженцев RESTful-API реализовали proxy-swagger, а для браузерных web-приложений — шлюз gRPC-web.

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

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

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

Увеличили качество, объемы и скорость предоставляемых рыночных котировок, а также разнообразие методов и форматы возвращаемых данных.

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

Обеспечили поддержку всех нововведений брокера, которые не были реализованы в старой версии API: мультисчета, фьючерсы, стоп-заявки.

Если вам интересно познакомиться с API поближе, залетайте на наш GitHub Invest API, смотрите документацию. А наша следующая цель — собрать витрину готовых торговых роботов на разных языках программирования, поэтому мы запустили конкурс роботов.

Tinkoff Invest Robot Contest

Ждем разработчиков с 21 апреля по 23 мая на конкурсе по разработке торгового робота для Тинькофф Инвестиций.

Задача: написать систему, которая реализует одну из торговых стратегий на бирже. Система должна работать на новом API Тинькофф Инвестиций. Ограничений по языкам нет, но предпочтительнее писать на Java, Go, Python и JavaScript.

Для участия в конкурсе зарегистрируйтесь на странице Tinkoff Invest Robot Contest и следуйте инструкциям.

Песочница API Тинькофф Инвестиции и лимитные заявки

Песочница API Тинькофф Инвестиции и лимитные заявки

Когда пару месяцев назад я выбирал брокера для погружения в пучину инвестиционного хайпа, то весь выбор для меня ( субъективно ) свелся к двум кандидатам Тинькофф Инвестиции и ВТБ Инвестиции. Одним из важнейших аргументов для меня было наличие каких либо интерфейсов как для получения данных о рынке, о сделках, об открытых позициях в аккаунте и для автоматизации торговли. Ни то что бы я какой то алготрейдер, но вот нравится мне идея щупать рынок кодом.

В бэкграунде у меня есть немного MQL4 ( MetaTrader 4 ) для Forex. Но это очень давний опыт и к нему я лет 10-15 не подходил. К сожалению на биржу MetaQuotes (вроде бы) не прорвались и это печально.

QUICK - крутой, но показался слишком замороченным уже на этапе получения доступа к нему у ВТБ. У Тиньковцев же я нашел API , на удивление лаконичное и приятное внешне. Поэтому по совокупности этой и других причин пошел к ним.

Впечатления от Open API Тинькофф Инвестиции

Понравилось. Простой Rest API, есть SDK, внятный мануал, легко получить доступы и есть Песочница где ( как я думал ) можно поиграться в Баффета. Ну что ещё нужно!

Порой, правда, появлялись странные ощущения не законченности. Например у токена доступа к РЕАЛЬНОМУ счету нет никаких возможностей ограничений доступа (хотя бы по IP), наоборот - хочешь токен -> отключай смс подтверждение сделок . Это как так в финтехе то?

Я даже наснимал почти десяток видео как там что и делал это с удовольствием (ссылок не буду ставить, у меня же тут не пиара, а нытья пост). Однако .

Здравствуй, Песочница, которая ничего не знает о рынке

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


А лимитная заявка /orders/limit-order исполнится сразу (то есть моментально, как рыночная) и исполнится по той цене что я поставлю в лимит. Мало того что как лимитная заявка этот метод, получается, не работает в принципе, так я могу купить 100500 лотов Сбера за рубль, а потом продать за 100000. Это как так то?

Справедливости ради, в доках такое поведение Песочницы, в целом, описано. Но это настолько странное поведение, что пока кодом это не увидишь осознания не придет.

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

Сложилось такое впечатление что команда пилила API и получалось хорошо, а на Песочнице бюджет кончился. Печалька!

Мне кажется что на Хабре, наверное, есть кому Песочница могла бы быть прикольным местом для лепки куличиков из виртуальных ценных бумаг. Если так, то давайте вместе попросим (наверное можно плюсами к статье) @tinkoff_bank выделить бюджет команде API и допилить Песочницу?

API Тинькофф Инвестиции. Как начать? Тизер сериала.

На данный момент я снял для канала Azzrael Code 14 видео посвященных работе с API Тиньков Инвестиции . Они раскрывают разные стороны работы с API, каждый ролик идет около получаса и ролики идут не по порядку. Это уйма времени! Я подумал что, возможно, стоит сделать тизер этого сериала, где рассказать что есть в каждом из роликов, в каком порядке их стоит смотреть, а где можно сэкономить время, если тема ролика хоть и связана с Тинькофф Инвестиции, но не очень то вам интересна. Поскакали!

Важно, обновление API Тинькофф Инвестици v.2 от 21 января 2022

Все посты и видео опубликованные ранее касаются версии API v1. В 2022 году вышла версия API Тинькофф Инвестиции v.2 , которая кардинально отличается от первой версии. На данный момент работают обе версии и все старые посты все ещё актуальны. Однако лучше переходить на вторую. В ближайшее время будет новый сериал посвященный API Tinkoff Invest v.2. В первую очередь все будет на канале Azzrael Code. Подписывайтесь!

Полезные ссылки про API Тиньков Инвестиции

Для всех роликов вам пригодятся эти ссылки:

Мои видео по работе с API Тинькофф Инвестиции

Чтобы вы не делали с API первое что вам нужно сделать это получить токен (это такой ключ доступа) и кое что настроить в личном кабинете. Об этом в первом видео

Как получить токен в Тинькофф Инвестиции Open API

Python + Тинькофф Инвестиции Open API — начало, настройка, SDK от @daxartio

В этом же видео будет простой пример работы с API Тиньков Инвестиции, чтобы проверить что все настроено правильно. А дальше я снял два связанных между собой видео про два наиболее интересных метода API — это методы /operations и /portfolio.

Python + Open API Тинькофф Инвестиции — метод /portfolio

Портфолио — метод, который отдает нам список открытых позиций и некоторые метрики по этим позициям, такие как:

  • figi, ticker, isin
  • тип бумаги (акция, облигация, валюта и т.д.)
  • количество
  • ожидаемая прибыль

В видео я показываю как получить и обработать эти показатели чтобы посчитать ожидаемую доходность инвестиций если продать все эти позиции «прямо сейчас». Показываю как работать с методом portfolio с помощью SDK и без него.

Ну а метод /operations API Тиньков Инвестиций показывает нам информацию о совершенных ранее сделках, а также информацию обо всех иных движениях на брокерском счете:

  • пополнение / снятие денег со счета
  • покупке / продаже бумаг и валют
  • поступлениях дохода от купонов и дивидендов
  • списаниях налогов

Об этом методе я снял видео

Python + Open API Тинькофф Инвестиций — operations, получение списка операций на счете

Вообще все это было затеяно для создания собственного отчета об эффективности инвестиций с учетом расходов на комиссии брокера, оплату налогов, в удобной для меня форме. Конечно методов operations и portfolio для такого отчета недостаточно. А кроме того нужно всю эту информацию от API Тинькофф Инвестиций как то обработать и сохранить в удобном для дальнейшего анализа виде. И подходов для реализации задуманного может быть много. Первый и самый простой — сохранить все в Excel, что я сделал в видео:

Python + Open API Тинькофф Инвестиции+ Excel, расчет доходности инвестиций

В этом видео были использованы все необходимые дополнительный методы API (курсы валют, стакан, остатки на счетах и прочее), а также я показал как работать с Excel из Python. Однако Excel это слишком просто, поэтому дальше я снял ещё несколько видео и реализовал отчетность несколькими иными способами:

    . Удобное решение, которым можно пользоваться без установки питона, из любого места на Земле (где есть интернет) и с любого устройства.
  • В видео плагина для WordPress (на PHP соотвественно). Я снял видео Как работает сервис по экспорту из API Тинькофф Инвестиций и показал Как его установить к себе на сайт (исходники выложил на GitHub).

Алготрейдинг с API Тиньков Инвестиции

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

В этом видео я показал как пользоваться Streaming API Тинькофф Инвестиций. Оно нужно чтобы подписываться на котировки и в режиме почти реального времени следить за движениями (например) цены, чтобы затем совершать сделки (уже через Rest API).

Я рассчитывал что для начала мы со зрителями канала Azzrael Code сначала поэкспериментируем с покупками в Песочнице.

Open API Тинькофф Инвестиции + Python, Песочница (Sandbox), регистрация и первые покупки бумаг

В этом видео я рассказал как подготовить Песочницу к экспериментам. Как все настроить (а это нужно сделать) и совершить первые виртуальный сделки. Мне очень нравилась идея Песочницы и был воодушевлен идеей многочисленных запланированных экспериментов….. Однако

API Тиньков Инвестиции + Python, Покупка / продажа бумаг * Боль и Разочарования

Это видео поставило точку (зачеркнуто), многоточие на сериале про API Тинькофф Инвестиции. Почему так — обязательно посмотрите…

На данный момент я закончил Сериал про API Тинькофф Инвестиции. Все что нужно и, на мой взгляд, важно реализовать получилось. Однако нам обещают глубокую переработку API Инвестиций и выпуск второй версии. Обещают довольно давно. Но, если это случиться, то, вероятно, и у меня на канале выйдет второй сезон. Поэтому тинькофф инвестиции случайное

Песочница API Тинькофф Инвестиции и лимитные заявки

Песочница API Тинькофф Инвестиции и лимитные заявки

Когда пару месяцев назад я выбирал брокера для погружения в пучину инвестиционного хайпа, то весь выбор для меня ( субъективно ) свелся к двум кандидатам Тинькофф Инвестиции и ВТБ Инвестиции. Одним из важнейших аргументов для меня было наличие каких либо интерфейсов как для получения данных о рынке, о сделках, об открытых позициях в аккаунте и для автоматизации торговли. Ни то что бы я какой то алготрейдер, но вот нравится мне идея щупать рынок кодом.

В бэкграунде у меня есть немного MQL4 ( MetaTrader 4 ) для Forex. Но это очень давний опыт и к нему я лет 10-15 не подходил. К сожалению на биржу MetaQuotes (вроде бы) не прорвались и это печально.

QUICK - крутой, но показался слишком замороченным уже на этапе получения доступа к нему у ВТБ. У Тиньковцев же я нашел API , на удивление лаконичное и приятное внешне. Поэтому по совокупности этой и других причин пошел к ним.

Впечатления от Open API Тинькофф Инвестиции

Понравилось. Простой Rest API, есть SDK, внятный мануал, легко получить доступы и есть Песочница где ( как я думал ) можно поиграться в Баффета. Ну что ещё нужно!

Порой, правда, появлялись странные ощущения не законченности. Например у токена доступа к РЕАЛЬНОМУ счету нет никаких возможностей ограничений доступа (хотя бы по IP), наоборот - хочешь токен -> отключай смс подтверждение сделок . Это как так в финтехе то?

Я даже наснимал почти десяток видео как там что и делал это с удовольствием (ссылок не буду ставить, у меня же тут не пиара, а нытья пост). Однако .

Здравствуй, Песочница, которая ничего не знает о рынке

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


А лимитная заявка /orders/limit-order исполнится сразу (то есть моментально, как рыночная) и исполнится по той цене что я поставлю в лимит. Мало того что как лимитная заявка этот метод, получается, не работает в принципе, так я могу купить 100500 лотов Сбера за рубль, а потом продать за 100000. Это как так то?

Справедливости ради, в доках такое поведение Песочницы, в целом, описано. Но это настолько странное поведение, что пока кодом это не увидишь осознания не придет.

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

Сложилось такое впечатление что команда пилила API и получалось хорошо, а на Песочнице бюджет кончился. Печалька!

Мне кажется что на Хабре, наверное, есть кому Песочница могла бы быть прикольным местом для лепки куличиков из виртуальных ценных бумаг. Если так, то давайте вместе попросим (наверное можно плюсами к статье) @tinkoff_bank выделить бюджет команде API и допилить Песочницу?

Автор статьи

Куприянов Денис Юрьевич

Куприянов Денис Юрьевич

Юрист частного права

Страница автора

Читайте также: