IntelOut / gas-tinkoff-trades

Google Apps Script that imports your operations from Tinkoff Investments into Google Spreadsheets

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GAS Tinkoff Trades

GAS Tinkoff Trades main image

Данный Google Apps Script предназначен для импорта сделок из Тинькофф Инвестиций прямо в Google таблицы, для последующего анализа.

Я сделал этот скрипт для автоматизации ручного вбивания данных из приложения тинькофф, и надеюсь он окажется полезен кому-нибудь ещё :)

Установка

  • Создать или открыть документ Google Spreadsheets http://drive.google.com
  • В меню "Tools" выбрать "Script Editor"
  • Дать проекту имя, например TinkoffTrades
  • Скопировать код из Code.gs
  • Получить OpenApi-токен тинькофф
  • Добавить свойство OPENAPI_TOKEN в разделе File -> Project properties -> Script properties равным токену, полученному выше (для этого надо переключиться в старый редактор кода по кнопке "Use classic editor").
  • Сохранить скрипт 💾

На этом всё. Теперь при работе с этим документом на всех листах будут доступны новые функции getPriceByTicker(), getTrades(), getPortfolio(), getMaxBidByTicker(), getMinAskByTicker() и getBidAskSpread().

Функции

  • =getPriceByTicker(ticker, dummy) - требует на вход тикер, и опциональный параметр dummy. Для автоматичекого обновления необходимо указать в качестве dummy ячейку Z1 (которая будет обновлятся через меню TI).

  • =getTrades(ticker, from, to) - требует на вход тикер, и опционально фильтрацию по времени. Параметры from и to являются строками и должны быть в ISO 8601 формате

  • =getPortfolio() - выводит портфель.

Особенности

  • Скрипт резервирует ячейку Z1 (самая правая ячейка первой строки), в которую по команде меню TI->Обновить вставляется текущая дата. Данная ячейка может используется в качестве необязательного параметра любой функции для принудительного обновления.

  • Среди настроек скрипта есть TRADING_START_AT - дефолтная дата, начиная с которой фильтруются операции getTrades. По умолчанию это Apr 01, 2020 10:00:00, но данную константу можно в любой момент поменять в исходном коде.

Пример использования

=getPriceByTicker("V", Z1)  # Возвращает текущую цену акции Visa
=getPriceByTicker("FXMM", Z1)  # Возвращает текущую цену фонда казначейских облигаций США

=getTrades("V") 
# Вернёт все операции с акцией Visa, которые произошли начиная с TRADING_START_AT и по текущий момент.
=getTrades("V", "2020-05-01T00:00:00.000Z") 
# Вернёт все операции с акцией Visa, которые произошли начиная с 1 мая и по текущий моментs.
=getTrades("V", "2020-05-01T00:00:00.000Z", "2020-05-05T23:59:59.999Z") 
# Вернёт все операции с акцией Visa, которые произошли в период с 1 и по 5 мая.

Пример работы

=getTrades()

getTrades in action

=getPriceByTicker()

Get price by ticker in action

About

Google Apps Script that imports your operations from Tinkoff Investments into Google Spreadsheets

License:MIT License


Languages

Language:JavaScript 100.0%