bist_quant
Quantitative research and backtesting library for Borsa Istanbul (BIST). Version 0.3.3.
bist_quant is a Python library for factor research, signal construction, backtesting, portfolio analytics, and BIST-focused data workflows. It is designed to be usable from notebooks, scripts, dashboards, and external applications without requiring a repo checkout.
Install
pip install bist-quant
Quick Start
from bist_quant import DataLoader, DataPaths, PortfolioEngine
paths = DataPaths()
loader = DataLoader(data_paths=paths)
engine = PortfolioEngine(
data_loader=loader,
options={"use_regime_filter": False},
)
result = engine.run_factor("momentum")
print(f"Sharpe: {result['sharpe']:.2f}")
print(f"CAGR: {result['cagr']:.1%}")
By default the library uses user-scoped directories:
- data:
~/.local/share/bist-quant/data - regime outputs:
~/.local/share/bist-quant/regime/simple_regime - cache:
~/.cache/bist-quant
Override them with BIST_DATA_DIR, BIST_REGIME_DIR, and BIST_CACHE_DIR when needed.
If you are working from local parquet/CSV files, set BIST_DATA_SOURCE=local.
What Ships in the Library
portfolio.py-PortfolioEngineand backtest entry pointssignals/- factor and signal buildersanalytics/- performance analytics and metricsclients/- built-in data-provider integrationscommon/- data loading, backtester, risk, and shared helpersconfigs/- strategy registry and configuration loadersregime/- regime classification helpersrealtime/- quote and market snapshot helpers
Data Setup
The package does not ship datasets. Point it at an existing dataset directory or seed data into the default user-scoped location.
export BIST_DATA_DIR="$HOME/.local/share/bist-quant/data"
python -m bist_quant.fetchers.fetch_gold_prices
python -m bist_quant.fetchers.fetch_indices
python -m bist_quant.clients.update_prices
Documentation
- Installation
- Quick Start
- Configuration
- Signals Guide
- Backtesting Guide
- Portfolio & Risk
- Multi-Asset Guide
Development
Contributor setup lives in CONTRIBUTING.md. App-stack deployment notes remain in deploy/README.md, but they are out of scope for the published library package.
License
Apache License 2.0 - see LICENSE.
Metadata
Release files for bist-quant 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bist_quant-0.3.3.tar.gz | 530.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bist_quant-0.3.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.0 MB
Release files / bist_quant-0.3.3.tar.gz
| Download URL | bist_quant-0.3.3.tar.gz |
|---|---|
| Size | 530.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
15be9757364329335bb6bf43cb6e5229d4e280843d238c048f1d933fffbccd40
|
|
BLAKE2b-256 checksum How to use checksums |
97059ad8b83755450193f70834265c9084915f5691b1aba655bf69abab45fb0b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Release files / bist_quant-0.3.3-py3-none-any.whl
| Download URL | bist_quant-0.3.3-py3-none-any.whl |
|---|---|
| Size | 508.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0955d24a72b10e891cb7246d1121f9f06497d17be2bcb24539079ea64b45c901
|
|
BLAKE2b-256 checksum How to use checksums |
632f90a47543cd9667078c950ac9a167e5c7d9fc13228b9dc012cb9e9ac484e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|