
The MACD Indicator Bottom Reversal Early Warning Strategy analyzes the fast and slow lines of the MACD indicator to determine whether the current price is at a historical high or low and whether a reversal will occur soon, in order to quickly judge the trend of market prices.
This strategy screens and filters the fast line and slow line data corresponding to the output of the standard MACD indicator to judge whether the price has entered the critical area before reversal and issues buy or sell signals.
Specifically, the strategy judges whether the price has entered the bottom area of an uptrend or the top area of a downtrend by calculating the golden cross and death cross of the fast and slow lines of the MACD. On golden crosses, if the close price is higher than the close price of the previous bar and the diff is higher than the diff value of the previous bar, it is determined that the bottom area has been entered and a bottom reversal early warning signal is issued. On death crosses, if the close price is lower than the close price of the previous bar and the diff of the previous bar is higher than the current diff value, it is determined that the top area has been entered and a top reversal early warning signal is issued.
Solutions:
1. Combine with other indicators such as K-line patterns and changes in trading volume for judgment
2. Adjust parameters to suit different trading varieties and time frames
3. Timely stop loss to control risks
The MACD Indicator Bottom Reversal Early Warning Strategy can effectively discover bottoms and tops to provide guidance for trading decisions by analyzing MACD fast and slow line crosses to judge whether prices have entered the critical area before reversal. However, the lagging judgment of the MACD itself cannot determine the exact reversal point and reversal momentum. Therefore, appropriate parameter adjustments are needed, combined with other indicators, to control risks and leverage the effectiveness of this strategy. In the future, the introduction of machine learning techniques can further improve judgment accuracy.
/*backtest
start: 2023-11-06 00:00:00
end: 2023-12-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// ____ __ ___ ________ ___________ ___________ __ ____ ___
// / __ )/ / / | / ____/ //_/ ____/ |/_ __< / // / / __ |__ \
// / __ / / / /| |/ / / ,< / / / /| | / / / / // /_/ / / __/ /
// / /_/ / /___/ ___ / /___/ /| / /___/ ___ |/ / / /__ __/ /_/ / __/
// /_____/_____/_/ |_\____/_/ |_\____/_/ |_/_/ /_/ /_/ \____/____/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © blackcat1402
//@version=5
strategy("[blackcat] L2 Reversal Labels Strategy", overlay=true, max_bars_back=5000, max_labels_count=500)
[diff, dea, macd] = ta.macd(close,12, 26, 9)
a1 = ta.barssince(ta.crossover(diff,dea)[1])
a2 = ta.barssince(ta.crossunder(diff,dea)[1])
bottom_zone = (close[a1+1]>close) and (diff>diff[a1+1]) and ta.crossover(diff,dea)
top_zone = (close[a2+1]<close) and (diff[a2+1]>diff) and ta.crossunder(diff,dea)
// Plot labels
l0 = top_zone ? label.new(bar_index, high * 1.0, 'Near Top', color=color.new(color.red, 50), textcolor=color.white, style=label.style_label_down, yloc=yloc.price, size=size.small) : bottom_zone ? label.new(bar_index, low * 1.0, 'Near Bottom', color=color.new(color.green, 50), textcolor=color.white, style=label.style_label_up, yloc=yloc.price, size=size.small) : na
if bottom_zone
longmsg = 'Bottom Reversal Soon!'
alert(message=longmsg, freq=alert.freq_once_per_bar_close)
else if top_zone
shortmsg = 'Top Reversal Soon!'
alert(message=shortmsg, freq=alert.freq_once_per_bar_close)
longCondition = bottom_zone
if (longCondition)
strategy.entry("long", strategy.long)
shortCondition = top_zone
if (shortCondition)
strategy.entry("short", strategy.short)