Skip to main content

FinamTradeApiPy

Build PyPI version Python pre-commit License Code style: Ruff Type Checked: mypy Formatted with: black Security Check GitHub stars Ask DeepWiki


FinamTradeApiPy — это Python-библиотека для лёгкого взаимодействия с публичным торговым API Finam. Библиотека только предоставляет удобную обертку для доступа к API и не несет ответственность за полученные и отправленные через нее данные.

Асинхронный REST-клиент для API Finam.

Используется:

  1. aiohttp для создания клиента;
  2. pydantic для удобной работы с моделями данных;
  3. ruff для линтинга;
  4. mypy для статической типизации;
  5. pytest для тестирования;
  6. bandit для статического анализа безопасности;
  7. pre-commit для автоматизации линтинга и тестирования;

Requirements

Python >= 3.11; < 3.14 - проверки в CI.

Installation

pip install finam-trade-api
poetry add finam-trade-api
uv add finam-trade-api

Usage/Examples

Получение токена

import os

from finam_trade_api import Client
from finam_trade_api import TokenManager


async def main():
    # Получение токена из переменных окружения
    token = os.getenv("TOKEN")
    
    # Инициализация клиента с менеджером токенов
    client = Client(TokenManager(token))
    
    # Установка JWT-токена
    await client.access_tokens.set_jwt_token()
    
    # Получение деталей JWT-токена
    return await client.access_tokens.get_jwt_token_details()


if __name__ == "__main__":
    import asyncio

    # Запуск асинхронного main
    print(asyncio.run(main()))

Информация об аккаунте

import os
from pprint import pprint

from finam_trade_api import Client
from finam_trade_api import TokenManager
from finam_trade_api.account import GetTransactionsRequest, GetTradesRequest

token = os.getenv("TOKEN")
account_id = os.getenv("ACCOUNT_ID")


async def main():
    client = Client(TokenManager(token))
    await client.access_tokens.set_jwt_token()

    # Получение информации об аккаунте
    pprint(await client.account.get_account_info(account_id))

    # Получение списка транзакций
    pprint(await client.account.get_transactions(GetTransactionsRequest(
        account_id=account_id,
        start_time="2024-01-01T00:00:00Z",
        end_time="2025-03-15T00:00:00Z",
        limit=10,
    )))

    # Получение списка сделок
    pprint(await client.account.get_trades(GetTradesRequest(
        account_id=account_id,
        start_time="2024-01-01T00:00:00Z",
        end_time="2025-03-15T00:00:00Z",
    )))


if __name__ == "__main__":
    import asyncio
    asyncio.run(main())

Больше примеров в папке examples

Authors

License

GNU GPL v.3.0

Release files for finam-trade-api 4.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for finam-trade-api 4.4.0
File Size Uploaded
finam_trade_api-4.4.0.tar.gz 27.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for finam-trade-api 4.4.0
File Interpreter ABI Platform
finam_trade_api-4.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 65.1 kB

Release files / finam_trade_api-4.4.0.tar.gz

Download URL finam_trade_api-4.4.0.tar.gz
Size 27.8 kB
Tags Source
SHA-256 checksum
How to use checksums
8bb572692cfee26e1febf8a220f0de52e2adbd93da858abb974015764988feb9
BLAKE2b-256 checksum
How to use checksums
f126364a623b3680df897b92688386fc91217d03b2d1b08109d30e88cc2fd1a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.12.3 Linux/6.14.0-37-generic

Release files / finam_trade_api-4.4.0-py3-none-any.whl

Download URL finam_trade_api-4.4.0-py3-none-any.whl
Size 37.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
162219f459367917cdbd58472b2daf6ec2c53df61fb371cfea837de54a09c1a1
BLAKE2b-256 checksum
How to use checksums
607b86c5bc9d9daaeaf9fd11c5aef9ed4fa55addf93fad8a9569e3ef2b09c1d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.12.3 Linux/6.14.0-37-generic

Release history Release notifications | RSS feed

This release

4.4.0 This release

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.6

2 release files

4.2.5

2 release files

4.2.4

2 release files

4.2.3

2 release files

4.2.2

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.3.2

1 release file

2.3.0

1 release file

2.2.0

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.2

1 release file

2.0.1

2 release files

2.0.0

2 release files

1.1.2

1 release file

1.1.1

1 release file

1.1.0

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page