How the backtests are built
Every result in the app is a backtest, a replay of fixed buy and sell rules on recorded prices. This page sets out exactly how that replay works, what it charges, and how it's kept up to date.
Suppose that on 1 January 2015 you had written down Von Lohengramm T7's rules, then followed them to the letter until today: buy BTC with everything when its votes turn bullish at the close of a 5-day bar, sell everything when they turn bearish, and sit in cash otherwise. A backtest does exactly that, with recorded prices instead of real money. The account line on every strategy page is the result: what 100 would have become if someone had followed the rules without exception, at the recorded prices and, for most strategies, without any trading fee.
Because the rules are fixed and the prices are history, a backtest isn't a guess. It's an accurate record of what a rule would have done, under the assumptions below. Whether that rule keeps working is a separate question, covered in Overfitting and how we test for it and Risks and what this is not.
The rules of the replay
These are the settings the backtest engine uses for every published strategy, with two exceptions on position size described under the table:
| Setting | Value | What it means |
|---|---|---|
| Starting account | 100 | Every account line starts at 100, not a currency |
| Direction | Long only | A strategy either holds the market or holds cash; it never bets on falling prices |
| Position size | 100% of the account | On a buy, the whole account goes in; on a sell, all of it comes out |
| Leverage | None | Nothing is borrowed |
| Adding to a position | Never | One buy, then one sell; no topping up halfway |
| When it decides | At the close of a bar | Only finished bars count |
| When it trades | Most strategies, Von Lohengramm T7 among them: at the close of the bar that gave the signal. A few: at the open of the next bar | See the note below |
| Trading fee | Most strategies: none. A few charge a small fee on every buy and every sell | Your own exchange or broker fees come on top either way |
| Slippage | 0 | The fill gets exactly the recorded price |
| Interest on cash | 0 | Cash while Flat earns nothing |
| One trade | A buy plus the sell that closes it (a round trip) | A position that is still open shows in the Trades list but isn't counted in the trade statistics |
| Time zone | UTC | All bar times and dates are in UTC |
Why the close? Most strategies follow TradingView's convention of trading at the close of the bar that gave the signal, which keeps them in line with the TradingView scripts Golden Path Strategies started with. Crypto trades around the clock: its bars close at midnight UTC and the next one opens at that same moment, so the close is about the first price anyone could get. Still, you only learn of the signal after the close, so you always trade a little later than the model. For markets that pause at night or at weekends, such as gold, the S&P 500 and stock funds, the next price you can actually trade at can differ more.
Two kinds of strategy hold positions differently. DCA books move a share of the account in and out in steps instead of all at once, and every part they sell counts as its own trade. Two-market strategies compare two markets, and in their dollar view hold the second market instead of cash; there, each spell in one market counts as a trade. Strategies whose name starts with (BTC) are not an exception: they follow the table, but take their signal from BTC's chart and trade another market.
Bars, and only finished ones
Prices are grouped into bars (also called candles). Each bar records the opening, highest, lowest and closing price over its stretch of time.
| Market | One bar is | Bars per year |
|---|---|---|
| Crypto (BTC, ETH, SOL, HYPE, VVV), crypto indexes, gold, the S&P 500 | 5 calendar days, starting at midnight UTC. The count restarts on 1 January, so the year's last bar can be shorter. | 73 |
| Exchange-traded funds such as SOXX (chip stocks) | 5 trading days, about a calendar week. A holiday makes a bar longer. The count also restarts each year. | about 52 |
A bar is labelled with the date it starts. That's why a strategy page on the free version can say "Window 2015-01-01 → 2026-07-20" while the free version ends on 23 July: the last bar it shows began on 20 July.
Strategies only ever act on finished bars. The rightmost bar on a price chart may still be forming, and the Long or Flat it shows can change until it closes. Signals, alerts and the numbers you see treat a position as changed only once its bar is complete.
The 5-day timeframe itself is a choice made after years of testing shorter and longer bars (About tells that story). Daily bars reacted to too much noise, weekly bars too late. On 5-day bars most strategies trade only a few times a year, which also keeps costs low.
Where the prices come from and where history starts
Price history comes from TradingView's market data. For BTC that's the INDEX:BTCUSD composite, an average across major exchanges rather than one exchange's price.
Results are shown from 1 January 2015, or from the first day a market has prices if it started later. HYPE, for example, only has history since late 2024, so its strategies have seen far fewer ups and downs. Where older prices exist, the indicators are warmed up on them first, so the first signals in 2015 are based on a full history rather than a few weeks of data.
Changing the dates doesn't rerun a strategy
When you click 3Y or set your own range, the app doesn't run the strategy again from that date. It cuts the stored result to your window and works out the metrics for that piece. The trades inside your window are the same trades the full backtest made. A shorter window can't create new trades or move old ones; on the chart and in the Trades list it can only cut a trade at its edge. The trade statistics count a trade only if it was entered inside your window, so a trade that began before the window is left out of them. Portfolios are the exception: their shared account restarts at 100 on the first day of your window, so a new window does replay every purchase (see How the simulated account moves).
The nightly update
Every night at about 00:10 UTC:
- The newest prices are fetched for every market.
- Every strategy is brought up to date with the bars that have just finished.
- An open trade is valued at the close of the latest finished bar, so account lines and some metrics move with each new bar even without a trade. Between bar closes they stay put.
- All alerts are checked against the finished bars, and e-mails go out straight away. An alert therefore reaches you after the nightly run, some time after the bar closed, while most backtests traded at that close.
Past results stay the same from night to night. Only the end of the line grows. The history changes only if a strategy is republished as a new version, for example after a data error has been fixed.
What a backtest leaves out
The replay is cleaner than real trading. Spreads, slippage, network and withdrawal fees, funding costs and taxes aren't in it. It always gets its trade, always at the recorded price, and acts the moment the bar closes, whereas a real order may come hours later. Real results are likely to come in below the backtest, since these rules were chosen with the past in view and the replay leaves out the costs above. Risks and what this is not goes through each of these.
Who builds the strategies
Golden Path Strategies began as a set of invite-only strategy scripts on TradingView, which are still listed on the TradingView profile as a legacy reference, and now runs entirely in this app. Questions go to support@goldenpathstrategies.io.
There is no record of these rules traded with real money. What the app shows is the backtest, updated every night: every bar added since a strategy was published is a bar its rules had never seen.
Open Von Lohengramm T7 - BTCUSD, click the Trades tab and compare an exit date with the next entry date. In between, the strategy sat in cash.