โ€บNavigation
Dashboard โ€บ Three-Axis Probes โ€บ Shared Data Pool โ€บ Forex candidate intake standard

finding ยท mql5 ยท findings/shared_data/forex-candidate-intake-standard.md

The Forex candidate intake standard: one ledger, one preflight, zero double-evaluation

The forex twin of the crypto intake standard. Same discipline โ€” one append-only ledger row per candidate, one preflight, a hard rule that no idea is evaluated twice โ€” but forex-scoped and resident in the mql5 repo, where the forex audit folders live. The crypto shared-data pool links to it; it does not host it.

In plain English. Until now, forex feature ideas were tracked the hand-written way: a scoreboard file (STATUS.md), a verdict file (keepers.json), a deferral register (DEFERRALS.md), one per campaign. That works until two campaigns quietly re-test the same idea. This standard gives forex the same single, machine-readable logbook crypto already has โ€” one row per candidate, stamped the moment it is named, that can only gain notes, never lose them โ€” plus a one-command preflight that catches duplicates before any expensive evaluation.

What is this?

A single SSoT ledger โ€” forex_candidate_ledger.jsonl in mql5/findings/shared_data/ โ€” driven by the CLI forex_candidate_ledger.py. Every forex candidate gets exactly one row at identification time and walks a fixed set of named stages, so you can always see at a glance where any idea stands and never re-evaluate one already on file.

identified โ†’ pending โ†’ evaluating โ†’ evaluated โ†’ promoting โ†’ promoted

Three are terminal โ€” dead ends an idea can land in and never leave:

The standard flow for a NEW forex candidate

StepWhat you run / produceWhat it guarantees
1forex_candidate_ledger.py --check "<name>"No double evaluation. Exact + โ‰ฅ8-char containment match over all names & aliases โ€” seeded with every prior forex batch, so a re-discovery is caught instantly.
2--add --num N --name โ€ฆ --family โ€ฆ --audit-folder findings/audits/<campaign>/One row at birth โ€” stage identified, pointing at its mql5 audit folder.
3--preflight "name1,name2,โ€ฆ"Per candidate: dedup verdict + ledger stage + audit-folder-on-disk. (Axis-2 parameterless + knob-floor are a forex extension point โ€” wire a forex parameterless probe here when one exists.)
4the evaluation loop runs โ†’ per-cell recordsOrthogonality verdicts via Spearman |ฯ| + Chatterjee ฮพ across the crossed regime panel; slates of โ‰ฅ2 cross-check siblings.
5--set-stage fxcand-XXXX <stage> --note "โ€ฆ"The outcome is written back โ€” the next campaign's Step-1 --check sees it and avoids repeating the work.

Stage + status at intake (this discovery campaign)

A pure discovery pass โ€” find โ†’ de-dup โ†’ provenance โ†’ testability โ€” is not an evaluation, so candidates land conservatively:

Real-data testability gate (forex substrate)

Every candidate must be computable from real forex bars on bigblack (read-only ClickHouse):

Per-candidate exit criteria

#Requirement
1Provenance โ€” a research finding with a stable paper ID (arXiv / DOI / SSRN / ISBN).
2SOTA FOSS implementation โ€” a reference open-source implementation found via web search, with its SPDX license.
3Git-hash de-dup anchor โ€” the commit hash of the chronicle snapshot the candidate was confirmed novel against.
4Real-data testability โ€” the exact FOREX_COLUMNS / fields it is computed from.
5Parameterless flag โ€” parameterless-by-inspection true/false (preferred, not required).

Seeded from prior art

The ledger is bootstrapped with every forex candidate already evaluated or queued across the 2026-06-03 discovery and 2026-06-07 implementation campaigns (batches 1โ€“10) โ€” so the new brute-force sweep --checks against real history, not a blank slate.

1
Ledger row per candidate
5
Steps in the flow
6 + 3
Normal + terminal stages
42
FOREX_COLUMNS substrate

Relationship to crypto

This ledger is separate from the crypto candidate_ledger.jsonl (BTCUSD-only). The forex shared-data layer was archived from active scope on 2026-05-30; this standard reintroduces forex with its own ledger in mql5 rather than reversing the crypto-only decision in opendeviationbar-py. The two tracks run in parallel and share only the pattern, not the ledger file.

Bottom line. Forex now has the same one-ledger / one-preflight / zero-double-evaluation discipline as crypto โ€” append-only, machine-readable, seeded with prior art, and resident where forex actually lives (mql5).