{
  "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": [
      "useful_as_filter",
      "redundant",
      "interesting_negative_result"
    ],
    "sections": {
      "Baseline implementation": {
        "created_by": "source_baseline",
        "family_id": "nhnl-breadth",
        "metrics": {
          "label": "exploratory"
        },
        "parameters": {
          "holding_period": 20,
          "threshold": 0
        },
        "reason_tested": "zero-line of SMA50 net highs",
        "status": "exploratory",
        "tags": [
          "useful_as_filter",
          "redundant"
        ],
        "variant_id": "nhnl-breadth.sma50.threshold0.hold20"
      },
      "Candidate frontier": [
        {
          "category": "simplest_reasonable",
          "exploratory": true,
          "variant_id": "nhnl-breadth.sma50.threshold0.hold20"
        }
      ],
      "Data": {
        "inputs": [
          "INDEX:HIGN",
          "INDEX:LOWN",
          "SPY"
        ]
      },
      "Limitations": [
        "HIGN/LOWN start 2001; not NYSE official."
      ],
      "Portfolio contribution": {},
      "Promotion status": "Not promoted \u2014 Research Library only.",
      "Research questions": [
        "Does SMA50 of new-highs minus new-lows predict risk-on/off or only describe it?"
      ],
      "Rules actually disclosed": [
        "Net new highs (HIGN-LOWN) smoothed with SMA50."
      ],
      "Source": {
        "kind": "breadth",
        "prior_experiments": [
          "qm-4bx.16"
        ]
      },
      "Suggested next research": [
        "Compare to S5FI as filter rather than standalone."
      ],
      "Summary": [
        "Likely redundant with trend; keep as playable negative/weak result."
      ],
      "Trial ledger": [
        {
          "iteration_number": 1,
          "objective": "initial source exploration"
        }
      ],
      "Validation protocol": {},
      "What had to be inferred": [
        "Sign of the smooth as risk-on."
      ],
      "What the source claims": [
        "Net new highs (HIGN-LOWN) smoothed with SMA50.",
        "Sign of the smooth as risk-on."
      ],
      "What to try interactively": [
        {
          "default": 0,
          "name": "threshold",
          "type": "float"
        }
      ]
    },
    "title": "NH-NL Breadth \u2014 exploratory campaign"
  },
  "campaign": {
    "campaign_id": "nhnl-breadth",
    "iteration_number": 1,
    "research_tags": [
      "useful_as_filter",
      "redundant",
      "interesting_negative_result"
    ],
    "status": "awaiting_research_feedback",
    "title": "NH-NL Breadth \u2014 exploratory campaign"
  },
  "candidate_frontier": [
    {
      "category": "simplest_reasonable",
      "exploratory": true,
      "variant_id": "nhnl-breadth.sma50.threshold0.hold20"
    }
  ],
  "candidate_variants": [
    {
      "created_by": "source_baseline",
      "family_id": "nhnl-breadth",
      "metrics": {
        "label": "exploratory"
      },
      "parameters": {
        "holding_period": 20,
        "threshold": 0
      },
      "reason_tested": "zero-line of SMA50 net highs",
      "status": "exploratory",
      "tags": [
        "useful_as_filter",
        "redundant"
      ],
      "variant_id": "nhnl-breadth.sma50.threshold0.hold20"
    }
  ],
  "event_tables": [],
  "evidence": {},
  "execution_assumptions": {},
  "interactive_specs": [
    {
      "default": 0,
      "name": "threshold",
      "type": "float"
    }
  ],
  "limitations": [
    "HIGN/LOWN start 2001; not NYSE official."
  ],
  "parameter_grids": [],
  "provenance": {
    "inputs": [
      "INDEX:HIGN",
      "INDEX:LOWN",
      "SPY"
    ]
  },
  "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": []
}
