FX
CURIO
Methodology paper

How a signal is actually built

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.

Engine: Curio AI 1.2 · Scanner core v3Reflects the code currently running in production

Abstract

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.

The pipeline

Five stages from raw candles to a documented setup. No stage is hidden from you in the product.

01

Market data

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.

  • ▸Coverage: FX majors and crosses, metals, indices, crypto, and US and EU equities
  • ▸Requests are cached and throttled (7 requests/minute) to stay inside provider limits
  • ▸If a timeframe returns fewer than 30 candles, the symbol is skipped instead of scored on thin data
  • ▸No broker connection: we never see your account, orders or positions
02

Indicator layer

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.

  • ▸EMA 20 / 50 / 200 on closes
  • ▸RSI 14, MACD 12/26/9, Stochastic 14/3
  • ▸Bollinger Bands 20 / 2σ, ATR 14
  • ▸Trend classification: up when close > EMA20 > EMA50 > EMA200, down when the stack is fully inverted, otherwise sideways
  • ▸Volatility classification from ATR as a percentage of price: below 0.3% low, above 1.2% high, otherwise medium
03

Structure and patterns

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.

  • ▸Candles: Doji, Hammer, Shooting Star, Bullish/Bearish Engulfing, Morning/Evening Star
  • ▸Levels: up to three support and three resistance zones from confirmed swing points over the last 50 candles
  • ▸Streak counter: consecutive green or red entry candles, as an exhaustion warning
  • ▸Pro tier adds order blocks, break of structure, change of character and harmonic geometry
04

Scoring

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.

  • ▸Higher timeframe trend dominates the weighting — a counter-trend setup can never reach a high score
  • ▸Overbought/oversold RSI extremes actively subtract from the aligned direction
  • ▸Low volatility is penalised: correct direction plus no movement is still a losing trade after costs
  • ▸Correlation and news windows are surfaced as separate warnings, not blended into the score
05

Curio AI narrative layer

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.

  • ▸A transparency log shows which inputs the analysis used, step by step
  • ▸Every analysis must state what would invalidate it
  • ▸Low-conviction cases are labelled as such instead of being dressed up
  • ▸The narrative can never overwrite the score — if they disagree, you see both

Scoring weights

These are the actual constants in the scanner, not an illustration. HTF = higher timeframe, MTF = setup timeframe, LTF = entry timeframe.

ConditionLongShort
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.

Bias thresholds

How a raw score becomes a directional bias — and what we do with it.

ScoreClassificationMeaning
Below 40NeutralNo setup is published, regardless of which side leads
40–59Directional biasVisible in the terminal and watchlist as context, not as a trade
60–79Valid setupEnters the scanner list and the public track record
80–100High confluenceAll 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.

Timeframe matrix

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.

StyleTrendSetupEntry
ScalpingH1M15M5
Day tradingH4H1M15
Swing tradingD1H4H1
Position tradingW1D1H4

The public track record runs exclusively on the day-trading triple (H4 / H1 / M15).

Track-record rules, fixed in advance

The public signal journal exists to make the engine falsifiable. Its rules were declared before the first signal and are frozen in code.

Asset basket
7 FX majors, XAU/USD, BTC/USD — declared once, never rotated
Strategy
Day trading (H4 / H1 / M15) for every signal
Entry threshold
Score of 60 or higher, long or short
Stop loss
ATR-derived, set before entry, never moved
Targets
TP1 at 1R, TP2 at 2R
Resolution
Hourly cron against real candles — first level touched wins
Expiry
Unresolved signals close after 7 days at the then-current price
Deletions
None. Losses stay visible, including the ugly ones
Known limitations

A methodology paper that lists only strengths is marketing. These are the weaknesses we know about.

Change policy

Any engine that silently changes its rules can claim any track record it likes. Ours is bound by three commitments.

Check it, don't trust it

Read the live signal journal, or see how the tiers differ before you decide.