← ダッシュボードに戻る

バックテスト機能 操作マニュアル v3.0

バージョン: 3.0 作成日: 2026-03-27 ステータス: 運用中

v3 主な更新点(2026-03-27)

  • 取引履歴に「決済理由」カラムを追加(利確/損切/利確(窓)/損切(窓)/シグナル/期間終了)
  • CSV出力にMACD指標値(MACD, Signal, Histogram等)を追加
  • 足種選択時にデータ取得可能範囲のヒント表示を追加
  • データ不足時の警告バナー・トースト表示を追加
  • パラメータバリデーション(矛盾する設定の警告)を追加
  • RCIクロスモードの操作説明を追加
  • yfinanceのデータ取得制限値を正確に更新
  • デモトレードの不具合修正

v2 主な更新点

  • RCI(順位相関指数)戦略を追加
  • 利確・損切りのオン/オフ切替を追加
  • 利確の設定範囲を0.05〜3.00%、損切りを0.01〜0.20%に変更(先物短期売買向け)
  • yfinance分足データの制約に関する警告表示を追加
  • プリセット・フィルター・コスト設定の解説を追加

概要

バックテストとは、過去の実際の株価データを使って売買戦略の性能を検証する機能です。「この戦略で過去に取引していたら、どれくらい利益が出たか?」をシミュレーションできます。


基本操作(クイックスタート)

最短3ステップでバックテストを実行できます。

  1. 銘柄を選ぶ — ドロップダウンで対象銘柄を選択
  2. 「バックテスト実行」をクリック — デフォルト設定で即実行
  3. 結果を確認 — サマリー・曲線・取引一覧が表示される

デフォルトでは MACDクロス戦略 / 1分足 / 3ヶ月 で実行されます。


設定項目の詳細

1. 銘柄選択

ドロップダウンから対象銘柄を選択します。

コード銘柄名基準価格特徴
1321日経225ETF40,000指数連動、流動性が高い
7203トヨタ自動車2,800大型株、値動きが比較的安定
9984ソフトバンクG8,500値動きが大きく、シグナルが出やすい
6758ソニーG13,000中程度のボラティリティ
9432NTT170ディフェンシブ、値動き小さい
8306三菱UFJ1,600金融セクター
NIY=F日経先物ミニ38,000先物取引、乗数100

2. 足種(インターバル)

チャートの時間軸を選択します。足種によって取得可能なデータ期間が異なります。

足種表記推奨用途yfinance最大期間J-Quants最大期間
1分足1mスキャルピング検証最大約8日最大約2年
5分足5mデイトレ検証最大約60日最大約2年
60分足1hスイング検証最大約730日-
日足1d中長期検証無制限無制限

重要: yfinanceの1分足データは最大約8日、5分足データは最大約60日しか取得できません。長期間を指定しても、取得データがこの範囲に制限され、取引回数が想定より少なくなります。J-Quantsが有効な場合のみ長期の分足データが取得可能です。画面右上のデバッグパネルでデータソースと行数を確認してください。足種選択時にデータ取得可能範囲のヒントが表示されます。

先物ミニ(NIY=F) はJ-Quantsに非対応のため、yfinanceのみが使用されます。1分足は最大約8日、5分足は最大約60日が上限です。

3. 期間選択

テスト期間をボタンで選択します。

期間営業日数(目安)用途
1ヶ月約22日短期検証。RSI・RCIなど短期戦略向け
3ヶ月約65日基本的な検証に最適。全戦略が動作する
6ヶ月約130日中期検証。十分なサンプル数が得られる
1年約250日長期検証。統計的に信頼性の高い結果
期間指定任意開始日・終了日を手動で指定

4. 戦略選択とパラメータ

6つの売買戦略から1つを選択します。各戦略にはスライダーで調整可能な固有パラメータがあります。

戦略種類向いている相場
ゴールデンクロストレンドフォロートレンド相場
RSI反転逆張りレンジ相場
MACDトレンドフォロートレンド転換
MACDクロストレンドフォロートレンド転換(MACD基本)
ボリンジャーバンド逆張り/順張りレンジ/ブレイクアウト
RCI New逆張りレンジ相場

各戦略の詳細パラメータは 戦略リファレンス を参照してください。

5. リスク設定(利確・損切り)

全戦略共通のリスク管理設定です。v2でオン/オフ切替と範囲拡大を行いました。

パラメータ範囲デフォルト説明
利確 (%)0.05〜3.00%1.00%この利益率に達したら自動で利確
損切り (%)0.01〜0.20%0.05%この損失率に達したら自動で損切り

オン/オフ機能

各項目のチェックボックスで有効/無効を切り替えられます。

使い分けの目安

設定パターン用途
利確0.10% / 損切り0.05%先物スキャルピング(1分足)
利確0.50% / 損切り0.10%先物デイトレ
利確1.00% / 損切り0.20%先物スイングトレード
利確オフ / 損切り0.10%トレンドフォロー(利益を伸ばす)
両方オフ戦略シグナルのみで売買(純粋な戦略検証)

CSVで確認

CSVエクスポートで各取引の損益率を確認し、設定値通りに利確・損切りが機能しているかを検証できます。

ドテン(反転エントリー)

チェックを入れると、反転シグナル発生時に「決済 + 新規逆方向エントリー」を同時に行います。

※ドテンエントリーにもフィルター条件(時間帯・RSI等)が適用されます。フィルター条件を満たさない場合は決済のみ行い、ドテンエントリーはスキップされます。

6. フィルター条件

「フィルター条件」セクション(折りたたみ式)を開くと、4種類のフィルターを組み合わせて使用できます。

フィルター効果推奨場面
RSIフィルター買いはRSIが低い時のみ、売りはRSIが高い時のみエントリーダマシの削減
出来高フィルター平均出来高の指定倍率以上の時のみエントリー出来高が薄い銘柄での誤シグナル排除
時間帯フィルター指定時間帯のみエントリー(分足・時間足用)寄り付き・引け直前の不安定時間を除外
トレンドフィルター移動平均より上なら買いのみ、下なら売りのみトレンドに逆行するシグナルの排除

RSIフィルターの設定例

パラメータ範囲デフォルト説明
RSI期間7〜2814フィルター用RSIの計算期間
買い上限RSI20〜6040RSIがこの値以下の時のみ買いエントリー
売り下限RSI40〜8060RSIがこの値以上の時のみ売りエントリー

時間帯フィルターの設定例

7. コスト設定(商品タイプ)

「コスト設定」セクション(折りたたみ式)で取引コストを設定します。

商品タイプ(プリセット)

商品タイプ乗数手数料(円/枚/片道)取引枚数
株式(現物・信用)10100株
先物mini10038.51枚
先物ラージ1,0002751枚
カスタム任意任意任意

先物miniの場合、1ティック(5円)の動きで500円(= 5円 x 100)の損益が発生します。


結果の読み方

サマリーカード

バックテスト実行後、6つの主要指標が表示されます。

指標説明良い目安注意
総リターン初期資金(100万円)に対する損益率プラスなら利益Buy&Holdと比較
勝率勝ちトレード / 総トレード50%以上勝率だけでは判断不可(PFと併用)
プロフィットファクター (PF)総利益 / 総損失1.5以上が良好、2.0以上が優秀3.0超は過剰適合の可能性
最大ドローダウン (DD)資金ピークからの最大下落率10%以下が低リスク実運用では2〜3倍を想定
総取引回数検証期間中の完了取引数30件以上で信頼性が出る10件未満は統計的に不十分
シャープレシオリスクあたりのリターン1.0以上が良好、2.0以上が優秀最重要指標の一つ

累積損益曲線

取引履歴テーブル

各取引の詳細が一覧で表示されます(最大50件)。

内容
#取引番号
エントリー日時ポジションを取った日時
決済日時ポジションを閉じた日時
売買買/売
エントリー価格ポジションを取った価格
決済価格ポジションを閉じた価格
損益円単位の損益(緑=利益、赤=損失)
損益率パーセント単位の損益率
理由決済理由(利確/損切/利確(窓)/損切(窓)/シグナル/期間終了)

決済理由の解説

理由説明
利確設定した利確率に到達して決済
損切設定した損切率に到達して決済
利確(窓)窓開け(ギャップ)で始値が利確価格を超えていたため、始値で決済(設定値より有利な結果)
損切(窓)窓開け(ギャップ)で始値が損切価格を超えていたため、始値で決済(設定値より不利な結果)
シグナル戦略の反転シグナルにより決済
期間終了バックテスト期間の最終日に強制決済

デバッグパネル(右上)

データソース情報が表示されます。検証結果の信頼性を確認できます。

項目説明
Sourceデータ取得元(J-Quants / yfinance / Cache / Mock)
Rows取得したデータ行数
From / Toデータの開始日〜終了日
Timeデータ取得にかかった時間
Fetch Attemptsデータ取得の試行履歴

yfinanceの1分足/5分足で長期間を指定した場合、黄色い警告メッセージが表示されます。


便利機能

AIおすすめ設定

「AIおすすめ設定」ボタンをクリックすると、選択中の足種に最適な戦略・パラメータが自動設定されます。

足種推奨戦略理由
日足MACDクロス(12,26,9)トレンドフォローに最適
60分足ゴールデンクロス(EMA 5,20) or MACDクロス(先物)トレンド転換の捕捉
5分足RSI(10, 25/75)短期逆張りが有効
1分足ボリンジャーバンド(15, 2.0)バンド反発のスキャルピング

プリセット保存・呼び出し

検証で見つけた良い設定をプリセットとして保存し、いつでも再利用できます。

保存方法

  1. バックテストを実行
  2. 実行ボタン下のテキスト欄にプリセット名を入力(例: "MACD先物mini 5分足 高勝率")
  3. 「保存」ボタンをクリック

呼び出し方法

  1. 「プリセット呼出し」ボタンをクリック → モーダルが開く
  2. 保存済みプリセットの一覧から選択 → 設定が自動復元
  3. そのままバックテスト実行、またはパラメータを微調整

プリセットに保存される設定

プリセットからデモ実行

モーダル内の各プリセット横の ▶ ボタンで、保存した戦略をそのままデモトレードに適用して実行できます。

CSV出力

バックテスト実行後に表示される「CSVエクスポート」ボタンで取引データをダウンロードできます。

ファイル名: backtest_銘柄コード_日付.csv

CSV内容:

#, エントリー日時, 決済日時, 売買, エントリー価格, 決済価格, 損益, 損益率(%), 理由
1, 2026-01-15 09:15, 2026-01-15 14:30, 買, 2780.5, 2820.3, 3980, 1.43, 利確
2, 2026-01-16 10:05, 2026-01-16 13:20, 売, 2830.0, 2795.0, 3500, 1.24, シグナル
...

サマリー
総リターン(%), 12.50
勝率(%), 51.40
プロフィットファクター, 1.42
最大ドローダウン(%), 3.20
総取引回数, 35
シャープレシオ, 1.85
Buy & Hold リターン(%), 8.50

MACD戦略使用時の追加カラム

MACD / MACDクロス戦略でバックテストを実行した場合、CSVに以下のカラムが追加されます:

カラム説明
MACDエントリー時点のMACD値
Signalエントリー時点のシグナルライン値
Histogramエントリー時点のヒストグラム値

CSVでの検証ポイント

デモトレード連携

バックテスト結果画面に表示される「この戦略でデモトレード開始」ボタンで、検証済みの戦略をデモトレード(仮想資金での模擬取引)に即適用できます。

流れ:

  1. バックテストで良い結果の戦略を見つける
  2. 「この戦略でデモトレード開始」をクリック
  3. デモトレード画面に自動遷移、戦略が適用された状態で開始

戦略リファレンス

ゴールデンクロス

売買ルール:

パラメータ範囲デフォルト説明
短期MA3〜205短期移動平均の期間
長期MA15〜10025長期移動平均の期間
EMA使用ON/OFFOFF指数移動平均を使うか

最低必要データ: 長期MA期間 + 5日

RSI反転

売買ルール:

パラメータ範囲デフォルト説明
RSI期間7〜2814RSI計算期間
売られすぎ20〜4030買いシグナルの閾値
買われすぎ60〜8070売りシグナルの閾値

最低必要データ: RSI期間 + 5日(デフォルト19日 → 1ヶ月で動作)

MACD

売買ルール:

パラメータ範囲デフォルト説明
短期EMA1〜5012短期EMA期間
長期EMA2〜20026長期EMA期間
シグナル期間1〜509シグナルラインのEMA期間

最低必要データ: 長期EMA + シグナル期間 + 5日 = 40日(3ヶ月以上推奨)

MACDクロス

MACDの変化型。MACDラインとシグナルラインのクロスオーバーでシグナルを判定します。パラメータはMACDと同じです。

ボリンジャーバンド

売買ルール:

パラメータ範囲デフォルト説明
期間10〜3020移動平均の期間
標準偏差1.5〜3.02.0バンド幅の倍率
順張りモードON/OFFOFFブレイクアウト戦略

最低必要データ: 期間 + 5日(デフォルト25日 → 3ヶ月以上推奨)

RCI(順位相関指数)New

概要: RCI(Rank Correlation Index)はSpearman順位相関係数に基づくオシレーター指標です。時間の経過と価格の変動の相関を-100〜+100の範囲で数値化します。

計算式: RCI = 100 x (1 - 6 x Σ(d²) / (n x (n² - 1)))

売買ルール:

パラメータ範囲デフォルト説明
RCI期間7〜529RCI計算期間
売られすぎライン-100〜0-80買いシグナルの閾値
買われすぎライン0〜10080売りシグナルの閾値

最低必要データ: RCI期間 + 5日(デフォルト14日 → 1ヶ月で動作)

RSIとの違い

推奨設定

クロスモード

モード選択で「クロス(短期/長期RCI)」を選ぶと、短期RCIと長期RCIのクロスでシグナルを生成します。

パラメータ範囲デフォルト説明
短期RCI期間2〜309短期RCI計算期間
長期RCI期間2〜3026長期RCI計算期間

戦略別の推奨期間一覧

戦略デフォルトパラメータ最低必要営業日推奨期間1ヶ月で動作
ゴールデンクロス短期5/長期2530日3ヶ月以上限定的
RSI反転期間1419日1ヶ月以上OK
MACD12/26/940日3ヶ月以上不可
MACDクロス12/26/940日3ヶ月以上不可
ボリンジャーバンド期間2025日3ヶ月以上限定的
RCI期間914日1ヶ月以上OK

データソースと制約

データ取得の優先順位

  1. DBキャッシュ — 一度取得したデータをSQLiteに保存
  2. J-Quants V2 — 高品質な日本株データ(有料、分足対応)
  3. yfinance — Yahoo Finance経由の無料データ(フォールバック)
  4. モック — 全て失敗した場合のダミーデータ

yfinanceの制約(重要)

足種取得可能期間備考
日足無制限長期検証に適している
60分足最大約730日十分なデータが取得可能
5分足最大約60日3ヶ月以上を指定しても60日分のみ
1分足最大約8日1ヶ月以上を指定しても8日分のみ

分足で長期間を指定した場合、取引回数が少なくなる主な原因はこの制約です。デバッグパネルの「Rows」と「Source」で実際の取得データ量を確認してください。

J-Quantsの利点

J-Quants V2が設定済みの場合:


検証のコツ

1. 基本的な検証フロー

1. まずデフォルト設定で実行して傾向を把握
    ↓
2. AIおすすめ設定を試す
    ↓
3. パラメータを微調整して結果を比較
    ↓
4. 良い設定をプリセットに保存
    ↓
5. CSVで取引内容を詳細確認
    ↓
6. デモトレードで実際の値動きと照合

2. パラメータ調整のポイント

3. 過剰適合(オーバーフィッティング)に注意

特定の期間・銘柄でのみ良い結果が出る設定は、実運用で通用しない可能性があります。

4. 利確・損切り設定の検証方法

  1. まず利確・損切り両方をオフで実行: 戦略シグナルのみの純粋な結果を確認
  2. 次に損切りのみオンにして実行: 損切りの効果を確認
  3. 利確もオンにして実行: 利確追加の効果を確認
  4. CSVで確認: 各取引の損益率が設定値に沿っているかを検証

トラブルシューティング

取引が0件になる

原因対処法
データ不足期間を3ヶ月以上に延ばす
yfinance分足の制約デバッグパネルでRows数を確認。日足に変えるか、J-Quantsを使う
シグナル未発生別の銘柄で試す、パラメータの感度を上げる
戦略の最低期間を満たしていない上記の推奨期間表を参照

データ不足の場合、画面上部に黄色い警告バナーが表示されるようになりました。例:「データが不足しています(必要: 40件以上、取得: 21件)」

パラメータの矛盾(短期MA > 長期MA等)がある場合も警告が表示されます。

CSVで設定値を超えた損益率が出る

長期間指定なのに取引が少ない

  1. デバッグパネルの「Source」と「Rows」を確認
  2. Source が yfinance で Rows が少ない場合 → yfinanceの分足データ制約
  3. 対処: 日足に変更するか、J-Quantsを有効にする

「エラーが発生しました」と表示される


注意事項