High Frequency Trading Simulator
Backtesting on Level 1 data is the main reason strategies look great in simulation and bleed money in production.
HFTS simulates full Level 2 with real network latency and microsecond timing — check if your strategy actually works before you risk your money.Why it matters
Traditional OHLC-based backtests assume your order fills instantly at the last price. In high-frequency markets, that assumption costs money. HFTS uses a discrete-event simulation (DES) engine to model every order, fill, and market update with microsecond precision.
From the author
OHLC candles compress thousands of individual quote updates into four numbers. HFTS feeds your strategy a raw Level-2 event stream — over 80,000 ticks per day per instrument, every bid/ask and size update in original arrival order — so passive limit orders are matched against the actual queue state at the moment of arrival. A limit posted 12 ms after a large momentum tick faces a different fill probability than one posted in a quiet period; HFTS captures that difference.
HFTS replays raw quote events at their original exchange timestamps — down to the microsecond. When your strategy signal fires at T+0 µs, the engine schedules the order arrival at T + RTT and matches it only against the order book state that existed at that exact moment. A 10 ms difference in round-trip latency can mean the difference between a fill and a miss.
Set your expected round-trip time — from a co-located 0.3 ms to a retail 80 ms connection — and HFTS injects that delay deterministically into every order. Because the order enters the event stream at the correct delayed timestamp, slippage is not random noise: it is the structural cost of being late to a fast-moving queue. You see exactly how many basis points your strategy bleeds to execution lag per trade.
Your strategy is a regular Python class. Use any logic you can express in code: conditionals, state machines, rolling windows. Use 46 technical indicators from external lib — SMA, EMA, RSI, MACD, VWAP, Bollinger Bands, ATR, and more — available with a single import, and you can create your own with few lines of code. Python keeps the feedback loop tight: edit in the browser, run, iterate. No proprietary syntax to learn, no framework lock-in.
Strategy editor
No proprietary DSL. No framework lock-in. Your strategy is a Python function that receives every market event as a structured object and returns orders. HFTS handles the rest.
Reporting
See every fill, every cancellation, and every latency measurement. The report view shows your accumulated P&L curve alongside a trade log that includes actual execution delay per order.
Data
You do not need to source or clean data. HFTS ships with high-quality Level-2 quote data for major crypto and fx instruments, updated regularly, ready to replay against your strategy.
Pricing
All plans include the full strategy editor and event-driven engine. Paid plans unlock longer date ranges, more strategies, and extended execution limits.
Free
forever · no card required
Pro
per month · billed monthly
Your subscription helps keep the data running on faster servers and new features coming.
Quant
per month · billed monthly
What traders say
Feedback from early users testing strategies on real tick data.
"Every other backtester I used showed my scalping strategy breaking even at worst. HFTS showed me it was actually losing 40 bps per trade to execution lag alone. That was exactly the insight I needed."
"The Python interface is clean and the event format is well-documented. I had my existing signal logic running in under 10 minutes. The latency injection is the feature that sets this apart from everything else."
"I love that the free tier gives you real tick data for one day — enough to validate your idea quickly without paying anything. Upgraded to Pro when I needed longer history."
Contact
Have a question, feedback, or would like to suggest a new feature? Do not hesitate to contact us directly.