Unofficial T-Bank wrapper
Project description
Bondana Client
Неофициальная обертка официального Tinkoff Invest API v2, оптимизированная для торговли облигациями на языке Python.
:warning: На данный момент отлажена работа на облигациях номиналом 1000 рублей, на других номиналах не тестировалось
Установка клиента
$ pip install bondana-client
Как пользоваться
Инициализация клиента
from bondana_client import Bondana
TOKEN = 'token'
client = Bondana(TOKEN)
Получить баланс свободных денег в рублях
balance_rub, blocked = client.get_balance('rub')
Получение списка бумаг в портфеле
client.portfolio.portfolio_get()
for bond in portfolio.positions:
print(bond)
Получение истории операций
from datetime import datetime, timedelta
nw = datetime.now() - timedelta(days=1) # получим сделки за последний день
d1 = datetime(nw.year, nw.month, nw.day, 0, 0, 0, tzinfo=timezone('Europe/Moscow'))
d2 = datetime.now(tz=timezone('Europe/Moscow'))
ops = client.operations.operations_get(limit=1000, from_=d1, to=d2)
ops.reverse()
for op in ops:
print(op.get("figi"), op.get("price"), op.get("payment"), op.get("quantity"))
Постановка лимитной заявки
# лимитная заявка на покупку
lots = 1
price = 987.65
figi = "BBG00Y9B45C2"
order_limit = client.orders.orders_limit_order_post(figi,
limit_order_request = {"lots": lots, "operation": "Buy", "price":price, })
# лимитная заявка на продажу
lots = 1
price = 997.65
figi = "BBG00Y9B45C2"
order_limit = client.orders.orders_limit_order_post(figi,
limit_order_request = {"lots": lots, "operation": "Sell", "price":price, })
Получение списка активных заявок
client.orders.orders_get() # список заявок в формате объектов Tinkoff API
client.orders.orders_get_json() # список заявок в формате JSON
for order in client.orders.orders_get_json():
print(order.get("order_id"), order.get("operation"), order.get("figi"))
Отмена заявки на покупку
# последовательная отмена всех активных заявок, для примера
for order in client.orders.orders_get_json():
client.orders.orders_cancel_post(order.get("order_id"))
Просмотр стакана по figi
figi = "BBG00Y9B45C2"
orderbook = client.market.market_orderbook_get_dict(figi, 20)
Получение списка всех доступных облигаций
bonds = client.market.market_bonds_get()
for bond in bonds:
print(bond)
Получение свечей
candles = client.market.candles(figi, from_, to, interval, candle_source_type)
for candle in candles:
print(candle)
TODO:
получение лотности
шаг цены
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bondana_client-2025.10.17171328.tar.gz.
File metadata
- Download URL: bondana_client-2025.10.17171328.tar.gz
- Upload date:
- Size: 6.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e6010b184b44b9b1241326e40ddd790d94fa676c02761b34e4eaeb43c3c7843
|
|
| MD5 |
88b4a153ddc67fbe45f8b1d9d72bb6fb
|
|
| BLAKE2b-256 |
fcaa20ba73499f15f96c4a51e9a8dd2c77931adbc647ff04f36f827e7508a827
|
File details
Details for the file bondana_client-2025.10.17171328-py3-none-any.whl.
File metadata
- Download URL: bondana_client-2025.10.17171328-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2305d914bfad403d161d814bcc9d078b083d2fc650ca6aa964a3801f588e441b
|
|
| MD5 |
e92cb96059800584e78842b9c2933f37
|
|
| BLAKE2b-256 |
8b8313342fa2a4951f25b231397aa8bf2bb4d856ccd49163eb2e17f7e6c72ead
|