トレーディング戦略のための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.2.tar.gz
(329.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.4.2.tar.gz.
File metadata
- Download URL: backcastpro-0.4.2.tar.gz
- Upload date:
- Size: 329.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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 |
3f995e9ef5ef9903f1ff96cbbd7c6bbac71ecedcaec2d31213dda337c9961586
|
|
| MD5 |
791232a912f62cce8313e871cd6f4c8e
|
|
| BLAKE2b-256 |
959e94e971f7c9b04c2748cbdfd2feb0155e3845aa7f6f10fc13e32ad33f2846
|
File details
Details for the file backcastpro-0.4.2-py3-none-any.whl.
File metadata
- Download URL: backcastpro-0.4.2-py3-none-any.whl
- Upload date:
- Size: 72.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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 |
d14bb84d8f0d74f6cf84046d2da36a9a3034145fdfb0a3b32cb34c85fa099eea
|
|
| MD5 |
159c997f19cfa2e928a8638159b7d17e
|
|
| BLAKE2b-256 |
06a19e8841bed573eec820c5f0f01521241a28f3be37fe878c7d47bbb08ce9db
|