基本モジュール(データ処理・可視化)
| モジュール | 用途 |
|---|---|
| pandas | 時系列データの管理・操作 |
| numpy | 数値計算・ベクトル演算 |
| matplotlib / seaborn | グラフ描画・可視化 |
| datetime | 日付・時間の処理 |
| yfinance / pandas_datareader | 株価データの取得 |
バックテスト専用・金融系ライブラリ
| モジュール | 用途 |
|---|---|
| backtrader | 高機能なバックテストフレームワーク(戦略・指標・注文管理) |
| pyfolio | パフォーマンス分析(シャープレシオ、ドローダウンなど) |
| bt | シンプルな戦略構築とバックテスト |
| zipline | Quantopian由来の本格的なバックテストエンジン(やや重め) |
| quantstats | 視覚的なパフォーマンスレポート生成 |
補助ツール・環境構築
| モジュール | 用途 |
|---|---|
| scikit-learn | 機械学習による予測モデル構築 |
| statsmodels | 統計分析(回帰、時系列モデル) |
| ta | テクニカル指標の計算(RSI, MACDなど) |
| joblib | 並列処理・モデル保存 |
| dotenv | APIキーなどの環境変数管理 |
インストール
以下のコマンドで、バックテストに必要な主要モジュールを一括インストール
仮想環境内での実行を推奨。必要なら requirements.txt にも書き出して管理すること。
bash
pip install pandas numpy matplotlib seaborn yfinance pandas_datareader backtrader pyfolio bt zipline quantstats scikit-learn statsmodels ta joblib python-dotenv
requirements.txt に書き出す場合は、以下の内容をファイルに保存。
bash
pandas
numpy
matplotlib
seaborn
yfinance
pandas_datareader
backtrader
pyfolio
bt
zipline
quantstats
scikit-learn
statsmodels
ta
joblib
python-dotenv
仮想環境の作成方法については、以下の記事を参照
