{
  "article": {
    "official_admission": false,
    "required_headings": [
      "Summary",
      "Source",
      "What the source claims",
      "Rules actually disclosed",
      "What had to be inferred",
      "Research questions",
      "Data",
      "Baseline implementation",
      "What the signal looks like",
      "Historical events",
      "State-space exploration",
      "Parameter sensitivity",
      "What worked",
      "What did not work",
      "Why the failures appear to happen",
      "Regime behavior",
      "Timing and cost sensitivity",
      "Combinations",
      "Candidate frontier",
      "Agent assessment",
      "Limitations",
      "What to try interactively",
      "Suggested next research",
      "Promotion status",
      "Trial ledger",
      "Validation protocol",
      "Portfolio contribution"
    ],
    "research_tags": [
      "data_limited",
      "fidelity_mismatch",
      "interesting_negative_result",
      "parameter_sensitive",
      "needs_more_research",
      "predictive_not_tradable",
      "useful_as_portfolio_overlay",
      "uninvestable"
    ],
    "sections": {
      "Baseline implementation": {
        "claim_kind": "documented_canonical",
        "classification": "exploratory inferred public proxy; not native DeMark RA series",
        "driver": "^GSPC",
        "family": "canonical-td-setup-9",
        "id": "demark-canonical-buy9-lag1-gspc",
        "label": "causal canonical 9-count buy setup on ^GSPC long history",
        "metrics": {
          "benchmark_cagr": 0.06319803645677458,
          "benchmark_total_return": 418.70441928144635,
          "cagr": -0.0043255452476459455,
          "cagr_delta_vs_buy_hold": -0.06752358170442052,
          "event_rate": 0.009613442662681262,
          "events": 238,
          "n_bars": 24757,
          "sharpe": -0.08745920481651166,
          "vol": 0.04945786160211365
        },
        "params": {
          "holding_bars": 3,
          "lag_bars": 1
        },
        "side": "buy",
        "source_fidelity": false,
        "span": {
          "end": "2026-07-24",
          "n_bars": 24757,
          "start": "1927-12-30"
        }
      },
      "Candidate frontier": [
        {
          "cagr": 0.03286684385546379,
          "category": "best_sharpe",
          "id": "demark-overlay-ra-buy8-lag2-spy-ief",
          "interpretation": "Inferred SPY/IEF risk-off overlay on RA buy>=8 lag2; not source-disclosed allocation.",
          "sharpe": 0.44592004545317393
        },
        {
          "category": "best_long_history",
          "events": 238,
          "id": "demark-canonical-buy9-lag1-gspc",
          "interpretation": "Canonical 9-count buy lag1 on ^GSPC; longest TD-Setup history but negative CAGR vs buy-and-hold.",
          "span": "1927-12-30/2026-07-24"
        },
        {
          "category": "simplest_reasonable",
          "id": "demark-ra-buy8-lag1-gspc",
          "interpretation": "Documented RA buy>=8 threshold with one-bar causal lag on ^GSPC."
        },
        {
          "category": "best_long_history",
          "id": "demark-class-b-summation-lag1-gspc",
          "interpretation": "Class-B summation cross-below 8; strongest causal event-study family on long ^GSPC history.",
          "sharpe": 0.05604022286845129
        },
        {
          "category": "best_portfolio_complement",
          "id": "demark-overlay-classb-lag1-spy-ief",
          "interpretation": "SPY/IEF overlay on Class-B summation cross lag1 on common 1993-2026 window.",
          "sharpe": 0.325159544088002
        },
        {
          "category": "best_return",
          "events": 1411,
          "id": "demark-class-c-summation-lag1-gspc",
          "interpretation": "High-frequency summation flips with elevated vol; descriptive only."
        },
        {
          "category": "simplest_reasonable",
          "id": "demark-canonical-buy9-lag0-gspc",
          "interpretation": "Same-close lag-zero sensitivity control; excluded from causal claims."
        }
      ],
      "Data": {
        "database": "data/market.sqlite",
        "database_access": "read-only query_only",
        "native_span": "No native series; ^GSPC proxy to 1927",
        "private_data": false,
        "proxy_chain": [
          "^GSPC",
          "SPY",
          "IEF"
        ],
        "publication_lag": "Daily close assumed; exact RA release clock unknown",
        "source_fetched_at": "2026-08-22T23:44:53Z",
        "source_sha256": "sha256:2182cdc8962b8bcadc9008acd3a880fbe5486dfc804f728e661902885680cc3b",
        "source_url": "https://recessionalert.com/demark-analysis-for-sp-500/"
      },
      "Limitations": [
        "Exploratory inferred/proxy only; not investment advice."
      ],
      "Portfolio contribution": {},
      "Promotion status": "Not promoted; publish under Other/Research only.",
      "Research questions": [
        "Can public ^GSPC/SPY/IEF proxies test disclosed TD-Setup Class-A/B/C rules without native RecessionAlert series parity?"
      ],
      "Rules actually disclosed": [
        "Modified TD-Setup Class-A/B/C buy and sell rules with RA buy>=8/sell>=9 thresholds.",
        "No machine-readable setup-count or summation history in checked-in snapshot."
      ],
      "Source": {
        "fetched_at": "2026-08-22T23:44:53Z",
        "sha256": "sha256:2182cdc8962b8bcadc9008acd3a880fbe5486dfc804f728e661902885680cc3b",
        "url": "https://recessionalert.com/demark-analysis-for-sp-500/"
      },
      "Suggested next research": [
        "Obtain native RA setup/summation series or workbook bytes under separate authorization.",
        "Resolve sell nine-count vs eleven-count cancellation conflict from the page text.",
        "Document exact publication lag and Trendex successor semantics for post-2020 charts.",
        "Test proprietary RA modifications beyond public threshold hints if disclosed.",
        "Validate crisis-window behavior on authorized DeMark vendor or constituent-level data."
      ],
      "Summary": [
        "The 2014 DeMark SP-500 article discloses modified TD-Setup Class-A/B/C buy and sell rules with RA buy>=8/sell>=9 thresholds and a 1-5 bar reaction hint, but no native setup/summation series or portfolio map.",
        "Twenty-four labeled proxy variants on ^GSPC/SPY/IEF closes were executed; all are exploratory inferred reconstructions, not RecessionAlert-native series."
      ],
      "Trial ledger": [
        {
          "number": 1,
          "status": "published",
          "summary": "Initial exploratory proxy campaign with 24 variants."
        }
      ],
      "Validation protocol": {},
      "What had to be inferred": [
        "Twenty-four labeled proxy variants across lag/holding/driver grids.",
        "Daily close with lag>=1 causal default; lag0 control_only."
      ],
      "What the source claims": [
        "Modified TD-Setup Class-A/B/C buy and sell rules with RA buy>=8/sell>=9 thresholds.",
        "No machine-readable setup-count or summation history in checked-in snapshot.",
        "Twenty-four labeled proxy variants across lag/holding/driver grids.",
        "Daily close with lag>=1 causal default; lag0 control_only."
      ],
      "What to try interactively": [
        {
          "name": "lag_bars",
          "values": [
            0,
            1,
            2
          ]
        },
        {
          "name": "holding_bars",
          "values": [
            1,
            3,
            5
          ]
        }
      ]
    },
    "title": "DeMark analysis for SP-500 | RecessionAlert \u2014 exploratory proxy campaign"
  },
  "campaign": {
    "campaign_id": "recessionalert-demark-sp500-1379",
    "iteration_number": 1,
    "research_tags": [
      "data_limited",
      "fidelity_mismatch",
      "interesting_negative_result",
      "parameter_sensitive",
      "needs_more_research",
      "predictive_not_tradable",
      "useful_as_portfolio_overlay",
      "uninvestable"
    ],
    "status": "published",
    "title": "DeMark analysis for SP-500 | RecessionAlert \u2014 exploratory proxy campaign"
  },
  "candidate_frontier": [
    {
      "cagr": 0.03286684385546379,
      "category": "best_sharpe",
      "id": "demark-overlay-ra-buy8-lag2-spy-ief",
      "interpretation": "Inferred SPY/IEF risk-off overlay on RA buy>=8 lag2; not source-disclosed allocation.",
      "sharpe": 0.44592004545317393
    },
    {
      "category": "best_long_history",
      "events": 238,
      "id": "demark-canonical-buy9-lag1-gspc",
      "interpretation": "Canonical 9-count buy lag1 on ^GSPC; longest TD-Setup history but negative CAGR vs buy-and-hold.",
      "span": "1927-12-30/2026-07-24"
    },
    {
      "category": "simplest_reasonable",
      "id": "demark-ra-buy8-lag1-gspc",
      "interpretation": "Documented RA buy>=8 threshold with one-bar causal lag on ^GSPC."
    },
    {
      "category": "best_long_history",
      "id": "demark-class-b-summation-lag1-gspc",
      "interpretation": "Class-B summation cross-below 8; strongest causal event-study family on long ^GSPC history.",
      "sharpe": 0.05604022286845129
    },
    {
      "category": "best_portfolio_complement",
      "id": "demark-overlay-classb-lag1-spy-ief",
      "interpretation": "SPY/IEF overlay on Class-B summation cross lag1 on common 1993-2026 window.",
      "sharpe": 0.325159544088002
    },
    {
      "category": "best_return",
      "events": 1411,
      "id": "demark-class-c-summation-lag1-gspc",
      "interpretation": "High-frequency summation flips with elevated vol; descriptive only."
    },
    {
      "category": "simplest_reasonable",
      "id": "demark-canonical-buy9-lag0-gspc",
      "interpretation": "Same-close lag-zero sensitivity control; excluded from causal claims."
    }
  ],
  "candidate_variants": [
    {
      "claim_kind": "documented_canonical",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag1-gspc",
      "label": "causal canonical 9-count buy setup on ^GSPC long history",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.0043255452476459455,
        "cagr_delta_vs_buy_hold": -0.06752358170442052,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.08745920481651166,
        "vol": 0.04945786160211365
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_documented_ra_threshold",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-threshold-buy8-sell9",
      "id": "demark-ra-buy8-lag1-gspc",
      "label": "causal RA buy>=8 setup flip on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.004798604983316412,
        "cagr_delta_vs_buy_hold": -0.06799664144009099,
        "event_rate": 0.013612311669426828,
        "events": 337,
        "n_bars": 24757,
        "sharpe": -0.08723723724076762,
        "vol": 0.055006384143879476
      },
      "params": {
        "buy_threshold": 8,
        "holding_bars": 3,
        "lag_bars": 1,
        "sell_threshold": 9
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_documented_summation",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-class-b-summation-cross",
      "id": "demark-class-b-summation-lag1-gspc",
      "label": "causal Class-B summation cross-below 8 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": 0.0026516280850603646,
        "cagr_delta_vs_buy_hold": -0.06054640837171421,
        "event_rate": 0.01615704649190128,
        "events": 400,
        "n_bars": 24757,
        "sharpe": 0.05604022286845129,
        "vol": 0.04731651569774787
      },
      "params": {
        "holding_bars": 5,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-a-setup-flip",
      "id": "demark-class-a-sell-lag2-spy",
      "label": "lag-2 Class-A sell flip on SPY ETF window",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": 0.010767618040309124,
        "cagr_delta_vs_buy_hold": -0.09688713824573658,
        "event_rate": 0.020170859041290935,
        "events": 170,
        "n_bars": 8428,
        "sharpe": 0.24919435815452853,
        "vol": 0.043209718390301556
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 2
      },
      "side": "sell",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "control_only",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag0-gspc",
      "label": "same-close lookahead control; never causal primary",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.004917589257018351,
        "cagr_delta_vs_buy_hold": -0.06811562571379293,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.09556631374628866,
        "vol": 0.05145735002475521
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 0
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "control_only",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag0-gspc-h3",
      "label": "canonical 9-count buy lag 0 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.004917589257018351,
        "cagr_delta_vs_buy_hold": -0.06811562571379293,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.09556631374628866,
        "vol": 0.05145735002475521
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 0
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "documented_canonical",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag1-gspc-h3",
      "label": "canonical 9-count buy lag 1 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.0043255452476459455,
        "cagr_delta_vs_buy_hold": -0.06752358170442052,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.08745920481651166,
        "vol": 0.04945786160211365
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag2-gspc-h3",
      "label": "canonical 9-count buy lag 2 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.00529348309712141,
        "cagr_delta_vs_buy_hold": -0.06849151955389599,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.10852047489506224,
        "vol": 0.048778657688700065
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 2
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag1-gspc-h1",
      "label": "canonical buy lag1 holding 1 bars on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.0019526753722379775,
        "cagr_delta_vs_buy_hold": -0.06515071182901255,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.05259689466670834,
        "vol": 0.037125297693172375
      },
      "params": {
        "holding_bars": 1,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag1-gspc-h5",
      "label": "canonical buy lag1 holding 5 bars on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.002507258047666716,
        "cagr_delta_vs_buy_hold": -0.06570529450444129,
        "event_rate": 0.009613442662681262,
        "events": 238,
        "n_bars": 24757,
        "sharpe": -0.04195505528596365,
        "vol": 0.05976057070065491
      },
      "params": {
        "holding_bars": 5,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_documented_ra_threshold",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-threshold-buy8-sell9",
      "id": "demark-ra-buy8-lag2-gspc",
      "label": "RA buy>=8 lag 2 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": -0.00769564741525941,
        "cagr_delta_vs_buy_hold": -0.07089368387203399,
        "event_rate": 0.013612311669426828,
        "events": 337,
        "n_bars": 24757,
        "sharpe": -0.14190780477882833,
        "vol": 0.05422990953354207
      },
      "params": {
        "buy_threshold": 8,
        "holding_bars": 3,
        "lag_bars": 2,
        "sell_threshold": 9
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_documented_summation",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-class-b-summation-cross",
      "id": "demark-class-b-summation-lag2-gspc",
      "label": "Class-B summation cross lag 2 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": 0.010066676057604473,
        "cagr_delta_vs_buy_hold": -0.0531313603991701,
        "event_rate": 0.01615704649190128,
        "events": 400,
        "n_bars": 24757,
        "sharpe": 0.21177056413261588,
        "vol": 0.04753576635561341
      },
      "params": {
        "holding_bars": 5,
        "lag_bars": 2
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-b-summation-cross",
      "id": "demark-reaction-hold1-classb-lag1-spy",
      "label": "reaction-window hold 1 bars Class-B on SPY",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": 0.00337522428773096,
        "cagr_delta_vs_buy_hold": -0.10427953199831475,
        "event_rate": 0.017679164689131468,
        "events": 149,
        "n_bars": 8428,
        "sharpe": 0.10250334234070523,
        "vol": 0.032927943720237315
      },
      "params": {
        "holding_bars": 1,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-b-summation-cross",
      "id": "demark-reaction-hold3-classb-lag1-spy",
      "label": "reaction-window hold 3 bars Class-B on SPY",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": -0.00819634578650863,
        "cagr_delta_vs_buy_hold": -0.11585110207255434,
        "event_rate": 0.017679164689131468,
        "events": 149,
        "n_bars": 8428,
        "sharpe": -0.17373444400763913,
        "vol": 0.047177436997744876
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-b-summation-cross",
      "id": "demark-reaction-hold5-classb-lag1-spy",
      "label": "reaction-window hold 5 bars Class-B on SPY",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": -0.013681606205769303,
        "cagr_delta_vs_buy_hold": -0.12133636249181501,
        "event_rate": 0.017679164689131468,
        "events": 149,
        "n_bars": 8428,
        "sharpe": -0.22610487532041149,
        "vol": 0.06051000088512556
      },
      "params": {
        "holding_bars": 5,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "control_only",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-a-setup-flip",
      "id": "demark-class-a-sell-lag0-spy",
      "label": "Class-A sell flip lag 0 on SPY",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": 0.011510605454055023,
        "cagr_delta_vs_buy_hold": -0.09614415083199068,
        "event_rate": 0.020170859041290935,
        "events": 170,
        "n_bars": 8428,
        "sharpe": 0.2788044954327422,
        "vol": 0.04128558055058979
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 0
      },
      "side": "sell",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "ra-class-a-setup-flip",
      "id": "demark-class-a-sell-lag1-spy",
      "label": "Class-A sell flip lag 1 on SPY",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": 0.009448685422701164,
        "cagr_delta_vs_buy_hold": -0.09820607086334454,
        "event_rate": 0.020170859041290935,
        "events": 170,
        "n_bars": 8428,
        "sharpe": 0.2357996416603917,
        "vol": 0.040070821805189796
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "sell",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "documented_canonical",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-sell9-lag1-gspc",
      "label": "canonical 9-count sell setup lag1 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": 0.009342498430286561,
        "cagr_delta_vs_buy_hold": -0.053855538026488015,
        "event_rate": 0.018378640384537705,
        "events": 455,
        "n_bars": 24757,
        "sharpe": 0.2217056267347899,
        "vol": 0.042139203086001525
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "sell",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_documented_ra_threshold",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-threshold-buy8-sell9",
      "id": "demark-ra-sell9-lag1-gspc",
      "label": "RA sell>=9 threshold lag1 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": 0.009342498430286561,
        "cagr_delta_vs_buy_hold": -0.053855538026488015,
        "event_rate": 0.018378640384537705,
        "events": 455,
        "n_bars": 24757,
        "sharpe": 0.2217056267347899,
        "vol": 0.042139203086001525
      },
      "params": {
        "buy_threshold": 8,
        "holding_bars": 3,
        "lag_bars": 1,
        "sell_threshold": 9
      },
      "side": "sell",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "^GSPC",
      "family": "ra-class-c-summation-flip",
      "id": "demark-class-c-summation-lag1-gspc",
      "label": "Class-C summation flip lag1 on ^GSPC",
      "metrics": {
        "benchmark_cagr": 0.06319803645677458,
        "benchmark_total_return": 418.70441928144635,
        "cagr": 0.01842840062383777,
        "cagr_delta_vs_buy_hold": -0.044769635832936805,
        "event_rate": 0.05699398150018177,
        "events": 1411,
        "n_bars": 24757,
        "sharpe": 0.18179498293507065,
        "vol": 0.10136913751035474
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 24757,
        "start": "1927-12-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "canonical-td-setup-9",
      "id": "demark-canonical-buy9-lag1-spy",
      "label": "canonical buy lag1 on SPY ETF window",
      "metrics": {
        "benchmark_cagr": 0.1076547562860457,
        "benchmark_total_return": 29.644139420616135,
        "cagr": -0.003722846646052491,
        "cagr_delta_vs_buy_hold": -0.1113776029320982,
        "event_rate": 0.00700047460844803,
        "events": 59,
        "n_bars": 8428,
        "sharpe": -0.07090402724955047,
        "vol": 0.052505432913559844
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 8428,
        "start": "1993-01-29"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "spy-ief-risk-off-overlay",
      "id": "demark-overlay-classb-lag1-spy-ief",
      "label": "SPY/IEF overlay on Class-B summation buy lag1",
      "metrics": {
        "benchmark_cagr": 0.11140190415690854,
        "benchmark_total_return": 11.590070391694116,
        "cagr": 0.027810175597287268,
        "cagr_delta_vs_buy_hold": -0.08359172855962127,
        "event_rate": 0.024689312344656173,
        "events": 149,
        "max_drawdown": -0.2582954072200714,
        "n_bars": 6035,
        "sharpe": 0.3808283601661972,
        "total_return": 0.9306974251609397,
        "vol": 0.07302548472269932
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1,
        "risk_off": "IEF",
        "signal_family": "ra-class-b-summation-cross"
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 6035,
        "start": "2002-07-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "spy-ief-risk-off-overlay",
      "id": "demark-overlay-canonical-lag1-spy-ief",
      "label": "SPY/IEF overlay on canonical buy lag1",
      "metrics": {
        "benchmark_cagr": 0.11140190415690854,
        "benchmark_total_return": 11.590070391694116,
        "cagr": 0.028104950780300175,
        "cagr_delta_vs_buy_hold": -0.08329695337660836,
        "event_rate": 0.009776304888152444,
        "events": 59,
        "max_drawdown": -0.23597353393885812,
        "n_bars": 6035,
        "sharpe": 0.3724190397731837,
        "total_return": 0.9440215322968539,
        "vol": 0.07546593428041992
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 1,
        "risk_off": "IEF",
        "signal_family": "canonical-td-setup-9"
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 6035,
        "start": "2002-07-30"
      }
    },
    {
      "claim_kind": "inferred_nearby_variant",
      "classification": "exploratory inferred public proxy; not native DeMark RA series",
      "driver": "SPY",
      "family": "spy-ief-risk-off-overlay",
      "id": "demark-overlay-ra-buy8-lag2-spy-ief",
      "label": "SPY/IEF overlay on RA buy>=8 lag2",
      "metrics": {
        "benchmark_cagr": 0.11140190415690854,
        "benchmark_total_return": 11.590070391694116,
        "cagr": 0.03286684385546379,
        "cagr_delta_vs_buy_hold": -0.07853506030144475,
        "event_rate": 0.015575807787903894,
        "events": 94,
        "max_drawdown": -0.28320739630810143,
        "n_bars": 6035,
        "sharpe": 0.44592004545317393,
        "total_return": 1.1718676873615452,
        "vol": 0.07370568825194278
      },
      "params": {
        "holding_bars": 3,
        "lag_bars": 2,
        "risk_off": "IEF",
        "signal_family": "ra-threshold-buy8-sell9"
      },
      "side": "buy",
      "source_fidelity": false,
      "span": {
        "end": "2026-07-24",
        "n_bars": 6035,
        "start": "2002-07-30"
      }
    }
  ],
  "event_tables": [],
  "evidence": {},
  "execution_assumptions": {},
  "interactive_specs": [
    {
      "name": "lag_bars",
      "values": [
        0,
        1,
        2
      ]
    },
    {
      "name": "holding_bars",
      "values": [
        1,
        3,
        5
      ]
    }
  ],
  "limitations": [
    "Exploratory inferred/proxy only; not native RecessionAlert DeMark chart series.",
    "No playable indicator promotion without native parity.",
    "Post-2020 Trendex successor semantics not tested here."
  ],
  "parameter_grids": [],
  "provenance": {
    "database": "data/market.sqlite",
    "database_access": "read-only query_only",
    "native_span": "No native series; ^GSPC proxy to 1927",
    "private_data": false,
    "proxy_chain": [
      "^GSPC",
      "SPY",
      "IEF"
    ],
    "publication_lag": "Daily close assumed; exact RA release clock unknown",
    "source_fetched_at": "2026-08-22T23:44:53Z",
    "source_sha256": "sha256:2182cdc8962b8bcadc9008acd3a880fbe5486dfc804f728e661902885680cc3b",
    "source_url": "https://recessionalert.com/demark-analysis-for-sp-500/"
  },
  "regime_tables": [],
  "schema_version": "research-publication/v1",
  "series": {
    "availability": "unavailable",
    "dates": [],
    "reason": "No reproducible underlying price and signal-input series are published for this expression."
  },
  "signals": {
    "spec": null,
    "specs": []
  },
  "trial_ledger": []
}
