記事の目次

根拠と適用範囲

元の情報源では、追加条件付きのFVG検出器が公開されています。この記事では、基本的な形状と提案されたフィルタを分けて説明しており、充填率や取引収益性については独自に検証していません。

データと市場ティックサイズと一貫したセッション処理を伴うOHLCを使います。ゾーン内の実際の約定を調べたり、精密な出来高プロファイルを作ったりするには個々の取引記録が必要です。
研究対象の時間足選択した任意のバー間隔を調査できますが、上位時間足のゾーンは、上位時間足の3本目のローソク足が完成した後でなければ調査対象になりません。
100と101.20の境界はFVGを形成し、その後のリターンは、例示的な応答の前に100.50に到達します。図解を原寸で開く
A/B/C極値を用いた合成イベントパスであり、実際のローソク足の終値のシーケンスではありません。FVGは100~101.20の範囲に及び、バックテストは表示されていません。

実践の流れ

実践手順: 公正価値ギャップ:3本のローソク足の形状、ゾーンのライフサイクル、および実行可能な再テスト
詳しい手順を以下に示します。各段階でデータ不足や条件不成立があれば、除外理由を記録します。
  1. キャンドルCを完成させる3本のローソク足の形状を把握しておく必要がある。
  2. 固定境界を公開する元のゾーンと使用可能になる時刻を保存します。
  3. トラッキングインタラクションフラグ部分的なタッチ、中間的なタッチ、完全なタッチを区別する。
  4. エントリーモデルを1つ適用する中点に待機する指値注文か、後の終値確認を使います。
  5. 成果を期間別に測定する無効化、未約定、観測期間が未完了の打ち切りゾーンも残します。

このラベルは公正価値を定めるものではありません

連続するローソク足A、B、Cについて、Cの安値がAの高値を上回っている場合、強気のFVGが成立します。これらの価格間の間隔がゾーンを形成します。ローソク足Bは間隔全体にわたって取引されている可能性があるため、OHLCでは、その区間で取引が発生しなかったとは断言できません。実際の空価格の観測には、取引レベルのデータが必要です。

LuxAlgoの公開検出器は中央の足の終値条件と閾値を加えています [1]。本稿の最小モデルは形状を先に記録し、中央足の終値、急な価格変位、BOSの各条件は別の版として扱います。これにより、フィルターに追加価値があるのか、単に描画する矩形が減っただけかを調べられます。

3本のローソク足で構成されるFVGは、オーバーナイトギャップとは異なります。前者はバー間の関係性を表し、後者はセッション間の不連続性を表します。両者が重なる場合は、共通のメカニズムを持つかのようにフィル統計を統合するのではなく、gap_sessionフラグを保持してください。

3本目のローソク足の後にゾーンを公開します

強気ゾーンの場合は、L[t]>H[t−2] を要求し、[H[t−2],L[t]] を保存します。弱気ジオメトリの場合は、H[t]<L[t−2] を要求し、[H[t],L[t−2]] を保存します。完成したバーを使用します。提案されているサイズフィルタは width≥max(2 ticks,0.15ATR[t−1]) です。拒否された小さなゾーンが監査可能になるように、raw_fvg と eligible_size を個別に保存します。

zone_id、created_at、およびeligible_from=t+1を作成します。価格がゾーンに入った後も、元の境界を両方とも固定します。チャートには縮小していく未塗りつぶしの残余領域が表示される場合がありますが、residual_zoneを別々に保存して、元のエントリとストップを書き換えられないようにします。幅をATR単位で記録し、作成時に判明している経過時間、方向、およびトレンドのコンテキストを記録します。

強気ゾーンの場合、部分的な接触は価格が区間に入ったことを意味し、midpoint_touchはlow≤midpointを意味し、full_fillはlow≤zone_lowを意味します。これらは相互作用フラグです。提案されている無効化はclose<zone_low−bであるため、完全なヒゲの充填は自動的に無効化されるわけではありません。ヒゲ無効化ポリシーは別の実験です。

既存の保留注文のイベント優先順位を定義します。後のバーが中間点に触れ、ストップを突破し、ゾーンを下回って終値をつける可能性があります。バー内約定前に終値に基づく無効化処理を行うと、損失トレードが誤って削除されてしまいます。可能な場合はシーケンスを再生するか、文書化された保守的な慣例を適用してください。

この基準版では無効化と保護の幅を b=max(2 ticks,0.05×pre-creation ATR) として固定します。zone_high を超える終値確認には reclaim_margin=one tick を使います。異なる幅は研究上の選択です。例のティック0.05、ATR 2では b=0.10、reclaim_margin=0.05 です。擬似コードは既存注文の約定を終値での取消より先に処理し、一貫して現在のバー番号を使います。

新規エントリーを生むのは ACTIVE のゾーンだけです。EXPIRED と INVALIDATED は終端状態で、後の回復終値で復活させません。事前登録した初回接触または有限回試行の規則に従い、シグナルが出たら試行枠を消費します。終値による取消でも、すでに生じた約定は消せません。

on_completed_bar(t):
  process_resting_order_events_up_to_close(t,respect_order_expiry=True)
  for zone in active_zones_published_before_bar(t):
    if t > zone.created_at+20:
      zone.state = EXPIRED; cancel_future_orders(zone); continue
    record_partial_mid_full_touches(zone.original_bounds,t)
    if C[t] < zone.low-zone.b:
      zone.state = INVALIDATED; cancel_future_orders(zone); continue
    evaluate_registered_entry_version_after_received_close(zone,t)
    # The registered attempt policy consumes or keeps an otherwise active zone.
  A = ATR14[t-1]
  if not finite_positive(A) or not valid_three_bar_history(t): return
  if L[t] > H[t-2] and L[t]-H[t-2] >= max(2*tick,0.15*A):
    create(zone=[H[t-2],L[t]],known_at=received_close_time(t),
           eligible_from=t+1,b=max(2*tick,0.05*A),reclaim_margin=tick)
# Fills of existing orders precede close-based cancellation.
# The creation candle is never its own post-publication retest.

インパルスとリターンを別々に測定する

形状によるFVG検出に出来高は必須ではありません。提案例の一つは中央足の出来高を同時間帯の中央値と比較し、別の例は戻り区間の出来高と急変区間の出来高を同じ長さで比較します。ニュースショック中のゾーンは通常時と異なる可能性があるため、イベントの状況も残します。

エントリー時の出来高プロファイルには、その時点までに利用できた取引だけを含めます。中央足の大出来高はFVGと矛盾せず、その価格区間で過去に相当量が取引されている場合があります。FVG、低出来高ノード、注文板の不均衡は異なる特徴です。

最終的に埋まった割合は、作成時の特徴テーブルではなく、結果テーブルに含めるべきである。ゾーンの将来の履歴全体を使って、ゾーンが誕生時に魅力的であったかどうかを判断するのは、情報漏洩である。無効になったゾーンを削除した後もチャート上に残るゾーンのみを選択する場合も、同様の制約が適用される。

合成中間点、完全充足例、および損失例

高値 A=100 と低値 C=101.20 とする。ゾーンは [100,101.20] で、中点は 100.60 である。ATR=2 と tick=0.05 の場合、幅 1.20 は提案された最小値 0.30 を超える。ゾーンは C が閉じた後にのみ存在する。低値 100.50 と閉値 101.30 による後の戻りは、区間を完全に埋めることなく中点に到達する。

確認版が zone_high+0.05 を上回る終値を要求するとします。その後101.35で実際に買え、ストップ99.90、目標104.25なら、リスク1.45、リワード2.90、コスト控除前2Rです。保護ストップ発動より先に目標価格で執行可能になって初めて、勝つ可能性のある経路となります。

別の戻りが安値99.60、終値99.70なら、ゾーン全体を埋め、かつ無効化します。終値確認版はそのバーを根拠に入るべきではありません。一方、100.60の中点買い指値がすでに待機していれば、約定後99.90より下で損切りされた可能性があります。最終終値を見てからその約定を消してはいけません。TTLまでに価格が戻らなければ、勝敗を作らず未約定として記録します。

中点指値と終値確認は異なる取引

中間指値注文は、ゾーンが公開された後にのみ注文を出します。スプレッド、キュー、タッチ・バーサス・フィルモデルが必要です。確認注文は、ゾーンへのエントリーと、その上限を上回る強気終値を待ちます。エントリーは通常より高い価格になりますが、価格反応は既に確認済みです。指値注文の有利な価格と確認注文の事後的な選択性を組み合わせないでください。

提案されたベースラインは、TTL=20 バーと、最初の有効な再テストのみを使用します。作成中のローソク足のタッチは、公開後の取引可能な再テストではありません。上位時間足の FVG は、フィードタイミング [2] に従って、その時間足の終値を待つ必要があります。

端点外のストップはリスクモデルの一つであり、構造的なスイングストップは別のリスクモデルです。実際の注文タイプ[3]をシミュレートします。固定された2R、以前の既知の高値、および時間による決済は、それぞれ別の統計情報を持つ必要があります。まだ存在しない反対のFVGは、意図した将来のターゲットとして選択できません。

重複するゾーンについては、決定論的な選択が必要です。最新の適格ゾーン、最も近い境界、または明示的に結合された区間のいずれかを選択します。この決定を保存してください。後で最適なエントリーポイントを提示する中間点を選択すると、個々のゾーンが因果的に計算された場合でも、隠れた選択が発生します。

ギャップが埋まる確率と収益性は異なる

充足確率を示す際は10,20または50バーなど観測期間を定めます。データ末尾近くの新しいゾーンは、古いゾーンほど長く観測されていません。観測期間が未完了なら、未充足と断定せず打ち切りデータとして記録します。部分接触、中点到達、完全充足までの時間は別々に報告します。

FVGを、幅、価格からの距離、トレンドが一致する合成ゾーンと比較します。多くの価格が再訪されるため、高いタッチ率はこのジオメトリに特有のものではない可能性があります。最初のタッチ後の反応と、実行可能なエントリー後のリターンを測定します。

近傍の閾値、TTL、初回対二回目の接触規則を、現実的なコストと未約定も含めて検証します。まれな戻りを待つ戦略は資金全体の収益と取引しない日も含めます。戻りが目標方向へ動く前にストップへ達しやすければ、ゾーン充足率が高くても成績は悪くなり得ます。

よくある落とし穴

取引が行われなかったと仮定する

中央の足は、その価格区間全体を通って取引されていた可能性があります。

相容れない参入上の利点を組み合わせる

中間値指値と確定終値は、同じ情報や約定経路を持ちません。

高い充填率を優位性として扱う

接触確率だけでは、参入後の純利益については何も分からない。

この手法を使う前のチェックリスト

ご自身のデータで確認した項目にチェックを入れてください。進捗はこのブラウザに保存されますが、戦略の収益性を認定するものではありません。

0/7 項目

よくある質問

すべてのFVGは必ず埋まりますか?

定義からそのような保証は得られない。測定された確率には、固定された期間、完全なサンプル、および「充填」の意味の明示が必要である。

ヒゲが反対側の境界を超えたらゾーンは無効ですか?

本稿の終値基準では、ヒゲだけでは無効になりません。ヒゲ基準の無効化は別版として検証します。

研究資料

各資料は、その横に記載された定義や根拠を支えています。擬似コード、架空の例、提案パラメータは別途検証が必要です。

  1. Fair Value GapLuxAlgo on TradingView. 公開検出条件を読んだ範囲。ゾーン充足率を独立に検証していません。 確認日: .
  2. RepaintingTradingView. 未確定データに関する文書を読んだ範囲。 確認日: .
  3. Futures Order TypesCME Group. シグナルと約定を区別するため、取引所の注文動作を読んだ範囲。 確認日: .

関連する手法

リスクについて

この内容は学習と研究設計を目的とし、金融上の助言ではありません。Backtestは過去データのシミュレーションであり、将来の成果を保証せず、実際の売買注文も行いません。このライブラリの手法が、そのままアプリで利用できる機能とは限りません。関連情報: 検証方法 および 学習センター.

実際の資金を使う前にルールを検証する

アプリの対応範囲、データ、個々の模擬取引を確認してください。高度な検出手法は別途実装が必要な場合があります。

App StoreでBacktestをダウンロード