
다중 확인 가격 역전 전략 (Multiple confirmation price reversal strategy) 은 그래프 형태 분석과 동력 지표가 결합된 정량 거래 시스템으로, 이 전략은 주로 시장 내의 흡수 형태를 식별하고 MACD 지표의 교차 확인과 결합하여 잠재적인 시장 역전점을 포착한다. 이 전략의 핵심적인 사고방식은 여러 기술 지표의 확인을 통해 거래 신호의 신뢰성을 높여서 가짜 돌파의 위험을 피하는 것이다. 구체적으로, 전략은 먼저 시장에서 발생하는 흡수 형태를 식별하고 (보거나 떨어지거나) 다음으로 예상 창 기간 내에 (비용 3 기둥) 각각의 MACD 교차 신호를 기다립니다. 두 가지 조건이 충족되면 전략은 진입 신호를 발동하며, 동시에 어떤 평형 지점을 역으로 지낸다.
이 전략의 작동 원리는 두 가지 핵심 기술 분석 요소를 중심으로 이루어져 있습니다. 삼킨 형태와 MACD 지표의 교차.
형태를 인식하는 것을 삼키고:
MACD 교차 확인:
시간 창 논리:
barsSinceBull그리고barsSinceBear변수는 지난 삼킨 형태 이후의 기둥 수를 추적한다.windowBars(기본 3개의) 기둥 안에 거래 신호가 촉발됩니다.입학 조건:
longCondition): 보 삼키기 형태가 나타난 후의 윈도우 기간 동안 MACD 라인에서 신호선을 뚫었다.shortCondition): 하락의 삼키기 형태가 나타난 후의 윈도우 기간 동안 MACD는 신호선을 아래로 뚫었다.거래 실행:
다중 인증 메커니즘 그래프 형태와 기술 지표를 결합하여, 전략은 가짜 신호의 가능성을 줄이고 거래의 정확성을 향상시킵니다. 포식 형태는 가격 행동의 직접적인 표현이며, MACD는 동력 지표의 대표자이며, 둘의 조합은 다른 관점에서 시장 역전 신호를 확인 할 수 있습니다.
시간창의 유연성: 정책은 사용자가 MACD 교차가 포화 형태 이후 일어날 수 있는 최대 기둥 수를 사용자 정의 할 수 있습니다.windowBars이러한 유연성은 전략이 다른 시장과 시간 프레임의 특성에 적응할 수 있게 해준다.
명확한 시각적 피드백: 전략은 다양한 신호를 차트에 표시합니다. 이것은 거래자가 전략의 성능을 직관적으로 이해하고 평가하는 데 도움이 됩니다.
자동 포지션 관리: 전략 자동으로 반전 포지션의 평준화를 처리하여 거래 관리 프로세스를 간소화하고 인적 오류의 가능성을 줄입니다.
매개 변수 조정:MACD 파라미터 ((빠른 라인, 느린 라인 및 신호 라인 주기) 는 다양한 시장 조건에 따라 최적화되어 전략의 적응성을 강화합니다.
지연 위험MACD는 지연된 지표로서, 빠르게 변화하는 시장에서 반응이 늦어지기 때문에 입시점이 바람직하지 않습니다. 또한, 두 가지 조건이 동시에 충족되기를 기다리는 것은 입시점을 더욱 지연시키고, 잠재적으로 일부 가격 변화를 놓칠 수 있습니다.
상자 시장의 부진: 명확한 추세가 없는 가로수지 시장에서, 삼키기 형태와 MACD 교차는 빈번한 거래와 잠재적인 손실로 이어지는 많은 가짜 신호를 생성할 수 있다.
손해 방지 장치의 부재현재 전략에는 명확한 스톱 로드 메커니즘이 적용되지 않아 시장이 역전될 경우 더 큰 하락 위험을 초래할 수 있습니다.
특정 모델에 지나치게 의존하는 것이 전략은 포식 형태와 MACD 교차의 조합에 크게 의존하고 있으며, 다른 중요한 시장 정보와 기술 지표를 무시하고 있다.
매개변수 민감도: 정책 성능은 MACD 변수와 창 크기 설정에 매우 민감할 수 있으며, 부적절한 변수 선택으로 인해 과잉 최적화와 미래 성능이 떨어질 수 있습니다.
트렌드 필터 추가: SMA50 (코드에 코트 되어 있다) 와 같은 트렌드 지표를 추가하여 거래 방향이 주요 트렌드와 일치하는지 확인 할 수 있습니다. 예를 들어, 가격이 SMA50보다 높을 때만 더 많이하고, SMA50보다 낮을 때 비로소 할 수 있습니다. 이것은 역행 거래의 위험을 크게 줄일 수 있습니다.
제약 및 수익 메커니즘을 구현전략에 ATR 기반의 중지 또는 지지 / 저항 위치의 수익 목표와 같은 중지 손실과 수익 목표를 추가하여 위험을 더 잘 관리하고 수익을 잠금합니다.
최적화 매개변수 선택: MACD 파라미터와 창 크기에 대한 리테크 최적화를 통해 특정 시장과 시간 프레임에 맞는 최적의 파라미터 조합을 찾습니다. 시장의 변동성에 따라 파라미터를 자동으로 조정하는 적응된 파라미터 방법을 사용하는 것을 고려하십시오.
거래량 확인을 추가합니다.: 거래량 분석을 전략에 포함시켜 반전 신호가 충분한 거래량으로 뒷받침되는지 확인하여 신호의 신뢰성을 높여라.
다른 지표를 통합RSI, 무작위 지표 또는 브린 띠와 같은 다른 기술 지표를 추가하는 것을 고려하여 더 포괄적인 거래 조건을 만들고 가짜 신호를 더 줄이십시오.
시간 필터거래 시간 필터를 적용하여 중요한 경제 자료가 발표되거나 시장의 변동성이 특히 높은 시기에 거래하는 것을 피하십시오.
입학 시점을 최적화: 입시 조건을 변경하여 입시 가격을 개선할 수 있는지 (예: 철수 또는 가격 확인을 기다리는 것) 를 연구하여 가능한 슬라이드 포인트를 줄일 수 있는지 조사하십시오.
다중확인 가격 역전 전략은 포식형과 MACD 교차를 결합한 양적 거래 시스템으로, 다중 기술 지표의 확인을 통해 시장 역전을 포착하는 것을 목적으로 한다. 이 전략의 주요 장점은 다중확인 메커니즘과 명확한 시각적 피드백으로, 이는 가짜 신호를 줄이고 거래 정확성을 높이는 데 도움이 된다. 그러나, 전략에는 지연성, 사다리 시장에서 열악한 성능 및 명확한 위험 관리 장치의 부재와 같은 몇 가지 고유한 위험이 있습니다.
전략의 안정성과 수익성을 강화하기 위해 몇 가지 주요 최적화를 수행하는 것이 좋습니다. 거래 방향이 주요 경향과 일치하도록 트렌드 필터를 추가하십시오. 위험을 관리하기 위해 적절한 중단 및 수익 메커니즘을 구현하십시오. 특정 시장 조건에 맞게 MACD 변수와 창 크기를 최적화하십시오. 더 포괄적인 거래 조건을 만들기 위해 다른 기술 지표를 통합하는 것을 고려하십시오. 이러한 최적화를 통해 거래자는 전략의 성능을 크게 향상시키고 위험을 줄이고 다른 시장 환경에 적응 할 수 있습니다.
이러한 다단계 확인 방식은 잠재적인 역전 기회를 포착하는 동시에 여러 번의 확인을 요구하여 위험을 줄이는 균형 잡힌 거래 전략을 나타냅니다. 기술 분석을 기반으로 건전한 거래 시스템을 구축하려는 양적 거래자에게는 견고한 출발점을 제공합니다.
/*backtest
start: 2024-06-09 00:00:00
end: 2025-06-08 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Darren - Engulfing + MACD Cross", overlay=true)
// 1. Inputs
// smaLength = input.int(50, "SMA Length")
macdFast = input.int(12, "MACD Fast Length")
macdSlow = input.int(26, "MACD Slow Length")
macdSignal = input.int(9, "MACD Signal Length")
windowBars = input.int(3, "Max Bars Between Engulfing and MACD Cross")
// 2. Indicators
// sma50 = ta.sma(close, smaLength)
// plot(sma50, color=color.blue, title="SMA 50")
[macdLine, signalLine, _] = ta.macd(close, macdFast, macdSlow, macdSignal)
macdHist = macdLine - signalLine
plot(macdHist, title="MACD Histogram", style=plot.style_columns, color=(macdHist >= 0 ? color.green : color.red))
// 3. Detect Engulfing Patterns
bullEngulfing = (close[1] < open[1]) and (close > open) and (open < close[1]) and (close > open[1])
bearEngulfing = (close[1] > open[1]) and (close < open) and (open > close[1]) and (close < open[1])
// 4. MACD Crosses
macdCrossUp = ta.crossover(macdLine, signalLine)
macdCrossDown = ta.crossunder(macdLine, signalLine)
// 5. Bars Since Last Engulfing
barsSinceBull = ta.barssince(bullEngulfing)
barsSinceBear = ta.barssince(bearEngulfing)
// 6. Entry Conditions
longCondition = (barsSinceBull <= windowBars) and macdCrossUp //and (close > sma50)
shortCondition = (barsSinceBear <= windowBars) and macdCrossDown //and (close < sma50)
// 7. Plot Engulfing & MACD Crossover Markers
// Bullish engulfing on price chart
plotshape(bullEngulfing, title="Bull Engulf", style=shape.labelup, text="Bull", location=location.belowbar, color=color.green, size=size.small)
// Bearish engulfing on price chart
plotshape(bearEngulfing, title="Bear Engulf", style=shape.labeldown, text="Bear", location=location.abovebar, color=color.red, size=size.small)
// MACD cross‐up on price chart
plotshape(macdCrossUp, title="MACD Cross Up", style=shape.triangleup, text="Up", location=location.belowbar, color=color.lime, size=size.tiny)
// MACD cross‐down on price chart
plotshape(macdCrossDown, title="MACD Cross Down", style=shape.triangledown, text="Down", location=location.abovebar, color=color.orange, size=size.tiny)
// 8. Plot Entry Signals
plotshape(longCondition, title="Long Entry", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(shortCondition, title="Short Entry", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// 9. Entries & Exits
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.close("Short")
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.close("Long")