Данный Google Apps Script предназначен для импорта сделок из Тинькофф Инвестиций прямо в Google таблицы, для последующего анализа.
Я сделал этот скрипт для автоматизации ручного вбивания данных из приложения тинькофф, и надеюсь он окажется полезен кому-нибудь ещё :)
- Создать или открыть документ Google Spreadsheets http://drive.google.com
- В меню "Tools" выбрать "Script Editor"
- Дать проекту имя, например
TinkoffTrades
- Скопировать код из Code.gs
- Получить OpenApi-токен тинькофф
- Добавить свойство
OPENAPI_TOKEN
в разделеFile -> Project properties -> Script properties
равным токену, полученному выше. - Сохранить скрипт 💾
На этом всё. Теперь при работе с этим документом на всех листах будут доступны 2 новые функции getPriceByTicker
и getTrades
-
=getPriceByTicker(ticker, dummy)
- требует на вход тикер, и опциональный параметрdummy
. Для автоматичекого обновления необходимо указать в качествеdummy
ячейкуZ1
. -
=getTrades(ticker, from, to)
- требует на вход тикер, и опционально фильтрацию по времени. Параметрыfrom
иto
являются строками и должны быть в ISO 8601 формате
-
Скрипт резервирует ячейку
Z1
(самая правая ячейка первой строки), в которую вставляет случайное число на каждое изменении листа. Данная ячейка используется в функцииgetPriceByTicker
, - она позволяет автоматически обновлять текущую стоимость тикера при обновлении листа. -
Среди настроек скрипта есть
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 мая.