What actually runs, and where
The model is Kronos-mini with its candle tokenizer, exported to ONNX — about 33 MB of files. Nothing downloads until you press the forecast button and confirm; then the files are fetched once, stored on the device, and reused. A delete button on the same card removes them again.
Inference runs in a Web Worker through ONNX Runtime (WebGPU where available, otherwise WASM). For this path your candles are not sent to a forecast server: the only network requests are the one-time static downloads of the model files themselves. The same candle series you are looking at is the input, so the chart and the projection can never disagree about the data.
What the projection is
The model needs at least 40 candles of history on screen. It then generates the next candles one at a time — 12 by default, up to 48 — each conditioned on the ones before it. The result is drawn as a separate violet, translucent candle series after the last real candle, deliberately not in the green and red of printed candles, and the card next to it names the model and the projected end value.
One projected path is shown. It is not a probability, not a confidence band and not a target anyone stands behind. The line the app prints beside every result is the honest summary: a model estimate from past candles — not financial advice, not a guarantee. A result is cached for a few hours per series so reopening the chart does not recompute the same answer.
What it cannot know
The model sees open, high, low, close and volume — the shape of the recent past. It cannot see the news that has not happened, the liquidation cascade building off-screen, the listing announcement, the exploit, or the large holder about to sell. Most of what moves a price violently is information that does not exist in the candles yet.
It also cannot know that the regime changed. A pattern model extrapolates the behaviour it was fed; when the market switches from trend to panic, the projection is still describing the old world for a while. Fluency is the trap: the projected candles look exactly as tidy when they are wrong as when they happen to land near the print.
Failure is a stated state, not an invented number
Plenty can go wrong: a device without enough memory, a browser without the required features, model files that fail to download or arrive corrupted, a chart with too little history. Each of those is a named, visible state on the card — unsupported, download failed, not enough candles — with a retry where retrying makes sense. Nothing is drawn in place of a result the model did not produce.
That is the same rule the rest of this product follows. The assistant features elsewhere in FBT Swap summarise and monitor; they do not forecast prices and do not recommend trades. This chart model is the one place a projection exists, and it is labelled as a model estimate on the same screen that shows it.