Live release feed
Sub-second macro releases for FX backtests
Point-in-time history
Official CPI, jobs, GDP, and central-bank events with point-in-time history.
USD 25/month 14-day free trial
Start Free Trial
How We Validate Macro Data Accuracy Before Serving It image
Share headline card X LinkedIn Email
Download

Builders

Engineering

How We Validate Macro Data Accuracy Before Serving It

FXMacroDataが提供するすべてのマクロ指標が正確で,タイミングで,一貫していることを保証する多段階データ検証パイプラインの内部を覗く. 初期摂取とスキーマチェックから異常値フィルタリング,クロスソースの調和,営業日完全性ルールまで.

他言語版 English
Share article X LinkedIn Email
構造データ: 記事 ヒーローのリード

エンジニアリング

マクロデータは,それだけの有用性がある. 精度. Here is how every data point served by FXMacroData passes through a five-stage validation pipeline before it reaches your application.

央行が政策金利決定を公表したり,統計局が新しいインフレ報道を公表したとき,その原始的な発表はしばしば騒音とともに来ます.暗号化アーテファクト,部分的なページ,欠落したフィールド,または前月と矛盾する修正.多くのアグリゲーターのように,そのデータを素直に提供すると,問題は直接開発者に渡されます.

FXMacroDataでは,データの質を第一級の製品懸念として扱います.すべての通貨からのすべての指標は,Firestoreに書き込み,APIを通じて露出する前に決定的な検証パイプラインを通ります.このポストは,パイプਲਾਈਨ層を層で歩きます. 目的点として /v1/announcements/{currency}/{indicator}ほら

パイプラインの概要 呼び出し

パイプライン の 一見

① Ingest ② Schema Check ③ Range & Outlier Filter ④ Cross-Source Reconciliation ⑤ Business-Day Integrity

ステージ1: 飲み込み

ステージ1 摂取: 構造化された源源

検証は単一の値が抽出される前に始まります.各通貨には公式の主要なソースをターゲットとする専用フェッチャークラスがあります.中央銀行のウェブサイト,国家統計局,または政府データポータルです.私たちは意図的に摂取経路で二次アグリゲーターを避けます.それらの遅延,ライセンス条件,偶発的な沈黙の修正は,制御できない不確実性を導入します.

実行する非同期 Python クラスです. async with テキスト管理パターンです 入力すると aiohttp.ClientSession リアルな視点で User-Agent 取れても,引き上げても,きれいに閉じる.各取れ手内では,解析が厳格です.HTMLは, lxml ほら BeautifulSoup グラフのマークアップに対して regex のバックバックではなく正確な要素選択者を使用し,JSON API は入力されたアクセスキーでアクセスされ,フィールドが欠落または上流に改名した場合すぐに上昇します.

コードハイライトボックス

取得契約 必須出力キー

{
    "date": "2026-03-31",          # ISO-8601日付文字列
    "val": 3.5,                    ♪ 浮き  ストリングは決して
    "announcement_datetime": "..." # UTC ISO-8601 入手可能なら
}

取得契約は取得者境界で執行されます. 記録がない場合 date ほら val 次の段階に到達する前に捨てられます announcement_datetime 公開面のエンドポイントでは必要ですが,APIユーザーにイベントタイムを公開します.


ステージ2: スキーマチェック

ステージ2 図表の確認:タイプと完全性の検証

Raw fetcher output is handed to a schema validator that applies four checks on every record:

日付形式

ISO-8601日付として解析.解析できない文字列,二日間の格納窓を超えた将来の日付,および1960年以前の日付はすべて拒否されます.

値型

val 限界のあるパイソンに強制しなければならない floatほら NaNほら Inf文字列 (例えば 文字) "n/a"ゼロに強制されるのではなく,拒絶される.

複製検出

If two records share the same (currency, indicator, date) 鍵は最近入った鍵を保持し 衝突を記録します 音が聞こえない重書きは 監査できます

通貨指標ペアリング

記録は全て 公開された指標カタログに 比較されます unemployment 通貨が表示されない場合,その指標はエラーが発生し,バッチを停止します.

構造化されたクラウドログのエントリとして表示されます. severity=ERRORほら stage=schema_check端末の設定は,端末が GCP 端で実行するときに,端子が GCP の端末に移動するときに


ステージ3:外側のフィルター

ステージ3 範囲とアウトリアーフィルター

構造的有効性は必要だが十分ではない. 250.0 for USD CPI is syntactically valid but obviously wrong. Stage 3 applies two complementary checks to catch these semantic errors.

硬い範囲の境界線

各指標には選択的なカタログ記事が含まれています min_val ほら max_val 政策金利は,例えば, -5.0 ほら 30.0 年間インフレ率は -30.0 ほら 300.0 増加途上国のデータに制限を及ぼさず,高インフレエピソードに対応できる範囲に相当する.これらの範囲外にある値は,手動的な審査を待機して隔離されます.

ローリング zスコア異常値検出

Firestore で少なくとも 24 ヶ月経った指標については,パイプラインは 36 ヶ月間のローリング・ミディアと標準偏差を計算し,zスコアを超える新しい記録をマークします |4.0|硬い境界とは異なり,zスコアフラグは自動的に記録を削除しません. outlier_flag: true API ユーザが,オプションで,自分のワークフローで偏差値が表示されたレコードをフィルタリングできるようにします.

なぜ4σではなく3σなのか

3σではなく4σはなぜ?

マクロ指標は,本当に大きな結果を示しています. COVID-19 供給ショック,2022 年のエネルギー危機,中央銀行の急速なハイキングサイクルなど,どれも統計的に稀な,しかし実際の値を示しています.3σ 値では,正確な値が最も重要になる時に,政権の変更中に正当なデータを隔離します.


ステージ4 交叉関係和解

ステージ4 経歴の調整

重要な指標のサブセットの中央銀行の政策金利,CPI,失業率については,パイプラインは交差参照のための二次源を維持している.これは要求時にライブバックバックではない (ユーザーに提供されたすべてのデータはFireStoreからのみ提供される);これは摂取時間の一貫性チェックである.

プライマリとセカンドリ値が同じとき (currency, indicator, date) 設定可能な許容範囲を超えて偏りがある場合,アラートが鳴り,最初の値は調査が待たされる.ポリシーの利率では,許容度は 5 basis points消費者の利益率は 0.1 percentage points偏差値が意図的に狭いのは,小さな差異であっても,解析エラー,報告遅延,または初回と最終的な修正の衝突を示すことが多いからです.

基本対二次設計

基本情報源

  • 中央銀行の公式発表
  • 国家統計局
  • 政府データポータル

交叉参照情報

  • 公式の末端点 (BIS)
  • 修正標識付きの歴史記録
  • 内部前期一貫性チェック

記録ごとに交差チェックをすると 管道も 月間継続性チェック変更が多ければ, N standard deviations from the trailing 12-month average change, it is treated as a candidate revision conflict. Preliminary releases frequently differ from final revisions; the pipeline logs both values and exposes a revised 日付の値が初公開後に更新されたときにフラグを表示します.


===== ステージ5:ビジネス・デイ・インテグレティ=====

ステージ5 営業日間の完全性

検証の最終段階では,微妙でも重要な制約が解決されます. announcement_datetime 該当する営業日 市場時間帯 統計局や中央銀行は週末や祝日に発表をしないので,パイプラインが土曜日に東京やシドニーで祝日に着陸するタイムスタンプを生産した場合, 上流に何かが間違っていた.

検証機が電話してる is_valid_announcement_date(currency, local_date)通貨の時間帯定義とコードベースに保存されている完全な休日カレンダーとの日付をチェックする.APIが提供するすべての通貨 AUD,EUR,GBP,JPY,USD,CAD,CHF,NZD,および他のすべての通貨は,独自の時間帯と休日テーブルを持っています.通貨はFXセッションから継承されません.ニューヨークの金曜日がシドニーで土曜日になり得ます.検証者はこれを正確に処理します.

認証機能 コードスタイルコールアウト

営業日認証 (簡略化)

def について is_valid_announcement_date 公式な発表日(currency: str, local_date: date) -> bool:
    tz = CURRENCY_TIMEZONE[currency]
    #週末を断る
    if local_date.weekday() >= 5:
        返還する False
    # 祝日を断る
    if local_date in _build_holiday_set(currency, local_date.year):
        返還する False
    返還する True

計算した日付がこのチェックに失敗すると, next_valid_announcement_date 公開日程の最終点は,API消費者に提供される日付が,手動の清掃なしで取引カレンダーに直接使用できる日付を含んでいることを保証する.これらの営業日のルールは,カタログ内の通貨がタイムゾーンまたは休暇データがない場合,ビルドに失敗するCIテストスイートによって強制される.

リリースカレンダーの正確性: 公開カレンダー終了時点から来るイベントの日付は,次のFed会議やRBAレートの決定などの,通貨市場時間帯の有効な営業日に確実に落ちます. /api/v1/カレンダー/{通貨} この確認されたスケジュールを直接反映します


監視する

継続 的 に 監視 し,警告 する

検証パイプラインを一度通過するだけでは不十分です.パイプਲਾਈਨはスケジュールで実行されます. クラウドタスクとバックフィールワークフローによって起動され,各実行は監視層に供給する構造化されたテレメトリを作成します.

ステージアラート

パイプラインのどの段階でも 障害が発生すると すぐにクラウドログの入力が 発生します

コンテンツハッシュ

ファイアストアで書くものは全て content_hash 静かな上流の修正を検出し 表面化します

耐久性チェック

読み手は,保存されたデータが要求範囲のN日以上遅れると検出し,静かな状態で古い値を返すのではなく,ギャップ信号を表示します.

ネットワークタイムアウト,アップストリームサイト変更,または応答構造変更のデータ返信に失敗すると,パイプラインは要求時にアップストリームのライブコールに戻らない.代わりに検証失敗を発信し,空の結果または構造化された結果返します DataUnavailableError 古いデータや部分的に検証されたデータが API層に到達するのを一時的にさえ防ぐ.


修正処理 修正管理

修正 と 改定 を 処理 する

Macro data revisions are a fact of life. Initial GDP estimates are revised two and three times. Payrolls get significantly restated. The pipeline handles revisions explicitly rather than silently overwriting:

  • ファーストプリントの保管: パイプラインは,最初の値を保存します. (currency, indicator, date) の と revised: false 旗を
  • 修正検出: 指示値の修正値を超えて日付の値が変化した場合,文書は更新され, revised: true 設定されています
  • 歴史の保存 元のプリント価値は 保存されています prior_val 監査と比較目的の分野です
  • APIの透明性 ほら revised 初期値と最終値の区別がつくことができるように,API応答に露出します.

初期印刷と後の修正が数千の雇用によって異なる場合,この指標は特に重要です. 農地以外の賃金の最終点ほら


これはAPIの消費者にとって何を意味するのか

API 消費者にとって意味

APIをクエリする人にとってこのパイプラインの実用的な成果は

  • 違う NaN ほら null シリーズ内の値 誤った値を持つレコードは,穴として通過するのではなく,ステージ2で除外されます.
  • 信頼 できる 日付 返信中のすべての日付は,その通貨の市場における営業日の有効なカレンダー日付であり,取引カレンダーの直接使用やバックテストエンジンに適しています.
  • 秒精度での発表タイムスタンプ 入手可能な場合 announcement_datetime 公式リリースの正確な UTC秒を反映し,真夜中のプレスホルダーではありません.
  • 修正旗 revised 予備か最終的な読み取りで働いているかを区別できます.
  • 一貫した指標単位 利子指数は,一貫して百分比で示され,十進法ではなく (例: 5.25 違う 0.0525公式の中央銀行のウェブサイトに表示されているものと一致する.

Query any indicator — policy rate, headline CPI, unemployment — and the response you receive has already passed all five stages. The indicator catalogue documents exactly which sources feed each series, so you can verify the provenance of any data point independently.

終了しました

データを調べる

カタログのすべての指標がこのパイプラインを通過しました. 興味のある通貨のシリーズを見るために,完全なエンドポイント参照を閲覧してください.

API参照 →

Blogroll

AI Answer-Ready

Key Facts

Page
Macro Data Accuracy Validation Pipeline
Section
Articles
Canonical URL
https://fxmacrodata.com/ja/articles/macro-data-accuracy-validation-pipeline
Source
FXMacroData editorial and official publisher references
Last Updated
2026-06-15 11:06 UTC

Provenance And Trust

Cite the canonical URL and source field above. Where available, this page maps to official publisher releases and timestamped updates.

Quick Q&A

What is this page about? This page explains Macro Data Accuracy Validation Pipeline with directly usable context for trading, research, and API workflows.

What source should be cited? Use the canonical URL and the listed source field; cite official publisher references when available.

How fresh is this content? The last updated value above reflects the page metadata or latest available data timestamp.

Can this be used in AI assistants? Yes. This section is intentionally structured for retrieval and citation in chat assistants.

Prompt Packs

Use these in ChatGPT, Claude, Gemini, Mistral, Perplexity, or Grok for consistent source-aware outputs.