Import the file your terminal wrote
Every terminal exports a different shape. MT4 writes 2003.05.05,00:00 with no header at all; MT5 writes tab-separated <DATE> and <TIME>; TradingView writes ISO timestamps or raw unix seconds; Dukascopy writes day-first with milliseconds. Rather than support a list of vendors, the delimiter, the header, the column roles and the date format are worked out from the data itself — then shown to you as a mapping before anything is committed.
See what is wrong with it before you accept it
Broker exports are messier than people expect: repeated bars around a server restart, an inverted high and low from a bad tick, a whole day missing after a feed outage. Every import is measured for gaps, duplicates, bars out of order, weekend bars and the number of digits, and the counts are shown before the data is stored. Nothing is thrown away silently except exact duplicates.
Get your broker’s candles, not somebody else’s
Timestamps are read at face value: whatever clock the broker’s server was on is kept, and recorded as the dataset’s offset. Higher timeframes are never stored — they are rebuilt from the base series on demand against that offset, so an H4 bar is cut where your terminal cuts it. Mixing a GMT+0 history with a GMT+2 broker is where this earns its keep, and detectBrokerOffset() recovers the difference by reading the grid the timestamps land on rather than by comparing prices.
Replay it, in the frame you meant
Three modes, kept apart on purpose. Free replay is bars and nothing else — no account, no ticket — because a money frame changes what the exercise is. An account run puts a starting balance and a dealing ticket in front of you, with a journal and statistics. A strategy run does the same with rules instead of a hand.
Test the rules, and see what the number rests on
The backtester fills at the next bar’s open, resolves a bar that spans both stop and target as a loss and reports how many it did that to, fills gaps at the open rather than at your level, and charges spread, commission and swap. Twenty figures come back, split between what it made and whether the stop and target were in the right places.
Keep the work, and take it with you
Drawings are stored against the file they belong to and come back with it. A chart you save keeps its indicators, its layout and its splits. Everything you make can be exported, always — including on the free tier, because work you cannot get out is work somebody else is holding.
None of it leaves the machine
Price history is read in the browser and stored there. There is no upload, no account needed to chart, and no server that sees a position of yours. Open the Network tab and watch, if you want to check rather than take our word.
No market data ships with it
Broker price history is not ours to redistribute, so the app carries a synthetic DEMO series and imports yours instead. That is also why the first step is a file rather than a symbol.
It works with whoever you trade with
The tool is broker-neutral and will never steer you toward one. The only thing it wants from a broker is the export button you already have.