이 전략은 신호를 결정하기 위해 50 기간 EMA와 촛불의 폐쇄 가격을 사용합니다. 가격이 EMA 라인을 아래로 돌파하면 짧습니다. 가격이 2-3 개의 촛불로 물러났을 때, 포용 패턴이있는 촛불이 나타나면 단기 거래를 위해 그 촛불이 닫힌 후 짧은 위치를 여깁니다.
먼저, 50주기 EMA 라인이 계산된다. 그 다음 가격이 이 EMA 라인을 아래로 돌파하는지 판단한다. 만약 파기되면, 하향 충동 신호를 기록한다. 다음으로, 후속 촛불이 상승 충동 신호를 가지고 있는지 확인하고, 만약 후속 촛불의 가장 낮은 가격보다 인하 팽창폭이 높다면, 촛불을 기록한다. 후퇴 후, 다음 1-2 촛불이 포용 패턴을 형성하는지 판단한다. 포용 형태가 형성되면, 촛불은 포용 신호를 기록한다. 하향 충동, 포용 신호와 포용 신호가 함께 나타나면, 단기 거래를 위해 포용 촛불의 종료 후 짧은 지위를 개척한다.
이 전략은 50주기 EMA 라인을 그래프화한다. 짧은 신호가 트리거될 때, 촛불 밑에 빨간색 하향 삼각형을 그래프화한다. 또한 스톱 로스 수준을 부여하고 빨간색 스톱 로스 라인을 그래프화한다.
이 전략은 트렌드 판단과 패턴 인식을 결합하여 트렌드 역전 기회를 효과적으로 잡을 수 있습니다. 먼저 EMA를 사용하여 트렌드 방향을 결정하고, 후퇴 도중 거짓 브레이크로 인해 오해를 피하기 위해 포식 패턴을 사용합니다. 스톱 로스는 명확하고 드라우다운은 잘 제어됩니다. 단기 거래에 적합합니다.
이 전략은 주로 트렌드 방향을 결정하기 위해 EMA에 의존합니다. 폭력적인 파기 경우 잘못된 판단이 발생할 수 있습니다. 포용 패턴 판단은 일부 주관성이 있으며 양과 깊이는 매개 변수 최적화가 필요합니다. 시장 변동성에 따라 스톱 로스 포지션도 조정해야합니다. 전반적으로이 전략은 안정적인 지수 시장과 단기 거래에 더 적합합니다.
EMA 기간, pullback 촛불 수, engulfing 촛불 수와 같은 매개 변수는 더 나은 전략 성능을 위해 최적화 될 수 있습니다. 또한, 다른 지표는 트렌드 및 pullback 신호를 결정하는 데 고려 될 수 있습니다.
EMA 기간 최적화: 최적의 기간을 찾기 위해 30, 40 또는 60와 같은 더 많은 EMA 기간을 테스트하십시오.
풀백 촛불 수: 최적의 풀백 신호를 찾기 위해 2-5 개의 촛불을 테스트하십시오.
삼키는 촛불의 수: 최적의 삼키는 신호를 찾기 위해 1-3 개의 촛불을 테스트하십시오.
스톱 로스 멀티플: 최적 스톱 로스 위치를 위해 0.5-2 ATR를 테스트합니다.
신호 정확성을 높이기 위해 MACD, KDJ 같은 다른 지표를 추가하는 것을 고려하십시오.
지수, 원유, 금과 같은 다양한 상품을 테스트하여 범위를 확장합니다.
이 전략은 우선 EMA를 사용하여 트렌드 방향을 결정하고, 그 다음 풀백과 삼키는 패턴을 결합하여 짧은 신호를 생성합니다. 일반적인 트렌드 역전 전략입니다. 트렌드 판단과 패턴 인식을 결합함으로써 역전 기회를 효과적으로 잡을 수 있습니다. 매개 변수 최적화 후 좋은 결과를 얻을 수 있습니다. 전반적으로이 전략은 작동이 쉽고 통제 가능한 위험이며 단기 거래에 적합합니다. 이 전략의 장점은 명확한 스톱 손실 포인트로 역전 트렌드를 적시에 잡는 데 있습니다. 일반적으로이 전략은 좋은 실용적 가치를 가지고 있습니다.
/*backtest start: 2024-01-10 00:00:00 end: 2024-01-17 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Linor Pullback Short Strategy", shorttitle="EMA Pullback", overlay=true) // Define strategy parameters ema_length = input(50, title="EMA Length") pullback_candles = input(3, title="Number of Pullback Candles") engulfing_candles = input(1, title="Number of Engulfing Candles") stop_loss = input(1, title="Stop Loss (in ATR)") // Calculate the EMA ema = ema(close, ema_length) // Define bearish impulse condition bearish_impulse = crossover(close, ema) // Define pullback condition pullback_condition = false for i = 1 to pullback_candles if close[i] > close[i - 1] pullback_condition := true else pullback_condition := false // Define engulfing condition engulfing_condition = false for i = 1 to engulfing_candles if close[i] < open[i] and close[i-1] > open[i-1] engulfing_condition := true else engulfing_condition := false // Define the entry condition entry_condition = bearish_impulse and pullback_condition and engulfing_condition // Plot the EMA on the chart plot(ema, color=color.blue, title="50 EMA") // Plot shapes on the chart to mark entry points plotshape(entry_condition, style=shape.triangleup, location=location.belowbar, color=color.red, size=size.small) // Define and plot the stop loss level atr_value = atr(14) stop_loss_level = close + atr_value * stop_loss plot(stop_loss_level, color=color.red, title="Stop Loss") // Strategy orders strategy.entry("Short", strategy.short, when=entry_condition) strategy.exit("Stop Loss/Target", from_entry="Short", stop=stop_loss_level, when=strategy.position_size[1] > 0) // Plot strategy performance on the chart