トレーディング戦略のためのPythonバックテストライブラリ
Project description
BackcastPro
トレーディング戦略のためのPythonバックテストライブラリ。 リプレイ型シミュレーターで、1バーずつ時間を進めながらチャートと売買を可視化できます。
インストール(Windows)
PyPIから(エンドユーザー向け)
python -m pip install BackcastPro
開発用インストール
git clone <repository-url>
cd BackcastPro
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -e .
使用方法
基本的な使い方
from BackcastPro import Backtest
import pandas as pd
# データ準備
df = pd.read_csv("AAPL.csv", index_col=0, parse_dates=True)
bt = Backtest(data={"AAPL": df}, cash=100000)
# 戦略関数
def my_strategy(bt):
if bt.position == 0:
bt.buy(tag="entry")
elif bt.position > 0:
bt.sell(tag="exit")
# ステップ実行
while not bt.is_finished:
my_strategy(bt)
bt.step()
# 結果を取得
results = bt.finalize()
print(results)
一括実行
bt = Backtest(data={"AAPL": df}, cash=100000)
bt.set_strategy(my_strategy)
results = bt.run()
marimo連携(リプレイ型シミュレーター)
import marimo as mo
slider = mo.ui.slider(start=1, stop=len(bt.index), value=1, label="時間")
bt.goto(slider.value, strategy=my_strategy)
state = bt.get_state_snapshot()
info = mo.md(f"資産: ¥{state['equity']:,.0f} / 進捗: {state['progress'] * 100:.1f}%")
mo.vstack([slider, info])
ドキュメント
バグ報告 / サポート
- バグ報告や要望は GitHub Issues へ
- 質問は Discord コミュニティへ(招待リンク)
- 使い方はドキュメントをご参照ください
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
backcastpro-0.4.0.tar.gz
(325.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file backcastpro-0.4.0.tar.gz.
File metadata
- Download URL: backcastpro-0.4.0.tar.gz
- Upload date:
- Size: 325.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
009af94285a1640cc07cbc23cbb812ad562cc45c191eb4a0adb5ef38c93033fa
|
|
| MD5 |
8b17e6df015fdb695885fd44080311d6
|
|
| BLAKE2b-256 |
ed0417d81286acd0d1a3e1aa2ed553c9d4cb9454475a7a789691c1f64fc203e1
|
File details
Details for the file backcastpro-0.4.0-py3-none-any.whl.
File metadata
- Download URL: backcastpro-0.4.0-py3-none-any.whl
- Upload date:
- Size: 72.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9bcd9e16fd10fef9c5470e64df89421224c28e4a573056ec68f91ffe50708ba
|
|
| MD5 |
db5ab64f1cac8e23342ebbca322bed14
|
|
| BLAKE2b-256 |
3f5dd5837d852a2897ec432f25afbfe978dfb1d13573699528dc55a4e9b49a67
|