トレーディング戦略のための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.6.3.tar.gz
(385.3 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.6.3.tar.gz.
File metadata
- Download URL: backcastpro-0.6.3.tar.gz
- Upload date:
- Size: 385.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","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 |
5c93a6b0a446539aa80e272bda7fc8a1a177c835dba0f7ccc3c54ff8be6b4599
|
|
| MD5 |
3784724c4b22f472ef6010294b8f40ed
|
|
| BLAKE2b-256 |
99ef152897bfe8dcb77ef8055b4ed562976212c79c5d535ac3c46762b0be6d80
|
File details
Details for the file backcastpro-0.6.3-py3-none-any.whl.
File metadata
- Download URL: backcastpro-0.6.3-py3-none-any.whl
- Upload date:
- Size: 70.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","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 |
df0ffff4dbe9adb83203bc5d1c1e32c823abfcc00b66a44e380a5d90fa2b672c
|
|
| MD5 |
f4bb2b2248c812b23486da7c2d3e3cf9
|
|
| BLAKE2b-256 |
dc2d4f07e47787c335d7a015d22edec67e4a6c0b53fae3d4e271ba681df2e230
|