지원 수준과 추세 EMA를 기반으로 한 롱 및 숏 전략

INDICATORS EMA ATR SL TP SMC
생성 날짜: 2025-02-21 10:56:01 마지막으로 수정됨: 2025-02-21 10:56:01
복사: 2 클릭수: 323
avatar of ianzeng123 ianzeng123
2
집중하다
319
수행원

지원 수준과 추세 EMA를 기반으로 한 롱 및 숏 전략 지원 수준과 추세 EMA를 기반으로 한 롱 및 숏 전략

개요

이것은 지지부진과 트렌드 EMA를 기반으로 한 다중 전략이다. 전략은 시장의 추세와 중요한 지지부진을 식별하여 최적의 입문 기회를 찾고, ATR의 동적 상쇄와 분기 수익을 결합하여 위험 관리를 수행한다. 이 전략은 주로 상승 추세에서 가격이 지지부진으로 회귀하는 경우에 초점을 맞추고, 합리적인 리스크 수익률을 설정하여 거래의 성공률을 높인다.

전략 원칙

전략은 100주기 EMA를 트렌드를 판단하는 지표로 사용하고, 가격이 EMA 위에 있을 때 상승세를 확인한다. 또한 10주기 최저 가격을 단기 지지점으로 계산하고, 가격이 지지점 근처로 회귀할 때 지지점 +0.5*ATR) 에서 진입 기회를 찾습니다. 진입 후 분기 수익 방식을 적용하여 5 배의 ATR에서 50%의 입지를 매장하고, 나머지 입지는 10 배의 ATR에서 완전히 매장되며, 1 배의 ATR을 동적 스톱로 설정합니다. 각 거래의 위험은 계좌 총액의 3% 이내에 제어되며, 동적으로 포지션 크기를 계산하여 위험 관리를 구현합니다.

전략적 이점

  1. 트렌드를 따르는 특성: EMA를 통해 트렌드를 판단하고 역대 거래를 피하십시오.
  2. 역동적인 지지: 시장의 현재 상태를 더 잘 반영하기 위해 최근 10 주기의 하락점을 지지로 사용합니다.
  3. 유연한 위험 관리: ATR 기반의 동적 중지 및 수익 목표, 시장의 변동에 적응
  4. 분기 수익 메커니즘: 다양한 가격 수준에서 분기하여 수익을 보장하면서도 큰 시장에서 벗어나지 않습니다.
  5. 정확한 포지션 제어: 스톱드라이스 동적 계산에 따라 포지션을 계산하여 위험을 정량 관리합니다.

전략적 위험

  1. 허위 돌파 위험: 지탱점 근처에서 허위 돌파가 발생할 수 있으며, 확인 지표를 추가하는 것이 좋습니다.
  2. 트렌드 반전 위험: EMA 지표의 지각, 트렌드 전환점에서 손실을 초래할 수 있다
  3. 과도한 거래 위험: 빈번한 지지율 트리거로 인해 과도한 거래가 발생할 수 있습니다.
  4. 미끄러지 위험: 급격한 변동이 있을 때 더 큰 미끄러짐이 발생할 수 있습니다. 해결책:
  • 추세 확인 지표 추가
  • 입학 조건의 최적화
  • 거래 간격 제한을 설정
  • 손해의 범위 조정

전략 최적화 방향

  1. 다차원 추세 판단: 여러 시기의 추세 지표를 결합하여 추세 판단의 정확성을 향상시킵니다.
  2. 입시 조건 최적화: 입시 필터 조건으로 매출량, 변동률 등의 보조 지표
  3. 동적 매개 변수 최적화: 시장 상황에 따라 매개 변수를 조정
  4. 시장 정서 지표를 증가: VIX와 같은 시장 정서 지표를 도입하여 거래 시기를 최적화합니다.
  5. 정지 메커니즘을 개선: 시장의 변동에 따라 수익 목표를 동적으로 조정

요약하다

이 전략은 트렌드 따라와 지지부서 회귀를 결합하여 완전한 거래 시스템을 구축하고 분기 수익과 동적인 중지 손실을 통해 위험 관리를 구현한다. 전략의 핵심 장점은 완벽한 위험 제어 장치와 명확한 거래 논리이다. 그러나 여전히 다양한 시장 환경에 적응하기 위해 실용에서 매개 변수와 입시 조건을 지속적으로 최적화해야 한다.

전략 소스 코드
/*backtest
start: 2024-02-22 00:00:00
end: 2024-05-30 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("Ultra-Profitable SMC Long-Only Strategy", shorttitle="Ultra_Profit_SMC", overlay=true)

// User Inputs
emaTrendLength = input.int(100, title="Trend EMA Length")  // Faster EMA to align with aggressive trends
supportLookback = input.int(10, title="Support Lookback Period")  // Short-term support zones
atrLength = input.int(14, title="ATR Length")
atrMultiplierSL = input.float(1.0, title="ATR Multiplier for Stop-Loss")
atrMultiplierTP1 = input.float(5.0, title="ATR Multiplier for TP1")
atrMultiplierTP2 = input.float(10.0, title="ATR Multiplier for TP2")
riskPercent = input.float(3.0, title="Risk per Trade (%)", step=0.1)

// Calculate Indicators
emaTrend = ta.ema(close, emaTrendLength)  // Trend EMA
supportLevel = ta.lowest(low, supportLookback)  // Support Level
atr = ta.atr(atrLength)  // ATR

// Entry Conditions
isTrendingUp = close > emaTrend  // Price above Trend EMA
nearSupport = close <= supportLevel + (atr * 0.5)  // Price near support zone
longCondition = isTrendingUp and nearSupport

// Dynamic Stop-Loss and Take-Profit Levels
longStopLoss = supportLevel - (atr * atrMultiplierSL)
takeProfit1 = close + (atr * atrMultiplierTP1)  // Partial Take-Profit at 5x ATR
takeProfit2 = close + (atr * atrMultiplierTP2)  // Full Take-Profit at 10x ATR

// Position Sizing
capital = strategy.equity
tradeRisk = riskPercent / 100 * capital
positionSize = tradeRisk / (close - longStopLoss)

// Execute Long Trades
if (longCondition)
    strategy.entry("Ultra Long", strategy.long, qty=positionSize)

// Exit Conditions
strategy.exit("Partial Exit", from_entry="Ultra Long", limit=takeProfit1, qty_percent=50)  // Exit 50% at TP1
strategy.exit("Full Exit", from_entry="Ultra Long", limit=takeProfit2, qty_percent=100, stop=longStopLoss)  // Exit the rest at TP2

// Plot Indicators
plot(emaTrend, color=color.blue, title="Trend EMA")
plot(supportLevel, color=color.green, title="Support Level", linewidth=2)