This strategy is called “Daily Close Price Comparison Strategy”. It is a quantitative trading strategy that makes trading decisions based on daily close prices. The strategy generates trading signals by calculating the difference between the current daily close price and the previous daily close price. When the difference exceeds a set threshold, buy or sell orders are executed.
The core logic of this strategy is to compare the close prices between the current candlestick/bar and the previous one. Specifically:
The strategy does not set stop loss or take profit conditions, and relies on the threshold-triggered signals for entry and exit.
This strategy generates trading signals by comparing daily close prices. The logic is simple and suitable for beginners to learn. But it contains certain risks and needs further optimization for live trading.
/*backtest start: 2022-11-14 00:00:00 end: 2023-11-20 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Daily Close Comparison Strategy (by ChartArt) correct results", shorttitle="CA_-_Daily_Close_Strat", overlay=false) // ChartArt's Daily Close Comparison Strategy // // Version 1.0 // Idea by ChartArt on February 28, 2016. // // This strategy is equal to the very // popular "ANN Strategy" coded by sirolf2009, // but without the Artificial Neural Network (ANN). // // Main difference besides stripping out the ANN // is that I use close prices instead of OHLC4 prices. // And the default threshold is set to 0 instead of 0.0014 // with a step of 0.001 instead of 0.0001. // // This strategy goes long if the close of the current day // is larger than the close price of the last day. // If the inverse logic is true, the strategy // goes short (last close larger current close). // // This simple strategy does not have any // stop loss or take profit money management logic. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // // __ __ ___ __ ___ // / ` |__| /\ |__) | /\ |__) | // \__, | | /~~\ | \ | /~~\ | \ | // // threshold = input(title="Price Difference Threshold correct results", type=float, defval=0, step=0.004) getDiff() => yesterday=request.security(syminfo.tickerid, 'D', close[1]) today=close delta=today-yesterday percentage=delta/yesterday closeDiff = getDiff() buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1] hline(0, title="zero line") bgcolor(buying ? green : red, transp=25) plot(closeDiff, color=silver, style=area, transp=75) plot(closeDiff, color=aqua, title="prediction") longCondition = buying if (longCondition) strategy.entry("Long", strategy.long) shortCondition = buying != true if (shortCondition) strategy.entry("Short", strategy.short)