The most upvoted strategies on Tradingview are those which seemingly work 100%, but they actually don't at all because they are repainting and would not work in live trading reality. They are using the multi-time-frame strategy testing bug and thereby trade during the backtest on close prices before the bar has closed in reality.
Top list of these cheating repainting strategies:
- 1569 upvotes ANN Strategy
- 877 upvotes Vdub FX SniperVX3 Strategy
- 481 upvotes Get Trend Strategy
I guess there are much more strategies among the top upvoted strategies on Tradingview which cheat with a multi-time-frame close price, but three examples are enough. The ANN Strategy uses the daily close price as multi-time-frame and cheats with that. The Vdub FX SniperVX3 Strategy uses the half-day (720 minute) close price to cheat and the Get Trend Strategy uses the 160 minute bar close for repaint cheating (at least here the author of this strategy explains that his strategy is only demo and would not work, which might be the reason why it has 1000 less upvotes than the ANN Strategy. I already wrote months ago a comment underneat these strategies to explain this issue but it hasn't stopped these strategies from getting more and more upvotes and staying in the top list.
I thought this way of cheating is lame, so I invented a new way to cheat my way to seemingly reach 100% profitable trades all the time by going long if 1+1 is equal to 2. Welcome to super wide stop losses. Simply use a extreme unrealistic large stop loss and take profit after a realistic amount of pips and according to Tradingview's current backtest module you win 100% all the time. Yay! :)
My recommendation for the Tradingview team is to add a function to let the user define a stop out and margin call level and maybe set a realistic setting as default, like 100%.
Please don't trade with this strategy!
//@version=2 strategy("The Always Winning Holy Grail Strategy - Not (by ChartArt)", shorttitle="CA_-_Not_The_Holy_Grail_Strat", pyramiding = 0, overlay=true) // Strategy entry condition: if 1+1 == 2 // go long if 1+1 = 2 strategy.entry("long", strategy.long, comment="long", qty = 10) // Money management of the strategy: TakeProfit = input(100,step=25) StopLoss = input(999999999999999,step=999999999999999) // Strategy exit condition: (always take profit and use a super extreme ridiculous wide stop loss) strategy.exit("exit", "long", profit = TakeProfit, loss = StopLoss)
I had fantastic results while tweaking settings and backtesting, and tried live trading on a 1min chart with the settings I settled on. It wasn't going as well as I expected, and then when I saw a "Buy" signal from a few bars earlier disappear, I thought "What the hell was that? Where'd it go?!"
I have now learned about repainting....
I, and most people I've worked with have almost completely stopped checking and sharing scripts on TV due to the clutter of fictional strategies.
I made a post on getsatisfaction for what I believe would be a simple, but effective system to eliminate this.
I have met far too many people that have lost money trying to trade these strategies.
"yesterday=security(tickerid, 'D', ohlc4)"
"today=security(tickerid, 'D', ohlc4)"
And the Vdub FX SniperVX3 strategy uses multi-time-frame price data in lines 61 to 63:
"ch1 = security(tickerid, Piriod, open)"
"ch2 = security(tickerid, Piriod, close)"
And as my strategy (which does not use multi-time-frame) shows, a strategy with a very very large stop loss is also unrealistic (line 15).
"loss = "