インパルスのカウント方法、時間枠の長さがすべてを左右する理由、インパルスを見送ることで注文フローが有害とみなされなくなる理由、そしてインパルスに基づく自動売買戦略の構築、フィルタリング、最適化の方法。
インパルス取引戦略は、短時間に集中して発生する価格変動の方向へエントリーします。その急変がノイズではなく、値動きの目に見える始まりであるという前提に基づきます。確定足のインジケーターを読み取る代わりに、インパルスシステムは短い時間枠の中で個別の価格インパルスを数えます。十分な数が同じ方向を向いているか、無視できないほど大きいかを確認し、そのまとまりを方向性シグナルとして扱います。この手法の成否は、時間枠の長さ、最低インパルス数、最低インパルス幅、シグナルとエントリーの間に行う処理という4つの数値に左右されます。
ここでいうインパルスとは、短時間に発生し、その銘柄の直近の通常の値動きより明確に大きい、個別の一方向への価格変動です。チャートパターンではなく、市場のミクロ構造上の出来事です。戦略が直接測定できる3つの特性があります。
| 特性 | 測定するもの | 重要である理由 |
|---|---|---|
| 方向 | 価格が上昇したか下落したか | 複数のインパルスが同じ方向を向いている場合にのみ意味を持つ |
| 大きさ | ポイントまたはPips単位での変動幅 | すべての価格フィードが継続的に生成する細かな揺れを除外する |
| タイミング | 観測時間枠内のいつ発生したか | 10分間に分散したインパルスは集中した急変ではない |
ローソク足ではなくインパルスを使用する理由は、情報の解像度です。1分足は、その1分間に起きたすべてを4つの価格へ圧縮します。そのため、高速で一方向へ動いた後にゆっくり戻った場合と、ゆっくりと一方向へ進んだ場合が同じように見えます。値動き自体を数えることで、ローソク足が捨てる情報を維持できます。
インパルス取引はモメンタム取引とブレイクアウト取引の中間に位置し、そのどちらかとして誤って分類されることがよくあります。違いは学術的なものではなく実務的なものであり、何を測定し、いつエントリーするかが変わります。
| 手法 | トリガー | 一般的な時間軸 | 主な失敗要因 |
|---|---|---|---|
| インパルス取引 | 短い時間枠内で高速かつ一方向に発生する複数の価格変動 | 数秒から数分 | 基準値が緩すぎる場合にノイズへ反応する |
| ブレイクアウト取引 | 価格が定められた水準またはレンジ境界を超える | 数分から数時間 | 分かりやすい水準でのダマシ |
| モメンタム取引 | 確定足上のインジケーター値(変化率、オシレーター) | 数分から数日 | 遅延により値動きの後でシグナルが発生する |
| 平均回帰 | 平均からの乖離と平均への回帰予測 | 任意 | 本物のトレンドに逆らう |
インパルス取引と平均回帰は、基本的な前提が正反対である点に注意してください。平均回帰では急激な値動きを、いずれ戻る過剰反応と考えます。インパルス取引では、急激な値動きを今後も継続する情報と考えます。どちらも異なる局面では正しいため、以下で説明するフィルターはエントリーロジックそのものより重要です。
有効なインパルスシグナルは、複数条件の組み合わせです。新しい価格が届くたびに継続的に評価され、それぞれの条件が特定の種類の誤検知を除外します。
# 1. 観測時間枠:どこまで遡って数えるか window = 60 seconds # 2. 数の条件:同じ方向を向く必要があるインパルス数 impulses_up >= min_count # 例:3または4 # 3. 大きさの条件:各インパルスが数えるに値する大きさであること impulse_size >= min_size # 銘柄ごとのポイント単位 # 4. 優勢性:時間枠内で上下が均衡していないこと impulses_up > impulses_down # 4つの条件がすべて成立すると、その時間枠をインパルスイベントとして分類し # 戦略はロングエントリーの準備を行う。
時間枠は最も大きな影響を与える単一のパラメーターです。短すぎると必要数へ到達するだけの証拠が集まらず、戦略がまったく取引しないか、偶然一致した2つの動きで取引します。長すぎると、その時間内の異なる場面で発生した無関係な値動きが一緒に数えられ、すでに勢いを失った動きへ買いで入る結果になります。
| 時間枠 | 動作 | 適した対象 |
|---|---|---|
| 10~30秒 | 非常に反応が速く、シグナルが多い一方、誤検知も多い | 高ボラティリティ銘柄、厳格なリスク管理、素早い決済 |
| 1分 | ほとんどの銘柄に適したバランスのよい開始点 | 金、指数、主要通貨ペア |
| 2~5分 | シグナルは少ないが確度が高く、エントリーは遅くなる | 動きの遅い銘柄やスイング型のポジション保有 |
最低インパルス幅は、すべての銘柄に共通する数値ではなく、銘柄に応じて設定する必要があります。金にとって意味のある値動きでも、指数では背景ノイズにすぎず、低ボラティリティの通貨ペアでは大きな出来事になる場合があります。実用的な方法は2つあります。銘柄ごとに固定ポイント数を設定して四半期ごとに再確認する方法と、Average True Rangeなどのボラティリティ指標に連動させ、状況の変化に応じて調整する方法です。固定方式は理解しやすく、最適化も容易です。適応方式は相場環境の変化に強くなります。
時間枠がインパルスイベントとして分類されると、単純な実装ではただちにポジションを開きます。しかし、2つの異なる理由から、それが最善であることはほとんどありません。
1つ目は価格です。急変の終盤は最も不利な約定タイミングです。通常、スプレッドが最も広く、ほかの参加者が避けた価格で約定することになります。意図的に短時間待つことで、注文送信前にスプレッドが正常化する時間を確保できます。
2つ目は注文フローの特徴です。高速な価格変動から数ミリ秒以内に継続的に届く注文フローには特徴的な形があり、ブローカー側の注文執行品質システムはその形を認識するよう設計されています。トリガーとエントリーの間に遅延を設け、その長さを変化させることで、注文フローは通常の方向性取引のように見えます。これが約定へ与える影響については、ブローカーが実際に価格を決定し、注文を約定する仕組みで解説しています。
この部分が、戦略を個人口座で長期間運用できるかどうかを決めます。ブローカーは戦略が利益を上げているという理由で注文をフィルタリングするのではありません。価格が動いている最中に届く注文をフィルタリングします。取引環境が更新を終えていない価格で、そのような注文が約定するからです。これが実務上の「有害な注文フロー」です。つまり、価格がまだ動いている数ミリ秒の間に、ブローカーの負担で古い価格から約定を得ることです。
ここで説明するインパルス戦略は、その反対を行います。インパルス自体は取引しません。観測して数え、意図的に見送ります。値動きの最中には注文が存在しません。急変が終わり、数秒が経過した後に初めて注文を送信します。その時点では、通常の方向性取引と同様に現在の市場価格で約定します。古い価格もレイテンシー上の優位性もなく、注文執行フィルターが反応する特徴もありません。
実際の注文フローは、その実態どおりに見えます。つまり、値動きを確認し、待ってからエントリーしたトレーダーです。このため遅延は、戦略に課された妥協ではありません。遅延があることで、ブローカーが実際に価格を決定し、注文を約定する仕組みで説明した対策を引き起こさず、通常の口座で戦略を運用できます。
遅延後、インパルス戦略には「市場がシグナルへ同意した」状態を定義するルールが必要です。合理的な答えは2つあり、それぞれ急変直後に起こることについて反対の考え方を表します。
確認エントリーエントリー前に、価格がシグナル方向へさらに定められた距離、たとえば10ポイント進むのを待ちます。市場が動き続けた場合にのみシグナルを受け入れます。 考え方:本物の値動きはすぐに継続する。 |
押し目・戻りエントリー価格がシグナルと反対方向へ定められた距離、たとえば10ポイント動くのを待ち、その価格で元の方向へエントリーします。 考え方:インパルスの方向は正しく、直後の反転はノイズである。 |
2つのモードは交換可能ではなく、銘柄ごとに異なる結果を示します。急変後に明確なトレンドが続く銘柄では確認エントリーが有利です。行き過ぎた後にすぐ戻る銘柄では押し目・戻りエントリーが有利です。その他の条件を一定にして同じデータで両方をテストすることが、銘柄の現在の相場環境を把握する最速の方法です。
インパルスエントリーでは、決済時に特有の問題が生じます。エントリーのタイミングがボラティリティの急上昇に合わせられるため、通常の距離に固定ストップを置くと、シグナルを発生させた同じ急変の余波で決済される可能性が高くなります。このため、3つのルールが必要です。
第1に、口座全体の初期設定ではなく、シグナルを発生させたボラティリティに基づいてストップ幅を決めます。第2に、インパルスの継続が成功した場合、固定目標よりも長く動く傾向があるため、テイクプロフィットは主な決済手段ではなく上限として使用します。第3に、実際の利益確保はトレーリングストップに任せます。定められた値幅の後に作動し、決められた距離で追従するトレーリングストップが、時折発生する大きなインパルスの継続を、誤ったシグナルの損失を補う取引へ変えます。実際には、エントリーパラメーターではなくトレーリングパラメーターが、利益の小さいインパルスシステムと収益性のあるシステムを分けることが一般的です。
インパルス検出は意図的に敏感に設定されるため、リスク管理はフィルターが担います。特に重要な4つは次のとおりです。
| フィルター | 除外するもの |
|---|---|
| ボラティリティフィルター | 銘柄の通常の値動きがすでにインパルス基準値を上回り、すべての時間枠が急変に見える状況で生成されたシグナル |
| ニュースおよびフィードイベントフィルター | 予定された発表や価格フィードの異常時のエントリー。こうした急変は方向性の意図ではなく、データ発表や価格の空白を反映している |
| 取引時間フィルター | 市場参加が実際には存在しないにもかかわらず、少数の価格更新だけで必要数へ達する閑散時間帯のシグナル |
| スプレッドフィルター | スプレッドが最も広い瞬間のエントリー。これはインパルスシステムが最も取引したくなるタイミングでもある |
インパルスの基準値はほかの環境へそのまま移せません。同じ戦略でも、2つの口座では異なる市場像が見えます。価格フィードの粒度、価格更新頻度、一般的なスプレッド、注文執行レイテンシーが取引環境ごとに異なるためです。あるフィードで1日4回のシグナルを生成する基準値が、別のフィードでは40回生成する可能性があります。
このため、最適化は改善策ではなく必須条件となり、テスト環境の品質が決定的に重要になります。インパルスロジックをローソク足データで最適化することには、ほとんど意味がありません。数えるべき出来事はローソク足の内部で発生するからです。有効なテストには、実際のティック履歴、モデル化された注文執行遅延、固定値ではなくティックごとに適用される過去のスプレッドが必要です。当社の手法については、設定可能な注文執行レイテンシーを使用して実際のティックストリーム上で動作するSharpTrader Backtester and Optimizerで説明しています。
パラメーターの組み合わせを管理可能に保つ実用的な手順は次のとおりです。
| 段階 | 最適化する項目 | 固定する項目 |
|---|---|---|
| 1 | インパルスパラメーター:時間枠、最低数、最低幅 | 決済とフィルターを妥当な初期値に固定 |
| 2 | トレーリングパラメーター:作動距離と追従距離 | 段階1で得られたインパルスパラメーター |
| 3 | ストップロスとテイクプロフィット | インパルスおよびトレーリングパラメーター |
| 4 | フィルター:ボラティリティ、取引時間、スプレッド | 上記のすべて |
4つの段階を同時に実行すると、組み合わせが数十万に達し、特定の2週間へ過剰適合した結果になることが一般的です。段階的な最適化なら各テストを解釈可能に保ち、わずかな時間で完了できます。
インパルスロジックには、実際に集中した急変を生み出す銘柄が必要です。金と株価指数は最も適しています。どちらも集中した動きを示し、一方向への複数の値動きが実際の注文フローを反映するだけの十分な市場参加があるためです。主要通貨ペアでも機能しますが、シグナルの頻度と目標値幅は小さくなります。流動性が低く動きの遅い銘柄は適していません。インパルス基準値へまったく到達しないか、実際の取引ではなく価格更新の異常によって到達するからです。
期待外れの結果の大部分は、4つの失敗パターンによって生じます。インパルス幅の基準値が低すぎるため、通常の細かな揺れまでインパルスとして数え、システムが常に取引すること。ローソク足データで最適化し、戦略が実際には取引しない環境を表すパラメーターを生成すること。トリガー直後にエントリーし、支払うスプレッドと注文フローの目立ちやすさを最大化すること。そして、他人のパラメーターを再利用することです。これは他人の眼鏡を使うのと同じです。相手のブローカー、相手の価格フィード、相手のレイテンシーに合わせた設定だからです。
ここまでの内容はロジックを説明しています。無人で稼働するシステムへ変えるには、概念的というよりも手間のかかる部分を処理する必要があります。複数銘柄にわたる継続的なインパルスのカウント、設定可能な遅延、両方のエントリーモード、トレーリング管理、個別に切り替えられるフィルターです。TrendPulseはこれらを実装し、すべての基準値をパラメーターとして公開しています。固定されたブラックボックスとして提供するのではなく、銘柄およびブローカーごとに最適化できます。
インパルス取引戦略は、短時間に集中して発生する価格変動の方向へエントリーします。固定時間枠内の個別の価格インパルスを数え、同じ方向を向く複数のインパルスが数と大きさの両方の基準値を超えた場合に、方向性のあるエントリーシグナルとして扱います。
モメンタム取引は確定足上のインジケーターを読み取るため、その時間軸で値動きが確認された後にシグナルが発生します。インパルス取引は数秒間の時間枠内で価格変動そのものを測定するため、値動きの開始時に反応します。解像度と信頼性の間にトレードオフがあり、インパルスシグナルは早い一方でノイズも多くなります。
1分間に同じ方向を向く3つまたは4つのインパルスが一般的な開始値です。適切な数は銘柄と価格フィードによって異なります。より細かな価格更新を配信する取引環境では、同じ実際の価格変動でも多くのインパルスが記録されるため、設定をコピーするのではなくブローカーごとに基準値を調整する必要があります。
通常は避けるべきです。急変の終盤はスプレッドが最も広く、約定も最も不利になります。また、高速な価格変動から数ミリ秒以内に継続的に届く注文フローは、ブローカー側で簡単に識別できます。エントリー前の短い遅延は約定を改善し、注文フローの特徴を通常化しますが、本当に速い値動きでは数ポイントを逃すことになります。
確認エントリーは、価格がシグナル方向へさらに定められた距離を動くまで待ち、継続しないシグナルを除外します。押し目・戻りエントリーは、価格がシグナルと反対方向へ戻るのを待ち、元の方向へエントリーします。勝率の低下を受け入れる代わりに、より有利な価格と狭いストップを得られます。
インパルス自体を見送る場合、そのようには扱われません。有害な注文フローとは、価格が変動している間に、取引環境が更新を終えていない価格で約定する注文です。この設計のインパルス戦略は、値動きの最中に注文を送りません。急変を観測して見送り、数秒後に現在の市場価格でエントリーします。約定に古い価格やレイテンシー上の優位性がないため、通常の方向性取引と区別できません。
実際のティックデータを使用する場合に限られます。インパルス戦略が数える出来事はローソク足の内部で発生するため、ローソク足ベースのテストでは確認できず、存在しない環境を表すパラメーターが生成されます。有効なテストには、ティック履歴、ティックごとに適用される過去のスプレッド、モデル化された注文執行遅延が必要です。
実際の市場参加を伴って集中した急変を示す銘柄です。最初に金と株価指数、次にシグナル頻度が低い主要通貨ペアが適しています。流動性が低い銘柄や動きの遅い銘柄は、基準値へまったく到達しないか、実際の注文フローではなく価格更新の異常によって到達するため適していません。
新しい記事、リサーチペーパー、製品リリースを公開時にお届けします。
TrendPulseはインパルス検出、遅延エントリー、両方の確認モード、トレーリング管理を実装しています。すべての基準値を、ご利用のブローカーに合わせて最適化できます。