{
 "generated_utc": "2026-08-11T10:31:01Z",
 "code": {
  "components.py": "53c94e84f5ffe64b2a2e30a4f8eafcb230b74c5fc9bb3ab6ef56b06b1eb01de8",
  "composite.py": "98bce6d4ce43f106bbcb08121470328eb6f791aa8f959b08f8515cdd6bf731a3",
  "run_pipeline.py": "833e534131acb0232ef34d747cd41ff113639895f3635a3142949d5249b690b2"
 },
 "sources": {
  "yahoo_GSPC": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/GSPC",
   "file": "yahoo_GSPC.json",
   "sha256": "a4418f8c41f8df4d49568d7d48c4709309cceefa693fa057eca748f9633c9ee9",
   "retrieved_utc": "2026-07-18T07:10:27Z",
   "latest_observation_date": "2026-07-17",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_SPY": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/SPY",
   "file": "yahoo_SPY.json",
   "sha256": "3ad5da76bf06ad9b94289363eb279e878ea6e586f618599df0cc9e20ab993f48",
   "retrieved_utc": "2026-08-11T10:30:08Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_QQQ": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/QQQ",
   "file": "yahoo_QQQ.json",
   "sha256": "5037d4610ce492136ff8ec13aac7a8bc044a662e9cff2118c47280a9f568a19d",
   "retrieved_utc": "2026-08-11T10:30:10Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_IWM": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/IWM",
   "file": "yahoo_IWM.json",
   "sha256": "7f34d33558144d44e852414fe62417def840bcdc616b90890514ffcc794796bb",
   "retrieved_utc": "2026-08-11T10:30:11Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_EFA": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/EFA",
   "file": "yahoo_EFA.json",
   "sha256": "ef287fe7732f7fbfeb8db86ae456a2e5fbeff547a8f05304430fcd4a39299be9",
   "retrieved_utc": "2026-08-11T10:30:13Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_EEM": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/EEM",
   "file": "yahoo_EEM.json",
   "sha256": "890bee5748b50bd2d57dba01d91f89273860bb25706bab54f01dbf0058a6be62",
   "retrieved_utc": "2026-08-11T10:30:14Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_TLT": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/TLT",
   "file": "yahoo_TLT.json",
   "sha256": "e36b5ad7c48ac5dab86e918f9c53b6d3be76438f09f472b941713438666ef368",
   "retrieved_utc": "2026-08-11T10:30:16Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_IEF": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/IEF",
   "file": "yahoo_IEF.json",
   "sha256": "2f1ef3061f19e014ecc6adea3253e8dd7d4553c5dfe42c718932e706adf2784b",
   "retrieved_utc": "2026-08-11T10:30:17Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_GLD": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/GLD",
   "file": "yahoo_GLD.json",
   "sha256": "329dcac8d14450802a3245034582f4b823d4e70f439b3ae709fe14058a590f37",
   "retrieved_utc": "2026-08-11T10:30:19Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_VIX": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/VIX",
   "file": "yahoo_VIX.json",
   "sha256": "cbc0557e09a0036a9e427b2a274dd7bf58ca5da59644836e20333d24cee84ff0",
   "retrieved_utc": "2026-07-18T07:10:36Z",
   "latest_observation_date": "2026-07-17",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "yahoo_QAI": {
   "type": "market_data",
   "source": "Yahoo Finance chart API",
   "url": "https://query1.finance.yahoo.com/v8/finance/chart/QAI",
   "file": "yahoo_QAI.json",
   "sha256": "63ee41f7fdcb7bcce14aa93b4ac33094b5e1754a1c8944208293c201b42f94cd",
   "retrieved_utc": "2026-08-11T10:30:21Z",
   "latest_observation_date": "2026-08-10",
   "availability_rule": "daily close, available same day after market close",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "cftc_cot_tff": {
   "type": "positioning_report",
   "source": "CFTC Commitments of Traders (Traders in Financial Futures)",
   "url": "https://www.cftc.gov/MarketReports/CommitmentsofTraders/HistoricalCompressed/index.htm",
   "file": "cftc_tff_2026.zip",
   "sha256": "71b2a15e4ba55fd6d20e57555cf8499dc46edfa95578bd0fb3b56aea27fb42f4",
   "retrieved_utc": "2026-07-18T07:10:23Z",
   "latest_observation_date": "2026-07-14",
   "availability_rule": "reference date Tuesday; published following Friday ~15:30 ET; used at Friday close of the week AFTER the reference Tuesday",
   "timezone": "America/New_York",
   "freshness": "ok"
  },
  "naaim_exposure": {
   "type": "survey",
   "source": "NAAIM Exposure Index (National Association of Active Investment Managers)",
   "url": "https://www.naaim.org/programs/naaim-exposure-index/",
   "file": "naaim_2026-07-29.xlsx",
   "sha256": "142168c79e3f052db976cbf78b08c872d181963af62ca6054608a1f170beae6c",
   "retrieved_utc": "2026-07-31T10:35:06Z",
   "latest_observation_date": "2026-07-29",
   "availability_rule": "weekly survey published mid-week; latest published value used at Friday close",
   "timezone": "America/New_York",
   "freshness": "ok"
  }
 }
}