Most tools ask you to trust a black box. This page documents our engine end to end — every data source, every indicator parameter, every scoring weight and every threshold. You can rebuild the logic on your own charts and check whether it holds.
FX CURIO does not predict prices. It measures the state of a market across three timeframes, converts that state into a bounded score, and lets a language layer explain the reasoning and argue against it. Everything below is deterministic: the same candles produce the same score, every time. The only non-deterministic component is the written narrative — which is why the numeric score, not the prose, is the primary object.
Five stages from raw candles to a documented setup. No stage is hidden from you in the product.
Price data comes from Twelve Data as OHLC candles per symbol and timeframe. We request 100 closed candles per timeframe so that even a 200-period reference has a meaningful history, and we work with closed candles only — a forming candle would silently repaint every indicator.
Each of the three timeframes is reduced to one indicator snapshot with fixed, published parameters. Nothing here is optimised per symbol — curve-fitted parameters are the fastest way to build a backtest that dies in live markets.
On the entry timeframe we detect candle formations and horizontal structure geometrically — no image recognition, no subjective drawing. A swing high or low needs two lower highs (or higher lows) on each side to count.
A long score and a short score are accumulated independently from the snapshots. Both are additive and bounded at 100, so no single condition can carry a setup on its own. The full weight table is published below.
Only after the numbers exist does the language layer run. It receives the snapshots, patterns, levels and score — never a raw chart image alone — and produces a structured read: scenario, invalidation, risk framing, plus an explicit counter-argument and an uncertainty statement when the evidence is thin.
These are the actual constants in the scanner, not an illustration. HTF = higher timeframe, MTF = setup timeframe, LTF = entry timeframe.
| Condition | Long | Short |
|---|---|---|
| HTF trend up / down | +20 | +20 |
| MTF trend up / down | +10 | +10 |
| Three-timeframe trend confluence | +10 | +10 |
| HTF EMA50 above / below EMA200 | +8 | +8 |
| Price on the trend side of MTF EMA20 | +7 | +7 |
| MTF RSI 50–70 (bullish) / 30–50 (bearish) | +10 | +10 |
| MTF RSI above 75 (overbought) | −8 | +4 |
| MTF RSI below 25 (oversold) | +4 | −8 |
| MACD histogram sign on MTF | +5 | +5 |
| Confirming candle pattern on LTF | +10 | +10 |
| Medium volatility | +5 | +5 |
| Low volatility | −3 | −3 |
Both scores are capped at 100. The reported score is the stronger of the two directions.
How a raw score becomes a directional bias — and what we do with it.
| Score | Classification | Meaning |
|---|---|---|
| Below 40 | Neutral | No setup is published, regardless of which side leads |
| 40–59 | Directional bias | Visible in the terminal and watchlist as context, not as a trade |
| 60–79 | Valid setup | Enters the scanner list and the public track record |
| 80–100 | High confluence | All three timeframes plus momentum and structure agree |
A high score means many conditions align — not that the trade will win. Confluence raises the odds of a clean move; it never removes the risk of being wrong.
Each trading style uses a fixed triple: trend timeframe, setup timeframe, entry timeframe. This is what prevents scalping logic from being applied to a swing chart.
| Style | Trend | Setup | Entry |
|---|---|---|---|
| Scalping | H1 | M15 | M5 |
| Day trading | H4 | H1 | M15 |
| Swing trading | D1 | H4 | H1 |
| Position trading | W1 | D1 | H4 |
The public track record runs exclusively on the day-trading triple (H4 / H1 / M15).
The public signal journal exists to make the engine falsifiable. Its rules were declared before the first signal and are frozen in code.
A methodology paper that lists only strengths is marketing. These are the weaknesses we know about.
Any engine that silently changes its rules can claim any track record it likes. Ours is bound by three commitments.