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.3.tar.gz (15.7 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.3-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: uniquant-1.0.3.tar.gz
  • Upload date:
  • Size: 15.7 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.3.tar.gz
Algorithm Hash digest
SHA256 f9b0fe930974bceddd2f9ed95e97aec8d4b7e88939fde5095e5298399e63e5fd
MD5 48a0a6b72f1a282780dd400e0dd4204e
BLAKE2b-256 05c586a63d1e02857c2dbaff04d8a9054359b984fd90a4c9cfc9a31cd4d5493d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: uniquant-1.0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1afb1265ae5bd5fe761d12aa24a3b5140c33d8aa818d6e7f82eba7e21a85dbb7
MD5 72136b0eee0d23688ab5550941d009de
BLAKE2b-256 b13078765b0172481af71e954ed023657e12986b8fd5d1ed9f352da48f670d4b

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