OPEN-SOURCE SCRIPT

Holy Grail (100% Win Rate)

1 178
tldr:
1. Here you go folks – no repaint, no dodgy stuff, and 100% win rate
2. DO NOT TRADE THIS
________________________________________
Key points:
• Assets to trade: SPY, NASDAQ, DAX, FTSE, Bitcoin
• Time Frame: 1D or higher
________________________________________
What does the script do?
The script buys a certain amount of the asset every time we're in a pullback, and sells when we make a new All-Time High (ATH). More specifically, it waits for the first green candle after the lowest point of the pullback, and then adds to the position. We assume that when we see a green candle, the pullback is over. If we go even lower – we wait for another green candle. The script sells on the first red candle after an ATH.
The pullback is identified using a simple moving average (MA) – if we're below the MA, we're in a pullback.
You can set the MA length in the settings. I considered adding different types of MAs, but decided against it as it wouldn't change much in terms of the general idea.
You can also set the percentage of your account to invest on the very first candle – this is an initial pre-filling of the position, so you have something to sell if the price goes straight up after you start trading. If you think we’re in a bear market and the only way is up, you might want to set a higher number. On the other hand, if you believe we’re near the top of a bull market, set a lower one.
You can set the percentage of the position to sell on each red candle after ATH under Settings → Input → Exit %. Similarly, you can set the percentage to buy on each green candle after a pullback low under Settings → Properties → Order Size. Since bull markets tend to last longer than bear market pullbacks, you’ll typically want Exit % to be larger than Order Size — though this may vary depending on your initial pre-fill.
________________________________________
Why these assets?
These are assets that are expected to go up over the long run. I call them “number go up” assets. Meaning: no matter where they are now, at some point in the future they’ll make a new ATH. That’s why this might not work on individual stocks like Nvidia or Tesla — there’s no guarantee they won’t go bust tomorrow. We all remember big companies from the past (Enron, Lehman Brothers, etc.) that collapsed unexpectedly.
With SPY, you're betting on the American economy. And the American economy will go up at least because of inflation. If you believe inflation will continue, then you believe we’ll eventually see a new ATH in SPY. It may take years — like from 2007 to 2013 — but it happened. And there was a bull run after that.
And if you think the American economy will never grow again — well, if that’s true, we’ll all have much bigger problems than trading scripts.
________________________________________
Why this time frame?
Because, as mentioned, it may take a long time to reach a new ATH. You can use a shorter time frame, but that requires a higher TradingView subscription plan to view multi-year data.
Also, if you choose a shorter time frame, you should reduce the Order Size and Exit % accordingly, because the script will jump in on every new green candle after a pullback. On a 1-minute chart, that could mean 100x more entries compared to daily. Conversely, if you go to a higher time frame, increase the sizes — otherwise, too much of your capital will just sit unused.
________________________________________
So if everything is so great and it has a real 100% win rate – why not trade it?
  1. If you turn on the “buy & hold equity” curve, you’ll see that the profit from all closed trades (with a 100% win rate) is smaller than if you had simply bought the asset and held it for years.
  2. Real-world slippage and fees will reduce your actual profits even more.
  3. If you’re unlucky and start trading at the very top of a bull market, it might take 10 years before even a single trade is closed.
  4. Some assets that seem like they can only go up long-term... might not. Take Bitcoin. Many believe it can only go up in the long term, but it could still die — just like anything else. The only reason I included it is because many people treat it as a “number go up” asset. And I know some will try to trade it. You've been warned. But I don’t want to start holy wars in the holy grail description (pun intended), so let’s move on.

________________________________________
What if, after all this, you do decide to trade this strategy?
Why would you? Maybe not for profit, but just to impress your friends with a 100% win rate. Or maybe you skipped the entire explanation above and just want to jump in because it sounds like a sure win.
Whatever your reason, first you should research the asset’s historical max time (in years) between ATHs. That’s how long you might need to keep a trade open. My other script – Cycles Analysis – might help with this.
Second, experiment with the input parameters. There aren't many, so it should be easy to find what works best for your asset. You can also enable “Show stats table” in settings – it’ll help you see how many entries/exits the script makes, which will help you find the right Order Size to Exit % ratio.
Yes, this might lead to over-optimization — but hey, if we’re at this stage, who cares, right?
That said, I did find some rare cases where specific parameter setups caused performance to dip below 100% due to a mandatory close at the wrong time.
Also, since trades can last for years, don’t use this with futures — you'd have to keep rolling them over. Use ETFs or similar long-holdable assets.
________________________________________
The final word
In short, this is a glorified “Buy the Dip” strategy. It only works long-term on a very limited set of assets, and in most cases performs worse than just buying and holding for the same period.
I created this script as a teaching tool — to show new traders that win rate isn’t everything. Even if the win rate is 100%. Trust me: it’s extremely hard to beat the market (especially without leverage), and this script is just more proof of that.

Feragatname

Bilgiler ve yayınlar, TradingView tarafından sağlanan veya onaylanan finansal, yatırım, işlem veya diğer türden tavsiye veya tavsiyeler anlamına gelmez ve teşkil etmez. Kullanım Şartları'nda daha fazlasını okuyun.