Skip to main content

An open-source asynchronous Python library for standardized access to cryptocurrency exchange market data APIs.

Project description

Uniquant


Disclaimer

UniQuant is an open-source project developed solely for educational and experimental purposes.
Any use of this library for unethical or illegal purposes is strictly prohibited, including but not limited to:

  • Engaging in pump-and-dump schemes or buying tokens that are questionable under Islamic law (Shariah)
  • Utilizing this library for futures trading, leveraged trading, or other high-risk financial instruments
  • Employing this tool in unregulated or illegal markets

The author assumes no responsibility for misuse or violations of legal, ethical, or religious standards.
Users must ensure compliance with all local laws, exchange policies, and religious guidelines.


Overview

Uniquant is an asynchronous Python library that provides a unified, high-performance interface to interact with multiple cryptocurrency trading platforms. Built with asyncio and aiohttp, it currently supports Binance Spot public REST APIs, enabling developers to build scalable, non-blocking applications for market data retrieval.

The library abstracts platform-specific complexities into a clean, consistent API—ideal for research, data analysis, or prototyping—while adhering to asynchronous best practices.

Note: Private API support and additional exchanges are planned for future releases (see Roadmap).


Features

  • Asynchronous, non-blocking I/O using asyncio and aiohttp
  • Unified API design for cross-exchange compatibility (currently Binance Spot public endpoints only)
  • Lightweight with minimal dependencies
  • Type hints for improved developer experience and IDE support
  • Automatic rate-limit handling (basic)

Technologies & Dependencies

  • Python: 3.9 or higher
  • Core Libraries:
    • asyncio (built-in)
    • aiohttp (for async HTTP requests)
    • websockets (for real time connections and messages -system of exchanges-)

Installation

Install Uniquant via pip:

pip install uniquant

Or from source:

git clone https://github.com/Broo-DevX-Coder/Uniquant
cd uniquant
pip install -e .

Ensure you are using Python 3.9+.


Usage

Public Market Data (Binance Spot)

from uniquant.Platforms.Binance.Public import PublicSymbols,OneSymbole # You can to chow any sepported exchange
from uniquant.main.utils import QueueStream,STABLECOINS_USD # These are just utils from lib
import aiohttp

async def main():
    OBJ = PublicSymbols(symbol="BTCUSDT")
    await OBJ.start(aiohttp.ClientSession()) # This function is very imporetant to initialyze sessions, you can set a costimize aiohttp.ClientSession for them
    async for ob in OBJ.orderbook_stream(limit=int): # this is a small exemple to get async-generator of orderbook
      print(ob)

asyncio.run(main())

All sepported exchanges objects and functions are same Important: You can to see all docs of use in wiki DOCs


Supported Exchanges (Last Version)

Exchange Name API Docs Link Private API Supported? Last Version Upgraded
Binance Spot docs Not yet supported 1.0.0

Version History

Version Release Date Changelog / Wiki Link
1.0.0 2025-12-10 Wiki: v1.0.0 — Improved error handling, type hints, async session reuse

Future versions will incrementally add private API support, additional exchanges, and WebSocket connectivity.


License

This project is licensed under the MIT License — see the LICENSE file for details.


Maintainer

For questions, bug reports, or feature requests, please [open an issue](INSERT URL/issues) in the repository.

Maintainer: Broo-Dev-X Contact: [broodevx@gmail.com] (optional)


Remember: Always use this library responsibly and in full compliance with applicable laws, exchange terms of service, and ethical standards.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uniquant-1.0.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

uniquant-1.0.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file uniquant-1.0.0.tar.gz.

File metadata

  • Download URL: uniquant-1.0.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for uniquant-1.0.0.tar.gz
Algorithm Hash digest
SHA256 597b8851d873436f7e0f417e36860faa45588289ac1db45a33be4b953265c6e8
MD5 a1120ce3067ddb16b9f77af13719a8a4
BLAKE2b-256 bb34696e43165066f8ef89859d0ea59eb0676be090ac8159a3cc8fc1430ec818

See more details on using hashes here.

File details

Details for the file uniquant-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: uniquant-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for uniquant-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8021e74a0306a02c029318189912b865b77c927bfe90a88a3688d62566042639
MD5 44bcde20ccb39c29d3ab8fd56b57628f
BLAKE2b-256 37af1dfc747288ca60a33c0a707bc4e07624703cedc47c90674a14e032ab69ba

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page