Basana
A Python async and event driven framework for algorithmic trading, with a focus on crypto currencies.
Install / Use
/learn @gbeced/BasanaREADME
Basana
Basana is a Python async and event driven framework for algorithmic trading, with a focus on crypto currencies.
Key Features
- Backtesting exchange so you can try your trading strategies before using real funds.
- Live trading at Binance and Bitstamp crypto currency exchanges.
- Asynchronous I/O and event driven.
Getting Started
Installation
$ pip install basana[charts]
The examples use TALIpp for the technical indicators, pandas, statsmodels and also Textual if you want to run the Binance order book mirror.
$ pip install talipp pandas statsmodels textual
Download and unzip samples or clone the GitHub repository.
Backtest a pairs trading strategy
-
Download historical data for backtesting
$ python -m basana.external.binance.tools.download_bars -c BCH/USDT -p 1h -s 2021-12-01 -e 2021-12-26 -o binance_bchusdt_hourly.csv $ python -m basana.external.binance.tools.download_bars -c CVC/USDT -p 1h -s 2021-12-01 -e 2021-12-26 -o binance_cvcusdt_hourly.csv -
Run the backtest
$ python -m samples.backtest_pairs_trading

Binance Order Book mirror
The following example demonstrates how to maintain a synchronized local copy of a Binance order book using Basana's event-driven architecture. It initializes the order book from a REST API snapshot, then continuously updates it with real-time diffs from a WebSocket stream while periodically verifying consistency against fresh snapshots to handle potential synchronization issues.

Use the following command to run the example:
$ python -m samples.binance_order_book_mirror
The mirroring code can be found here.
The Basana repository comes with a number of examples you can experiment with or use as a template for your own projects:
Note that these examples are provided for educational purposes only. Use at your own risk.
Documentation
https://basana.readthedocs.io/en/latest/
Help
You can seek help with using Basana in the discussion area on GitHub.
Related Skills
node-connect
337.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
337.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.3kCommit, push, and open a PR
