Paper Trading Hedge Fund
An automated fund that trades the US market with simulated money every weekday, built so the number at the end of a run can actually be trusted.
The idea
Anyone can produce a trading backtest that looks brilliant. Let the strategy peek a few seconds into the future, fill its orders at the price that triggered them, leave out the fees and the spread, and a losing idea turns into a beautiful equity curve. The hard part isn't building a trading system, it's building one that refuses to flatter itself.
So that's the brief I set myself: an automated fund that trades the US market on paper, where every result has to survive a system designed to catch me out. No real capital, ever. A strategy should have to earn a track record before it's trusted with anything real.
The build
It's an event-driven system in Python. The decision everything else hangs off is that backtesting and live paper trading run through the same event loop and the same strategy code, with only the market data feed and the broker connection swapped underneath. A parity test proves it: both paths produce identical signals, orders, fills and final positions over the same market events. If a strategy ever behaved differently live than it did in testing, that's a fault in the architecture, not bad luck.
Underneath sits a proper double-entry ledger, the same accounting a real fund runs on. It has to balance after every single entry, and nothing is ever fudged to make it agree. Around it are the defences: the strategy only ever sees a masked view of the past, so asking for tomorrow's price raises an error instead of quietly working, orders never fill on the bar that triggered them, and a deliberately cheating strategy lives in the test suite so that if the traps ever stop catching it, the build fails.
Then there's the real cost of trading, which is where most home-built systems quietly lie. Regulatory fees on verified published rates, the spread, market impact, order latency, venue rejections, and a cap on how much of the day's volume a single order can be. Each one can be switched off on its own, and a report runs the strategy with everything off, then one component at a time, so I can see exactly what each is costing me.
The first lesson
The first strategy I ran through it traded on minute bars, and it taught me the most important thing so far. It made money right up until the costs went in, then lost it: trading around nine hundred times the account value over the test period turned a healthy paper profit into a genuine loss. That was a turnover problem, not a cost problem, and it's exactly the result the whole build exists to surface. A more flattering system would simply never have told me.
The strategy now
So I went the other way. The fund now runs a slow, long-only trend portfolio across 20 liquid ETFs covering US and international shares, sectors, bonds, gold, property and commodities. Once a month it ranks them on momentum, holds the strongest six that are genuinely trending, and parks anything left over in short-dated bonds. Between rebalances it only trades when a holding drifts far enough to matter.
The parameters are textbook and untuned, on purpose. Over a backtest from 2019 to late 2026 it returned 11.9% a year with a maximum drawdown of 17.3%, against 13.8% and 33.0% for simply holding the S&P 500. Less return, roughly half the pain, and every comparison runs through the same engine and the same costs.
Where it's at
It's now running live on paper. Every weekday a scheduled job loads the previous session's prices, reconciles the books against the broker to the cent, lets the strategy decide, and sends the orders. The tracker leads with the live portfolio and will build a real track record one session at a time.
Putting it in front of real market traffic shook out bugs no backtest could, which is exactly why a strategy has to earn a paper track record before anything else.

