모멘텀 평균 역반응 풀백 전략 (Momentum Average Inverse Relief Pullback Strategy) 은 움직이는 평균 라인을 중심으로 거래 반전을 위한 간단한 전략이다. 이 전략은 50주기 기하급수적 이동 평균 (Exponential Moving Average, EMA) 을 주요 트렌드 지표로 사용하고, 촛불 포식 패턴과 결합하여 반전 기회를 식별한다. EMA를 통해 침투한 후, 반대 방향으로 2-3개의 촛불이 형성될 때까지 기다린다. 다음 촛불이 포식적 반전 패턴을 보여주면, 촛불 종료 시 1분 스톱 로스 타이머로 역전 지위가 취해질 것이다.
이 전략의 주요 가정은 다음과 같습니다.
50주기 EMA는 시장 동향을 결정하는데 효과적입니다. 이보다 높게 닫는 것은 황금 동향을 나타내고, 이보다 낮게 닫는 것은 쇠퇴 동향을 나타냅니다.
EMA를 통한 트렌드 침투 후, 종종 단기적 인 인하가 발생합니다. 반전 촛불 패턴을 사용하여 인하의 끝을 식별함으로써 수익성있는 반전 거래를 수행 할 수 있습니다.
특히, 전략은 먼저 50주기 EMA를 계산하고, 그 다음 가격이 그것을 뚫고 갈 수 있는지 확인합니다. 황소 파업이 발생하면, 2-3 개의 빨간 촛불을 아래로 기다립니다. 다음 촛불이 상승 추세를 보이는 경우, 긴 포지션이 닫을 것입니다. 곰 파업에도 마찬가지입니다. 포지션을 취한 후 1 분간의 스톱 로스 타이머가 시작됩니다. 타이머가 만료되면 포지션은 닫을 것입니다.
이 전략의 주요 장점:
논리는 간단하고 명확하고, 이해하기 쉽고 실행하기 쉽고, 초보자에게 적합합니다.
이동 평균의 트렌드 효과와 촛불 패턴의 예측 능력을 모두 활용하여 신호를 더 신뢰할 수 있습니다.
스톱 로스 타이머는 단일 트레이드 리스크를 제어합니다.
체계적인 규칙은 주관적인 판단을 피하고 일관성을 향상시킵니다.
주요 위험 요소는 다음과 같습니다.
50주기 EMA는 항상 동향을 정확하게 파악할 수 없습니다. 동향에 대한 잘못된 판단이 있을 수 있습니다.
촛불 패턴은 또한 거짓 신호로 이어지는 확률적 성격을 가지고 있습니다.
비효율적인 스톱 로스 타이머 설정은 더 큰 손실이나 수익을 포기할 수 있습니다.
미끄러짐, 부분 채우기 등은 전략 성과에 영향을 미칩니다.
몇 가지 완화:
EMA 기간 매개 변수를 최적화하여 가장 적합한 것을 찾습니다.
신호를 강화하기 위해 다른 지표를 포함합니다.
테스트하고 최적의 위험 매개 변수를 찾습니다.
라이브 거래에서 슬라이딩을 방지하기 위한 스톱 로스 메커니즘을 구현합니다.
전략을 강화하는 몇 가지 방법:
EMA 매개 변수를 최적화해서 가장 좋은 기간을 찾습니다.
다른 EMA 변수를 테스트하십시오. 예를 들어 가중 이동 평균.
부피 또는 변동성에 필터를 추가하여 옆 시기의 잘못된 신호를 제거합니다.
신호 품질을 향상시키기 위해 다른 지표, 예를 들어 스토카스틱, MACD와 결합 전략을 만듭니다.
제품 사양과 거래 세션에 따라 스톱 로스 타이머 기간을 조정합니다.
이윤 목표를 달성한 후 이윤을 확보하기 위해 이윤 취득 메커니즘을 추가하는 것을 고려하십시오.
모멘텀 평균 역 리리프 풀백 전략 (Momentum Average Inverse Relief Pullback Strategy) 은 간단하고 실용적인 단기 거래 전략이다. 트렌드 및 촛불 패턴을 결정하기 위해 EMA 크로스오버를 사용하여 전술 거래를 실행하는 역행점을 식별합니다. 일부 매개 변수 최적화 공간에도 불구하고 논리에서의 명확성은 초보자 퀀트에게 좋은 출발점 전략으로 만듭니다. 적절한 테스트와 정제로 인해 강력한 전술 시스템으로 발전 할 수 있습니다.
/*backtest start: 2023-02-11 00:00:00 end: 2024-02-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("LinoR EMA Pullback Strategy", shorttitle="EPS", overlay=true) // Define EMA period emaPeriod = input(50, title="EMA Period") // Calculate 50 EMA ema50 = ta.ema(close, emaPeriod) // Calculate engulfing conditions engulfingBullish = close[1] < open[1] and close > open and close > close[1] and open < open[1] engulfingBearish = close[1] > open[1] and open > close and open > open[1] and close < close[1] // Define a 1-minute timer var timer = 0 if bar_index > 0 timer := timer[1] + 1 // Long condition longCondition = ta.crossover(close, ema50) and engulfingBullish if longCondition strategy.entry("Buy", strategy.long) // Short condition shortCondition = ta.crossunder(close, ema50) and engulfingBearish if shortCondition strategy.entry("Sell", strategy.short) // Exit after 1 minute if timer >= 1 strategy.close("Exit") plotshape(series=longCondition, title="Long Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=shortCondition, title="Short Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)