MACD 지표 하위 반전 초기 경고 전략은 현재 가격이 역사적인 최고 또는 낮은 지점인지 확인하기 위해 MACD 지표의 빠르고 느린 선을 분석하고 시장 가격의 흐름을 빠르게 판단하기 위해 곧 반전이 일어날지 판단합니다.
이 전략은 표준 MACD 지표의 출력에 대응하는 빠른 라인 및 느린 라인 데이터를 스크린하고 필터링하여 가격이 반전되기 전에 중요한 영역에 진입했는지 판단하고 구매 또는 판매 신호를 발행합니다.
구체적으로, 전략은 가격이 MACD의 빠른 및 느린 라인의 황금 십자 및 죽음의 십자 계산을 통해 상승 추세의 하위 영역 또는 하위 영역에 진입했는지 판단합니다. 황금 십자에서, 닫기 가격이 이전 바의 닫기 가격보다 높고 디프가 이전 바의 디프 값보다 높다면, 하위 영역이 진입되어 반전 조기 경고 신호가 발산되었다고 결정됩니다. 죽음의 십자에서, 닫기 가격이 이전 바의 닫기 가격보다 낮고 디프 바의 디프가 현재 디프 값보다 높으면, 상위 영역이 진입되어 상위 반전 조기 경고 신호가 발산되었다고 결정됩니다.
해결책:
MACD 지표 하위 반전 초기 경고 전략은 MACD 빠른 및 느린 라인 교차를 분석하여 가격이 반전 전에 중요한 영역에 진입했는지 여부를 판단하여 거래 결정에 대한 지침을 제공하기 위해 하위와 상점을 효과적으로 발견 할 수 있습니다. 그러나 MACD의 지각 판단 자체는 정확한 반전점과 반전 모멘텀을 결정할 수 없습니다. 따라서 위험을 제어하고 이 전략의 효과를 활용하기 위해 다른 지표와 함께 적절한 매개 변수 조정이 필요합니다. 미래에 기계 학습 기술을 도입하면 판단 정확도를 더욱 향상시킬 수 있습니다.
/*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)