このプロジェクトについて

VectorBTは、定量的取引研究向けのハイブリッドバックテストライブラリであるVectorBT PROのオープンソースコミュニティ版です。中心となる考え方は、バーごとに1戦略ずつループ処理することを避けるというものです。設定はNumPy配列にまとめられ、ホットパスはNumbaとオプションのプリコンパイル済みRustエンジンで高速化され、数千のパラメータ組み合わせが一度に実行されます。 READMEに記載されている主な機能: - pandas、NumPy、Numba上に構築された、高速でベクトル化されたバックテストと戦略研究。 - JITオーバーヘッドなしでプリコンパイル済みの速度を実現するオプションのRustエンジン。 - カスタムアクセサと高性能操作を備えたPandasネイティブAPI。 - マルチアセット分析と大規模なパラメータスイープのための柔軟なブロードキャスト。 - カスタムインジケータと、TA-LibやPandas TAなどの統合を備えたインジケータエコシステム。 - 取引、ドローダウン、パフォーマンス分析を含むポートフォリオバックテスト(QuantStats統合を含む)。 - 生成、ランキング、マッピング、分布分析のためのシグナルツール。 - 前処理と合成データ生成を備えた組み込みデータアクセス。 - ウォークフォワード最適化とMLワークフロー向けのラベル生成によるロバスト性テスト。 - Plotly、Jupyterウィジェット、ブラウザ対応ダッシュボードによるインタラクティブな可視化。 - スケジュール更新とTelegram通知のための自動化ツール。 - 迅速な実験とAIエージェント駆動ワークフローを目的とした、コンポーザブルなPython API。 インストールはpip(`pip install -U vectorbt`)で行い、Rustエンジン用のextras(`vectorbt[rust]`)、すべてのオプション統合用(`vectorbt[full]`)、またはその両方(`vectorbt[full,rust]`)があります。Dockerイメージも公開されています。 READMEでは、短い例を通じて使用方法を示しています。2014年以降のBitcoinのバイ・アンド・ホールド、デュアルSMAクロスオーバー戦略、2つのシンボルにわたる1,000個のランダム戦略の生成、3つのシンボルにわたる10,000通りのデュアルSMAウィンドウ組み合わせのテストと総リターンのヒートマップ、単一設定の統計(リターン、ドローダウン、勝率、Sharpe、Sortino、Calmar、Omega、期待値など)の確認、ポートフォリオのプロット、複数シンボルにわたるBollinger Bandsのアニメーション化などです。ローソク足パターンをインタラクティブに探索するためのサンプルアプリもリポジトリに含まれています。 ライセンス: Apache 2.0とCommons Clauseに基づくfair-code。ソースは公開されており、個人および組織が無料で使用できますが、主に本ソフトウェアである製品やサービスを販売することはできません。オプションの依存関係には、より制限的なライセンスが付随する場合があります。READMEには、本ソフトウェアは教育目的のみであるという免責事項も記載されています。