Skip to main content

トレーディング戦略のためのPythonバックテストライブラリ

Project description

BackcastPro Logo 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 .
python -m pip install -r requirements.txt

使用方法

基本的な使い方

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)
results = bt.run_with_strategy(my_strategy)

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)
chart = bt.make_chart()  # plotlyローソク足 + 売買マーカー

mo.vstack([slider, chart])

ドキュメント

バグ報告 / サポート

  • バグ報告や要望は GitHub Issues へ
  • 質問は Discord コミュニティへ(招待リンク
  • 使い方はドキュメントをご参照ください

Project details


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.3.1.tar.gz (363.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

backcastpro-0.3.1-py3-none-any.whl (70.2 kB view details)

Uploaded Python 3

File details

Details for the file backcastpro-0.3.1.tar.gz.

File metadata

  • Download URL: backcastpro-0.3.1.tar.gz
  • Upload date:
  • Size: 363.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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

Hashes for backcastpro-0.3.1.tar.gz
Algorithm Hash digest
SHA256 2015aeab9da49379e9511aea534721a762311450bb1cda7f2a9926d8b5ef3167
MD5 88e5ab6fa2c314490c598d5b20bba8ae
BLAKE2b-256 d8622bb8673d2bca910ce5ae1ba867d4f9be4226342df93b72ae4d13eeb71d88

See more details on using hashes here.

File details

Details for the file backcastpro-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: backcastpro-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 70.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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

Hashes for backcastpro-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 828c196b6a0ee9261949cb824fcaba4fd2c12b31de2963537456b9bac22f6cb7
MD5 813f6951c65e1eb21e0a653cc5ff1703
BLAKE2b-256 380a785191e4f34e5af3bc0f56127823dcd07d7af50eb81da3276a7881ca3b50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page