Skip to content

yvpopov/Tinkoff-invest-Java-SDK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tinkoff-invest-Java-SDK

Java SDK for Tinkoff-invest API(gRPC)


За основу в SDK взяты Protobuf-файлы сервиса из официального API Tinkoff.

Пример.

TinkoffSDK sdk = new TinkoffSDK(token);
GetAccountsResponse accounts = sdk.getServices().getAccounts().GetAccounts();
System.out.printf("Список счетов \n%s", accounts.toString());

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

Сделан контроль лимита запросов(x-ratelimit-remaining).
При достижении лимита выдерживается пауза до сброса лимита, которая расчитывается как: "время последнего запроса" (поле date из Header) + x-ratelimit-reset пауза расчитывается относительно времени на хосте, рекомендуется синхронизировать время.
Для выключения контроля лимита запросов:

TinkoffSDK sdk = new TinkoffSDK(token).setControlLimit(false);

Сервисы.

Список доступных(реализованных) сервисов см. interface IAllServices
Доступ к сервисам организован через 2 метода:

Базовый набор сервисов:
Реализованы методы описанные официальной документации с минимальными изменениями в параметрах методов (например вместо Quotation передаем BigDecimal и т.п.)

new TinkoffSDK(token).getServices()

Модифицированный набор сервисов:
В основе базовые классы сервисов с дополнительным(модифицированным) функционалом. Например:

  • Получение инструмента по Тикеру(без указания class_code)
  • Получения истории свечей за произвольный период, если интервал выходит за ограничения, то будет выполнен в несколько запросов)
  • и др.

new TinkoffSDK(token).getServicesWithChild()

Подключение через Maven.

Добавьте в pom.xml:

    <repositories>
        <repository>
            <id>Tinkoff-invest-Java-SDK-mvn-repo</id>
            <url>https://raw.github.com/yvpopov/Tinkoff-invest-Java-SDK/mvn-repo/</url>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>ru.yvpopov</groupId>
            <artifactId>Tinkoff-invest-Java-SDK</artifactId>
            <version>1.0.10.5-Beta</version>
        </dependency>
    </dependencies>

About

Java SDK for Tinkoff-invest API(gRPC)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages