ボリンジャーバンド取引戦略ガイド

概要

ボリンジャーバンドはボラティリティベースのテクニカル指標で、3本の線で構成されます:

  • 中央バンド: 単純移動平均 (SMA)
  • 上バンド: SMA + (標準偏差 × 乗数)
  • 下バンド: SMA - (標準偏差 × 乗数)

このガイドでは3つのシグナル戦略を扱います:タッチブレイクアウトスクイーズ

シグナルタイプの説明

1. BBタッチシグナル (平均回帰)

哲学: 価格は極端なバンドにタッチした後、平均に戻る傾向があります。

  • BB_BUY: 価格が下バンドにタッチまたは非常に接近
    • 解釈: 売られ過ぎ状態、上昇リバウンドの可能性
    • エントリー: 価格が下バンドから bb_touch_threshold 以内のとき
  • BB_SELL: 価格が上バンドにタッチまたは非常に接近
    • 解釈: 買われ過ぎ状態、下落の可能性
    • エントリー: 価格が上バンドから bb_touch_threshold 以内のとき

最適: レンジ相場、低ボラティリティ期間

2. BBブレイクアウトシグナル (モメンタム継続)

哲学: バンドを突破する強い動きはモメンタムの継続を示します。

  • BUY: 価格が上バンドを閾値分突破
    • 解釈: 強い上昇モメンタム、トレンド継続
    • エントリー: 価格が上バンドを bb_breakout_threshold 分超えたとき
  • SELL: 価格が下バンドを閾値分突破
    • 解釈: 強い下落モメンタム、トレンド継続
    • エントリー: 価格が下バンドを bb_breakout_threshold 分下回ったとき

最適: トレンド相場、高モメンタム動き

3. BBスクイーズシグナル (ボラティリティ収縮)

哲学: 低ボラティリティ期間(狭いバンド)は爆発的な動きの前兆です。

  • PUMP: バンドが収縮した後、価格が上向きに突破
    • 解釈: ボラティリティ圧縮後の上昇ブレイクアウト
    • エントリー: バンド幅 < bb_squeeze_width_threshold の後、上向き突破
  • CRASH: バンドが収縮した後、価格が下向きに突破
    • 解釈: ボラティリティ圧縮後の下落ブレイクダウン
    • エントリー: バンド幅 < bb_squeeze_width_threshold の後、下向き突破

最適: 大きな動きの予測、ボラティリティ取引

設定パラメータ

主要設定

# シグナル有効化
enable_bb_touch_signal: true # 平均回帰戦略
enable_bb_breakout_signal: true # モメンタム継続戦略
enable_bb_squeeze_signal: false # ボラティリティブレイクアウト戦略
# ボリンジャーバンドパラメータ
bb_period: 20 # SMAのルックバック期間
bb_deviation: 2.0 # 標準偏差乗数
# 閾値設定
bb_touch_threshold: 0.001 # タッチシグナルのための0.1%距離
bb_breakout_threshold: 1.01 # ブレイクアウトのためのバンド外1%
bb_squeeze_width_threshold: 0.02 # スクイーズのための2%バンド幅
# ブロードキャストシグナル
supported_volatility_action: ["BUY", "SELL", "PUMP", "CRASH"]
supported_volatility_action_broadcast:
  ["BUY", "SELL", "PUMP", "CRASH", "BB_SELL", "BB_BUY"]

パラメータ定義

パラメータ 説明 デフォルト値 範囲
bb_period 移動平均のためのローソク足数 20 10-50
bb_deviation 標準偏差乗数 2.0 1.5-3.0
bb_touch_threshold タッチシグナルのためのバンド距離 0.001 (0.1%) 0.0005-0.01
bb_breakout_threshold ブレイクアウトのためのバンド外 1.01 (1%) 1.005-1.05
bb_squeeze_width_threshold スクイーズのためのバンド幅% 0.02 (2%) 0.01-0.05

トレードスタイル別最適化設定

スキャルピング (高速エントリー/エグジット、高頻度)

時間枠: 1m, 3m, 5m
戦略焦点: タッチシグナル + 狭い閾値

# スキャルピング設定
bb_period: 15 # より速い反応
bb_deviation: 1.8 # より狭いバンド (より多くのシグナル)
bb_touch_threshold: 0.0005 # 0.05% - 非常に狭い
bb_breakout_threshold: 1.005 # 0.5% - 高速動き捕捉
bb_squeeze_width_threshold: 0.015 # 1.5% - 頻繁なスクイーズ
enable_bb_touch_signal: true # 主要戦略
enable_bb_breakout_signal: true # モメンタム・スキャルプの補助
enable_bb_squeeze_signal: false # スキャルピングには遅すぎる
# 推奨ブロードキャスト
supported_volatility_action: ["BB_BUY", "BB_SELL"]

根拠:

  • 短い期間は高速価格動きを捕捉
  • 狭いバンドはより多くのシグナル生成
  • レンジ相場での平均回帰に焦点
  • スクイーズ無視 (スキャルピング時間枠では遅すぎる)

デイトレード (イントラデイ、複数ポジション)

時間枠: 5m, 15m, 30m
戦略焦点: バランスの取れたタッチ + ブレイクアウトシグナル

# デイトレード設定
bb_period: 20 # 標準期間
bb_deviation: 2.0 # 標準バンド
bb_touch_threshold: 0.001 # 0.1% - 中間
bb_breakout_threshold: 1.01 # 1% - 標準
bb_squeeze_width_threshold: 0.02 # 2% - 標準
enable_bb_touch_signal: true # レンジ取引
enable_bb_breakout_signal: true # トレンドフォロー取引
enable_bb_squeeze_signal: true # ボラティリティ拡張捕捉
# 推奨ブロードキャスト
supported_volatility_action: ["BUY", "SELL", "BB_BUY", "BB_SELL", "PUMP"]

根拠:

  • 標準設定はイントラデイボラティリティに良好
  • すべてのシグナルタイプ有効化で多様な機会
  • ノイズフィルタリングとシグナル生成のバランス
  • スクイーズはイントラデイブレイクアウト捕捉に有用

スイングトレード (複数日保有)

時間枠: 1h, 2h, 6h
戦略焦点: ブレイクアウトシグナル + 広いバンド

# スイングトレード設定
bb_period: 20 # 標準期間
bb_deviation: 2.2 # やや広いバンド
bb_touch_threshold: 0.002 # 0.2% - 緩め
bb_breakout_threshold: 1.015 # 1.5% - より強い確認
bb_squeeze_width_threshold: 0.025 # 2.5% - 有意なスクイーズ
enable_bb_touch_signal: true # 低い優先度
enable_bb_breakout_signal: true # 主要戦略
enable_bb_squeeze_signal: true # 高い優先度
# 推奨ブロードキャスト
supported_volatility_action: ["BUY", "SELL", "PUMP", "CRASH"]

根拠:

  • 広いバンドは高時間枠でのノイズ低減
  • ブレイクアウトは複数日トレンドで信頼性高い
  • スクイーズは複数日動き捕捉に優れる
  • タッチシグナルは関連性低い (必要な偽シグナル少ない)

長期トレード (ポジション/投資)

時間枠: 6h, 1d
戦略焦点: スクイーズシグナル + 主要ブレイクアウト

# 長期トレード設定
bb_period: 25 # より長い期間 (日足で1ヶ月)
bb_deviation: 2.5 # 広いバンド (主要動きのみ)
bb_touch_threshold: 0.005 # 0.5% - 非常に緩め
bb_breakout_threshold: 1.02 # 2% - 強い確認
bb_squeeze_width_threshold: 0.03 # 3% - 相当な圧縮
enable_bb_touch_signal: false # タッチ無視
enable_bb_breakout_signal: true # 主要トレンドのみ
enable_bb_squeeze_signal: true # 主要戦略
# 推奨ブロードキャスト
supported_volatility_action: ["PUMP", "CRASH", "BUY", "SELL"]

根拠:

  • 長い期間は短期ボラティリティ平滑化
  • 広いバンドはノイズフィルタリング、主要動き捕捉
  • スクイーズは主要トレンド変化予測
  • タッチシグナルは長期時間枠で信頼性低い

時間枠別設定

超高速スキャルピング (1m, 3m)

bb_period: 12
bb_deviation: 1.5
bb_touch_threshold: 0.0003
bb_breakout_threshold: 1.003
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: false

使用例: 高頻度取引、マイクロ動き捕捉

標準スキャルピング (5m)

bb_period: 15
bb_deviation: 1.8
bb_touch_threshold: 0.0005
bb_breakout_threshold: 1.005
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: false

使用例: 余裕のあるアクティブスキャルピング

アクティブデイトレード (15m, 30m)

bb_period: 20
bb_deviation: 2.0
bb_touch_threshold: 0.001
bb_breakout_threshold: 1.01
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true

使用例: 標準イントラデイ取引、1日3-10トレード

スイングトレード (1h, 2h)

bb_period: 20
bb_deviation: 2.2
bb_touch_threshold: 0.002
bb_breakout_threshold: 1.015
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true

使用例: 複数日ポジション、トレンド相場

拡張スイング (6h)

bb_period: 24
bb_deviation: 2.3
bb_touch_threshold: 0.003
bb_breakout_threshold: 1.018
enable_bb_touch_signal: false
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true

使用例: 週間ポジション、主要動き

ポジショントレード (1d)

bb_period: 25
bb_deviation: 2.5
bb_touch_threshold: 0.005
bb_breakout_threshold: 1.02
enable_bb_touch_signal: false
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true

使用例: 月間ポジション、主要トレンド変化

ボラティリティアクションシグナル

シグナル優先度マトリックス

トレードスタイル 主要シグナル 補助シグナル すべてブロードキャスト
スキャルピング BB_BUY, BB_SELL BUY, SELL いいえ
デイトレード BUY, SELL, BB_BUY, BB_SELL PUMP, CRASH はい
スイング BUY, SELL, PUMP BB_BUY, BB_SELL, CRASH はい
長期 PUMP, CRASH BUY, SELL いいえ

ブロードキャスト設定

アグレッシブ (全シグナル)

supported_volatility_action_broadcast:
  ["BUY", "SELL", "PUMP", "CRASH", "BB_SELL", "BB_BUY"]

コンサバティブ (主要シグナルのみ)

supported_volatility_action_broadcast:
  ["BUY", "SELL", "PUMP", "CRASH"]

タッチシグナルのみ

supported_volatility_action_broadcast:
  ["BB_SELL", "BB_BUY"]

ベストプラクティス

1. 市場状況への適応

レンジ相場 (低ボラティリティ)

  • 有効化: enable_bb_touch_signal: true
  • 無効化: enable_bb_breakout_signal: false
  • 設定: 標準偏差 2.0、狭い閾値

トレンド相場 (高モメンタム)

  • 有効化: enable_bb_breakout_signal: true
  • 無効化: enable_bb_touch_signal: false
  • 設定: 標準偏差 2.2-2.5、広い閾値

ブレイクアウト前 (統合)

  • 有効化: enable_bb_squeeze_signal: true
  • 設定: 低いスクイーズ閾値 (0.015-0.02)

2. リスク管理

戦略 ストップロス テイクプロフィット リスク:リワード
タッチシグナル 中央バンド 反対バンド 1:2
ブレイクアウトシグナル エントリーバンド 2×バンド幅 1:3
スクイーズシグナル スクイーズ下/上 3×バンド幅 1:4

例 (タッチシグナル):

  • エントリー: 下バンドタッチ (BB_BUY)
  • ストップ: 下バンド下 (1%下)
  • 目標: 中央または上バンド
  • リスク: 1%、リワード: 2-4%

3. 複数時間枠の組み合わせ

トップダウン分析:

  1. 日足 (1d): 全体トレンドと主要スクイーズゾーン特定
  2. 4時間 (6h): トレンド方向と中間ブレイクアウト確認
  3. 1時間 (1h): エントリーシグナル発見 (タッチ/ブレイクアウト)
  4. 15分 (15m): 正確なエントリータイミング

ルール: 上位時間枠トレンドと一致するシグナルのみ使用。

4. 偽シグナルの低減

追加フィルタ:

  • 出来高確認: ブレイクアウトは高出来高必要
  • RSI確認: BB_BUY + RSI < 30, BB_SELL + RSI > 70
  • トレンドフィルタ: 50期間MA方向のみ取引
  • 時間フィルタ: 低流動性時間帯回避

例ロジック:

BB_BUYシグナル = TRUE IF:
  - 価格が下バンドの0.1%以内 AND
  - RSI < 35 AND
  - 出来高 > 20期間平均

5. 最適化ガイドライン

バックテスト手順:

  1. 標準設定から開始 (期間: 20, 偏差: 2.0)
  2. 3-6ヶ月過去データテスト
  3. 1つずつパラメータ調整
  4. 特定商品向け最適化 (暗号通貨、外為、株式)
  5. ライブ取引前1ヶ月フォワードテスト

主要メトリクス:

  • 勝率 > 50% (平均回帰)
  • 勝率 > 40% (ブレイクアウト、より大きな勝ち)
  • プロフィットファクター > 1.5
  • 最大ドローダウン < 15%

6. 避けるべき一般的なミス

しない: すべてのシグナルを盲目的に取引
する: トレンドと出来高でフィルタリング

しない: すべての時間枠に同一設定使用
する: 時間枠別パラメータ調整

しない: 全体市場トレンド無視
する: 上位時間枠方向と整合

しない: 過去データ過剰最適化
する: 堅牢でシンプルな設定維持

しない: 低流動性時間取引
する: アクティブ市場時間に集中

クイック参照表

時間枠 スタイル 期間 偏差 タッチ閾値 ブレイクアウト閾値 スクイーズ 優先シグナル
1m スキャルピング 12 1.5 0.0003 1.003 オフ BB_BUY/SELL
3m スキャルピング 15 1.8 0.0005 1.005 オフ BB_BUY/SELL
5m スキャルピング 15 1.8 0.0005 1.005 オフ BB_BUY/SELL
15m デイ 20 2.0 0.001 1.01 オン すべて
30m デイ 20 2.0 0.001 1.01 オン すべて
1h スイング 20 2.2 0.002 1.015 オン BUY/SELL/PUMP
2h スイング 20 2.2 0.002 1.015 オン BUY/SELL/PUMP
6h スイング+ 24 2.3 0.003 1.018 オン PUMP/CRASH
1d ポジション 25 2.5 0.005 1.02 オン PUMP/CRASH

サンプル設定ファイル

config_scalp.yaml

# 5分スキャルピング
bb_period: 15
bb_deviation: 1.8
bb_touch_threshold: 0.0005
bb_breakout_threshold: 1.005
bb_squeeze_width_threshold: 0.015
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: false
supported_volatility_action: ["BB_BUY", "BB_SELL"]
supported_volatility_action_broadcast: ["BB_BUY", "BB_SELL"]

config_day.yaml

# 15分デイトレード
bb_period: 20
bb_deviation: 2.0
bb_touch_threshold: 0.001
bb_breakout_threshold: 1.01
bb_squeeze_width_threshold: 0.02
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true
supported_volatility_action: ["BUY", "SELL", "BB_BUY", "BB_SELL", "PUMP"]
supported_volatility_action_broadcast: ["BUY", "SELL", "PUMP", "CRASH", "BB_SELL", "BB_BUY"]

config_swing.yaml

# 1時間スイングトレード
bb_period: 20
bb_deviation: 2.2
bb_touch_threshold: 0.002
bb_breakout_threshold: 1.015
bb_squeeze_width_threshold: 0.025
enable_bb_touch_signal: true
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true
supported_volatility_action: ["BUY", "SELL", "PUMP", "CRASH"]
supported_volatility_action_broadcast: ["BUY", "SELL", "PUMP", "CRASH"]

config_position.yaml

# 日足ポジショントレード
bb_period: 25
bb_deviation: 2.5
bb_touch_threshold: 0.005
bb_breakout_threshold: 1.02
bb_squeeze_width_threshold: 0.03
enable_bb_touch_signal: false
enable_bb_breakout_signal: true
enable_bb_squeeze_signal: true
supported_volatility_action: ["PUMP", "CRASH", "BUY", "SELL"]
supported_volatility_action_broadcast: ["PUMP", "CRASH"]

結論

ボリンジャーバンドは適切に設定すればすべての時間枠で機能する多用途な指標です。主要ポイント:

  1. トレードスタイルに合わせて設定:スキャルピングは狭く、長期は広く
  2. 正しいシグナルタイプ選択:レンジはタッチ、トレンドはブレイクアウト、ボラティリティはスクイーズ
  3. 他の指標と組み合わせ:出来高、RSI、トレンドフィルタ
  4. 徹底的なバックテスト:特定市場と時間枠向け最適化
  5. リスク管理:常にストップロスとポジションサイジング使用

標準設定から始め、結果に基づいて徐々に最適化してください。トレードに幸運を!

📎 Related Topics