資料とデータへ
ORIGINAL REPORT ANALYSIS

Data specification and alignment

研究リポジトリの記録をサイト上で表示しています。

元のMarkdown

Data specification and alignment

売買・バックテスト対象はMNQ。MESはSMT判定の参照市場であり、MESの約定損益は計算しない。取得状況の公開用集計は results/summary/data_inventory.json に保存し、元の価格バーは配布しない。

SMTの分析可能期間は両系列の共通時刻のみ。欠損バーは補間しない。

現行データ(2026-09-28更新)

用途系列本数NY現地時間の終点
MNQ売買・バックテストDatabento 5m122,5772026-09-25 16:55
MNQ追加分の原資料Databento 1m(9/18以降のみ)7,3602026-09-25 16:59
MES SMT参照Databento 1m611,2392026-09-25 16:59
MES SMT参照完全な1分足5本から集約した5m122,1102026-09-25 16:55
  • 分析終点は完了済みの2026-09-25 NY取引日。MNQ/MESの時刻一致5分足は121,858本、MNQのみ719本、MESのみ252本。全取得状況とSHA256は results/summary/data_inventory.json と data/raw/manifest.json。
  • MNQは旧2026-09-18 09:25までの実限月コード付き5分足に、Databento MNQ.c.0 と満期金曜の MNQ.c.1 から集約した1,470本を連結。旧ファイルは保持し、新系列は data/raw/mnq_5m_databento_2025-01-01_2026-09-26.csv。ローダーは実限月の切替点から先にのみ価格差を加算する。
  • MESは旧2026-09-23 19:59までの1分足に9/25まで2,640本を追加。9/18満期金曜09:30〜16:59は MES.c.1 の450本を補い、以後の12月限に MESZ6 を付した。最終系列は data/raw/MES/mes_1m_databento_20250101_20260926_expiryfill.csv とその5分足。9/18以前のMESには実限月コードがないため、それ以前のロールは復元していない。
  • 追加API見積額は初回MNQ/MES約$0.0365、MES限月補完約$0.0016。MNQの保存前検証で列形式不一致が起き、追加MNQ照会を1回行ったため、実請求は見積額合計より高くなり得る。価格CSVはサイトやGitへ公開しない。
  • MNQの全期間1分足は未保存のため、全期間の3分足SMTは引き続き計算しない。旧TradingView MESは比較資料専用で、現行主パイプラインはDatabento MESを使用する。

以下の旧スナップショット節は取得履歴として残す。現在のソースと期間は上記および設定ファイルを参照。

旧スナップショット: TradingView MES系列

FieldMNQMES
SourceDatabento GLBX.MDP3TradingView export
ContinuousTrue MNQ.c.0unknown
Local SMT-source interval5m5m
Rollovervendor continuous mapping, local forward-only gap adjustmentunknown
Back adjustmentvendor none; local forward-onlyunknown
Contract columnsymbolmissing
TimezoneAmerica/New_York, DST-awareAmerica/New_York, DST-aware
SessionETHunknown
Coverage2025-01-01 18:00:00-05:00 .. 2026-09-18 09:25:00-04:002026-04-05 18:00:00-04:00 .. 2026-09-15 21:15:00-04:00
Missing volume bars032140
Duplicate bars0 (loader rejects duplicates)0 (loader rejects duplicates)

Alignment quality

  • MNQ-only bars in overlap: 0
  • MES-only bars in overlap: 276
  • Exact matched bars: 31864
  • Timestamp mismatches / unmatched bars: 276
  • Missing ratio (union denominator): 0.8587%
  • Overlap UTC: 2026-04-05T22:00:00+00:00 .. 2026-09-16T01:15:00+00:00

SMT availability

Computed: 5m, 10m, 15m, 30m, 60m, 90m, 4h, 1d, 1w. Unavailable: {'3m': 'requires source bars dividing 3m; current=5m'}. 5m系列から3mを再構成しない。

追加取得済みMESの仕様と感度分析は以下に記録。 元データ・Pine本文はライセンスによりGit管理外。

Data source docs: https://databento.com/docs/examples/symbology/continuous

旧スナップショット: 2026-09-25取得のMES Databento系列

  • 取得日: 2026-09-25。取得元: Databento GLBX.MDP3、ohlcv-1m、継続シンボル MES.c.0。期間: 2025-01-01 以上、2026-09-24 未満(UTC)。実際のバーは 2025-01-01 23:00〜2026-09-23 23:59 UTC。
  • 保存先: data/raw/MES/mes_1m_databento_20250101_20260924.csv(608,149本)、完全な5本からのみ集約した data/raw/MES/mes_5m_databento_20250101_20260924.csv(121,492本)。SHA256とAPI見積額 $2.220220938325 は data/raw/manifest.json に記録。
  • 時刻は America/New_York(DST対応)。取得対象は継続先物の全取引時間帯(ETH相当)で、RTHへの限定はしていない。Databentoの期近継続先物マッピングを使用し、ベンダー側のバックアジャストは指定していない。ロール基準の詳細は未検証。
  • symbol と contract 列には MES.c.0 が入る。実限月コードではないため、このファイル単独で限月切替時刻を復元・検証できない。MNQ既存ファイルとはこの点が異なる。
  • 1分足の重複時刻、欠損値、OHLC不整合、非正出来高は各0件。取得時、Databentoは一部日付の品質低下を警告(例: 2025-09-17、2025-09-24、2025-11-28。全対象日リストは未照会)。欠損バーの補間は行っていない。
  • 既存MNQ 5分足との共通期間 2025-01-01 23:00〜2026-09-18 13:25 UTCでは、時刻一致120,388本、MNQのみ719本、MESのみ252本、union欠損率0.8001%。旧TradingView MESとの上記分析結果には混ぜていない。
  • 当時の旧MESとの感度比較は reports/mes_source_comparison.md に保存。現行主パイプラインには上記の更新済みDatabento MESを採用した。3m SMTにはMNQ側の全期間1分足も必要。

確定SMT後の最初のシグナル検証

  • scripts/run_first_signal_after_smt.py の更新版はNY現地日付2025-01-01〜2026-09-25を対象にする。Discoveryは2025年通年、retrospective Validationは2026年1月〜9月25日。MESは両期間でDatabentoの同一系列を使用し、旧TradingView MESと混ぜない。5m/15m/60m SMTを使用し、15m/60mは対応する5分足が全て揃い、その上位足が閉じた時刻にのみ確定する。
  • 同方向のSMTが続く間を1イベントとし、none・逆方向・ペアの5分超ギャップで区切る。確定時刻と同時のシグナルは除外し、それより後の最初のインジケーターシグナルがイベントを消費する。方向一致はその最初のシグナルの部分集合。
  • 売買シグナルは5分足終値で確定し、隣接する次の5分足始値にEntry。日付境界とH007の90分窓は共通約定エンジンに合わせNY現地時刻で区分する。
  • 監査列 event_confirmed_at、signal_at、direction_matched、entry_gap_ok は results/features/first_smt_signals.csv に保存。MNQ・Databento MESのSHA256と一致バー数は results/summary/first_signal_after_smt_provenance.json。2026年9月25日16:55 NYの完了済み最終5分足までを対象とする。
  • 現行SMTの参照高安値は過去の上位足から求める。過去側の上位足に欠損5分足があれば、その期間の高安値は観測値だけから計算される。MESの9月18日以降のみ実限月を確認済みで、それ以前のロール近辺の判定は追加確認が必要。
  • 追加の4h検証は --four-hour で別出力する。NY 18:00を起点に4時間を区切り、MNQ・MES両方の5分足48本が全て一致する期間だけ、その4時間足終値でSMTを確定する。取引時間末尾や欠損による未完成の4時間足は確定イベントにしない。結果は reports/first_signal_after_smt_4h.md、監査は results/features/first_smt_signals_4h.csv。

Session Framework 4分類

  • config/session_frameworks.yaml が今回の唯一のセッション境界と閾値の正本。既存の4セッション×90分AMDXとは別定義で、Asia 18:00–01:00、London 01:00–08:00、NY 08:00–16:00、NY AM 08:00–12:00。全て America/New_York の壁時計で判定し、18:00以降のバーは翌NYカレンダー日付のセッションへ割り当てる。09:30 Cash Openは価格参照であり、Framework判定の取引禁止条件ではない。
  • MNQ 5分足に対してF1〜F4のSweep・Reclaim・Expansionの各時刻を保存。Sweepは基準高安を最低1 tick越え、既定では3本以内に内側でClose。ExpansionはReclaim後の別の足で、セッション開始時点のATR14×1以上の順方向移動に初めて到達した足のCloseで確定する。幅のtick、ATR、Session Range、固定Pointは設定とイベント列で追試できる。複数FrameworkとNO_FRAMEWORKを許可する。日次集計は後から見た全日の構造であり、エントリー判定には confirmed_at <= entry_time だけを使用する。
  • F1のKey Levelは前の完了したNY取引日高安。F2の明確なAsia Rangeは同RangeとLondon開始時の5分足ATR比で判定。F3のHTF Targetは前日高安または01:00以前に完成した7時間足のSwing高安/FVGの直近候補。7時間足はNY 18:00起点の420分窓で、完全な84本が必要。LondonのProtractionはNet距離/ATR、効率、最大Retracementを別々に記録してから合成判定する。F4はLondon高安のNY AM Sweep/Reclaim/Expansion。目視ICTラベルの完全再現とは主張しない。
  • SMTは2025年から使えるDatabento MESとMNQの時刻一致5分足で計算。5m/15m/60m/90m/4hは対象足に必要な一致バーが全て揃った時だけ、1d/1wは通常ETHバー数の99%以上を条件にし、最後の完成足の状態を次のEntryに結合する。欠損を補間せず、許容時刻を超えた状態はunknown。HTF Biasは前の完了日Closeと5日平均の比較。ボラティリティは確定5分足のATRに基づく既存の高・低ラベル。AMDは価格構造ではなく既存のNY AM時間区分。
  • session_framework_daily.csv は日次のOHLCと成立フラグ、session_framework_events.csv は候補・確定時刻・基準Level・HTF Target、session_framework_trades.csv は約定時点のContext、R損益、MAE/MFEを保持する。サイトには同じ全件CSVの圧縮版 session_framework_trades.csv.gz を掲載する。MAE/MFEはEntryからExitを含む5分足高安によるUSDの可能範囲で、同一足の先後・スリッページの細部は判定できない。session_framework_filter_backtests.csv はFramework確定時点以降のEntry制限を実際に再実行し、F4のみ09:30–10:00許可・禁止の両方を保存する。
  • 2025-01〜08、2025-09〜12、2026-01〜09/25を別集計する。いずれも過去研究で閲覧済みの可能性がある期間で、独立Holdoutではない。Frameworkは単独で注文を出さず、単独PFを定義しない。記述的コホートの最大DDは抽出約定のExit順損益で、複数戦略を一口座で運用した際のDDではない。
  • scripts/session_framework_expansion_sensitivity.py はExpansion閾値0.5/1.0/1.5/2.0×ATRのみを変更して全日を再分類し、成立頻度と既存約定の件数・PF・平均R・期待値を session_framework_expansion_sensitivity.csv に保存する。感度表はEntry制限の再実行ではなく記述的比較であり、閾値の事後選択は将来成績を保証しない。
  • scripts/build_framework_amdx_matrix.py はEntry時点でF1〜F4の確定フラグがあるMNQ約定だけを、インジケーター×AMDX窓で記述的に再集計する。窓の時刻はEntry直前の5分足シグナルバーの開始時刻で決める。session_amdx_matrix.yaml の4セッション×90分(NY AM D 09:00–10:30)とamdx.yamlのNY AM専用区分(D 09:30–10:30)はschemeで区別し、同一約定に両方のラベルを付ける。Frameworkも重複可能なため、行同士を合算しない。結果CSVは results/summary/framework_amdx_matrix.csv。
  • 同スクリプトは90m・4h SMTのEntry時点の確定状態を results/summary/framework_amdx_smt_matrix.csv に別集計する。present はbullish+bearish、direction_matched は買い×bullishまたは売り×bearish。none は確定した非乖離、unknown はデータ不足。各行のbaselineは同じ期間・インジケーター・窓・SMT条件でFramework指定だけを外す。重複するSMT条件やFramework行の件数・PnLは合算しない。既存約定の分割であり、SMT確定後の最初のシグナル検証や条件付き再約定ではない。
  • 3枚版は scripts/run_framework_scaleout_matrix.py と config/framework_scaleout_targets.yaml に定義する。シグナル確定の次の連続5分足始値に3枚、各TPに1枚、TP1約定後の残りSLは次の足から建値へ。SqueezeはATR14×1・3R/5R/7Rでシグナル決済なし。他14本は既存の初期SL(未定義ならATR14×2)・利用者指定の2R/3R/4Rで既存シグナル決済を維持する。3段階TPが原インジにあると見なさない。同一足でSLとTPに触れたらSL優先、片道1tick不利約定と片道1枚$0.62を含む。各戦略独立口座モデルでNY日の開始残高から−$1,000に達したら決済・当日新規停止。ただし5分足始値ギャップとシグナル決済により、モデル値の日内損失が$1,000を超える場合がある。2025年末・2026年9月25日の未完了ポジションは成績から除外し件数をprovenanceへ記録する。最大DDは3枚セット完了約定のExit順PnLによるコホート値で、口座全体の含み損DDではない。MAE/MFEは3枚の初期数量を全保有期間に掛けた可能範囲で、部分利確後の実際の時系列エクスポージャーではない。