
이 전략은 동적 위험 제어 메커니즘과 결합된 쌍평선 교차와 평균 회귀 원칙에 기반한 거래 시스템입니다. 이 전략은 거래 신호를 생성하기 위해 빠르고 느린 간단한 이동 평균 (SMA) 의 교차를 이용하며, 평균 실제 범위 (ATR) 지표를 사용하여 동적 스톱로드를 설정하여 각 거래의 위험을 정확하게 제어합니다. 이 방법은 시장 추세를 포착하는 동시에 시장이 변할 때 적시에 퇴출하여 수익과 위험을 균형을 잡습니다.
신호 생성:
위험 관리:
거래 실행:
시각화:
트렌드 추적과 평균 회귀의 결합: 쌍평준선 시스템을 사용하여 전략은 장기적인 트렌드를 포착하면서 단기적인 가격 변동에 반응하여 트렌드 추적과 평균 회귀의 균형을 이룰 수 있습니다.
다이내믹 리스크 컨트롤: ATR 기반의 다이내믹 스톱로드를 사용하여 스톱로드 레벨이 시장의 변동성에 따라 자동으로 조정될 수 있도록 하여 보다 정확한 리스크 관리를 제공한다.
간단하고 효과적: 전략 논리는 명확하고 이해하기 쉽고 실행할 수 있지만 다양한 시장 환경에 대응할 수 있는 충분한 복잡성을 포함합니다.
시각적 지원: 거래 신호와 이동 평균을 차트에 직관적으로 표시하여 거래자가 전략의 성능을 더 잘 이해하고 평가할 수 있도록 도와줍니다.
매개 변수 조정: 사용자가 개인 위험 선호와 시장 특성에 따라 이동 평균 주기와 위험 비율과 같은 중요한 매개 변수를 조정할 수 있습니다.
가짜 브레이크 위험: 가로 시장에서 가격이 종종 평균선을 통과하여 과도한 가짜 신호와 불필요한 거래를 초래할 수 있습니다.
지연성: 이동 평균의 사용으로 인해, 전략이 트렌드 전환점의 반응이 지연될 수 있으며, 이는 진입 또는 출퇴근 시기가 적당히 되지 않는다.
과도한 거래: 높은 변동성이 있는 시장에서 과도한 거래 신호가 발생하여 거래 비용이 증가할 수 있습니다.
고정 리스크 비율의 한계: ATR을 동적으로 조정하여 상쇄하더라도 고정 리스크 비율은 모든 시장 조건에 적용되지 않을 수 있습니다.
수익 목표의 부재: 전략은 평행선 교차에만 의존하여 청산하고, 이는 강력한 추세에서 조기 퇴출을 초래하여 더 많은 잠재적인 수익을 놓치게 할 수 있습니다.
트렌드 필터 도입: 장기 트렌드 지표 (예를 들어 200 일 평균선) 를 추가하여 거래 신호를 필터링하여 주요 트렌드 방향으로만 거래하여 가짜 브레이크를 줄일 수 있습니다.
진입 시기를 최적화: 진입 신호를 확인하고 거래 정확성을 높이기 위해 다른 기술 지표 (RSI 또는 MACD와 같은) 와 결합하는 것을 고려하십시오.
동적으로 조정할 수 있는 위험 매개 변수: 시장의 변동성이나 다른 시장 상태 지표에 따라 동적으로 조정할 수 있는 위험 비율, 위험 관리를 더 유연하게 한다.
수익 목표를 추가: ATR 또는 고정 비율에 기반한 동적 수익 목표를 설정하여 추세가 강할 때 더 큰 수익 공간을 허용하십시오.
부분 평준화 메커니즘을 구현: 특정 수익 수준을 달성했을 때 부분 평준화를 실행하여 수익의 일부를 잠금 할 수 있으며 나머지 포지션이 수익을 계속 얻을 수 있습니다.
평균주기를 최적화: 다른 평균주기 조합을 재검토하여 특정 시장에 더 적합한 파라미터 설정을 찾을 수 있다.
거래량 필터링을 추가하십시오. 신호의 신뢰성을 높이기 위해 거래량 지표를 신호 생성 과정에 포함시키는 것을 고려하십시오.
쌍평선 평균값 회귀 전략과 결합된 위험 통제는 트렌드 추적과 위험 관리를 겸비한 거래 시스템이다. 빠른 속도와 느린 속도 이동 평균의 교차를 이용하여 시장 움직임을 포착하고, ATR based의 동적 중지 메커니즘과 결합하여, 전략은 각 거래의 위험을 정확하게 제어한다. 이 방법은 시장 추세를 포착하는 동시에, 시장이 역전될 때 적시에 퇴출할 수 있으며, 거래자에게 수익과 위험을 균형 잡는 도구를 제공한다.
그러나, 이 전략에는 또한 몇 가지 제한이 있습니다. 예를 들어, 가짜 침입 위험, 신호 지연 및 가능한 과도한 거래 등이 있습니다. 트렌드 필터를 도입하고, 진입 시기를 최적화하고, 위험 매개 변수를 동적으로 조정하는 등의 방법으로, 전략에는 최적화 할 수있는 큰 공간이 있습니다.
전체적으로, 이 전략은 양적 거래에 대한 견고한 기본 프레임 워크를 제공하며, 좋은 확장성과 적응력을 가지고 있습니다. 지속적인 최적화와 조정으로, 다양한 시장 환경과 거래 품종에 적합한 강력하고 신뢰할 수있는 거래 시스템이 될 잠재력이 있습니다.
/*backtest
start: 2023-07-23 00:00:00
end: 2024-07-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('TAMMY V2')
// Define the parameters
fast_len = input.int(14, minval=1, title='Fast SMA Length')
slow_len = input.int(100, minval=1, title='Slow SMA Length')
risk_per_trade = input.float(2.0, minval=0.1, maxval=10.0, step=0.1, title='Risk Per Trade (%)')
// Calculate the moving averages
fast_sma = ta.sma(close, fast_len)
slow_sma = ta.sma(close, slow_len)
// Generate the trading signals
buy_signal = ta.crossover(close, slow_sma)
sell_signal = ta.crossunder(close, fast_sma)
// Calculate the stop loss level
atr = ta.sma(ta.tr, 10)
sl = close - atr * (risk_per_trade / 100)
// Execute the trades
if buy_signal
strategy.entry('Long', strategy.long, stop=sl)
if sell_signal
strategy.close_all()
// Plot the signals and price
plot(close, color=color.new(#808080, 0), linewidth=2, title='Gold Price')
plot(fast_sma, color=color.new(#FF0000, 0), linewidth=2, title='Fast SMA')
plot(slow_sma, color=color.new(#0000FF, 0), linewidth=2, title='Slow SMA')
plotshape(buy_signal, style=shape.triangleup, color=color.new(#0000FF, 0), size=size.small, title='Buy Signal')
plotshape(sell_signal, style=shape.triangledown, color=color.new(#FF0000, 0), size=size.small, title='Sell Signal')