Method
Everything on this page is read from the same constant the engine executes. It is not a description of the method — it is the method.
The six conditions
4h trend
EMA21 and EMA50 separated by at least 0.1% of price.
trend_4h
4h momentum
RSI14 outside the 45–55 band, on the side of the trend read.
momentum_4h
Funding at an extreme
Funding above percentile 80 or below 20 over a 30-day window, with at least 90 observations spanning that window.
funding_extreme
Open interest divergence
24h open interest change with the opposite sign to the 24h price change. Zero does not count as divergence.
oi_divergence
Volatility regime
ATR14, normalised as % of close, above percentile 60 of the last 90 days.
volatility_regime
24h volume
24h volume above 1.5× the median of the previous 20 windows, excluding the current one.
volume_confirm
The three states
- No reading
- At most 1 condition met.
- Forming
- Between 2 and 3 conditions met.
- Watching
- 4 or more conditions met, data less than 120 seconds old and no degraded source. Only this state opens a ledger row.
Stale data or degraded sources cap the state, regardless of how many conditions are aligned. Six out of six over twenty-minute-old data is still six out of six over twenty-minute-old data.
The role of the AI
The AI signs each asset's official verdict from the deterministic evidence, and is subject to automatic verification before any text is published.
- — The deterministic engine sets the official state. The AI receives that state and the six evaluated conditions; a different state is rejected.
- — The language model never receives prices or series — it cannot invent or move a target.
- — The engine cannot assign the "watch" state to stale or degraded data, however many conditions are met.
- — Every number the AI writes has to exist in the evidence it received. A number with no match causes the entire verdict to be refused.
- — Conviction is ordinal — low, medium or high. Never a percentage.
- — Recommendation language, stops and unsupported movement predictions are refused by automatic verification, not merely requested in the prompt.
- — A refused verdict is replaced by the deterministic text, and the refusal is recorded and counted on this page.
- — A separate statistical model learns only from immutable 48-hour outcomes. It starts in shadow and cannot set direction or rewrite a target.
- — A challenger becomes champion only after time-ordered validation with a 48-hour embargo and all published promotion gates satisfied.
- Model
- none
- Readings published
- 9621
- Signed by the model
- 0
- Refused by safety
- 0(0.0%)
Learning engine · collecting
0 labelled 48-hour outcomes · minimum 500 before training · 0 immutable model versions.
Champion: none · Challenger: bootstrap collector
Calculated target
A confirmed structural level between 1 and 2 ATR is used when available. Otherwise the engine uses 1.5 × ATR14. The objective and its 48-hour deadline are frozen at publication.
Track record
Every reading in the watching state opens a row with a horizon of 48 hours. The result is written once and the database refuses any change afterwards.
1628 readings recorded, 0 already resolved, 0 inherited from the previous engine. Below the 100 resolved observations we take as the minimum, we present no aggregate statistic as conclusive.
See the full track recordLimitations
- SinalIA does not claim a guaranteed predictive edge or guaranteed returns.
- A target is a volatility-bounded 48-hour scenario objective, not a promise that price will reach it and not an instruction to trade.
- The engine that preceded this one was measured, out of sample, at a Sharpe of -0.22, a profit factor of 0.87 and a forward hit rate of 46.9% over 2,295 observations. Those observations are in this ledger, marked as legacy.
- No aggregate ledger statistic is presented as conclusive below 100 resolved observations.
- The conditions and thresholds were chosen for being conventional and readable, not for having been optimised over this market. Optimising them over the sample would be the fastest way to produce a pretty, false result.
- The learned model is not described as improving signals until a challenger beats the baseline and the current champion on later, embargoed observations.
- Trading costs, slippage and funding are not deducted from the ledger results: the ledger measures the price change and target path over the horizon, not the return of a strategy.
Thresholds in force
Engine 1.1.0 · universe BTC, ETH, SOL, XRP, BNB, DOGE, ADA, AVAX, OP, ATOM, ENA, TAO, APT, ARB, ASTER, LINK, SUI, DOT, LTC, HYPE, ZEC, NEAR, ONDO, INJ, FET, VIRTUAL, PAXG, XAUT, AAPLX, TSLAX, NVDAX, GOOGLX, METAX, AMZNX, COINX, HOODX, MCDX, CRCLX, SPCXX
| Parameter | Value |
|---|---|
| trendSeparationMinPct | 0.1 |
| trendFastEma | 21 |
| trendSlowEma | 50 |
| rsiPeriod | 14 |
| rsiLowerBand | 45 |
| rsiUpperBand | 55 |
| fundingPercentileHigh | 80 |
| fundingPercentileLow | 20 |
| fundingWindowDays | 30 |
| fundingCadenceHours | 8 |
| fundingMinimumSample | 90 |
| atrPeriod | 14 |
| atrPercentileMinimum | 60 |
| atrWindowBars | 540 |
| volumeMultiple | 1.5 |
| volumeWindowPeriods | 20 |
| volumeBarsPerDay | 6 |
| maxVenueCountDrift | 1 |