이 전략은 세 가지 분류 지표: RSI, CCI 및 Williams%R를 결합하여 효과적인 거래 신호를 생성합니다. 세 가지 지표 모두 동시에 과소매 또는 과소매 신호를 표시 할 때 구매 또는 판매 신호를 발행합니다. 단일 지표를 사용하는 것과 비교하면이 복합 전략은 더 많은 잘못된 신호를 필터링하고 안정성을 향상시킵니다.
이 전략은
이 전략은 주로 거래 결정을 위한 다음과 같은 지표에 의존합니다.
RSI가 25보다 낮으면 과판 상태가 나타납니다. RSI가 75보다 높으면 과반 상태가 나타납니다. CCI와 윌리엄스%R 매개 변수에도 같은 논리가 적용됩니다.
세 가지 지표가 동시에 구매 신호를 표시할 때, 즉 RSI < 25, CCI < - 130, Williams % R < - 85, 전략은 길게됩니다. 세 가지 지표가 동시에 판매 신호를 표시할 때, 즉 RSI > 75, CCI > 130, Williams % R > -15, 전략은 짧게됩니다.
이것은 단일 지표에서 잘못된 신호를 피하고 신뢰성을 향상시킵니다. 또한 거래 당 위험과 수익을 제어하기 위해 Stop Loss 및 Take Profit를 구성합니다.
다중 지표 조합은 거짓 신호를 필터링합니다
RSI, CCI 및 Williams%R을 결합함으로써 전략은 개별 지표에서 일부 잘못된 신호를 필터링하여 정확도를 향상시킵니다.
자동 중지 손실/이익 취득 위험 관리 내장된 스톱 로스 및 영리 기능은 자동으로 각 거래에 대한 출구 가격을 설정하여 허용 가능한 한 손실을 제한합니다.
중장기 거래에 적합합니다 이 전략은 중장기 거래에 더 잘 작동합니다. 지표 조합을 통해 중장기 전환점을 명확하게 식별합니다. 단기 소음과 장기 트렌드를 발견하는 데 약합니다.
탄탄한 백테스트 데이터
이 전략은 유동성과 데이터가 풍부한 주요 외환 쌍인 EUR/USD의 45분 바를 사용하며, 불충분한 데이터로 인한 과잉 리스크를 줄입니다.
약한 장기 추세 확인
전략은 반대 신호에 더 의존합니다. 장기적인 경향을 측정하고 추적하는 능력은 제한적입니다. 장기적인 일방 시장에서 수익 잠재력은 제한됩니다.
단기 변동이 없어 45 분 바와 함께, 전략은 더 빈번한 단기 가격 변동으로 수익 기회를 놓친다. 바 스펜 내에서 더 큰 변동성은 놓친 기회를 초래할 수 있다.
시스템적 위험
이 전략 은 주로 EUR/USD 에 적용 됩니다. 세계 외환 시장 을 흔들고 있는 심각한 경제 위기 때, 거래 규칙 이 실패 할 수 있으며, 엄청난 손실 을 입을 수 있습니다.
트렌드를 따르는 지표를 추가합니다
MA, Boll 등과 같은 트렌딩 메트릭을 통합하여 장기적인 트렌드 인식에 도움이 되도록 시도하십시오. 일반적인 방향에 따라 포지션을 취하면 승률을 향상시킬 수 있습니다.
스톱 로스/프로프트 매개 변수를 최적화 최적의 설정을 찾기 위해 최종 수익성에 다양한 스톱 로스/이익 매개 변수의 영향을 평가하기 위해 더 많은 역사적 데이터를 백테스트하십시오. 동적 템플링도 고려하십시오.
제품 확장
현재는 주로 EUR/USD에 적용됩니다. 우리는 안정성과 전환성을 조사하기 위해 GBP, JPY, AUD와 같은 다른 주요 통화 쌍에 배치 할 수 있습니다.
3 트레일 트롤러 전략은 RSI, CCI 및 윌리엄스 %R의 조합을 사용하여 과반 구매 / 과반 판매 신호에 대한 가격 반전 지점을 식별합니다. 개별 메트릭에 비해이 멀티 지표 설정은 더 많은 잘못된 신호를 필터링하고 정확도를 향상시킵니다. 자동 스톱 로스 / 수익 취득 기능 또한 거래 위험을 제한하는 데 도움이됩니다. 전반적으로 중장기 거래에 적합한 안정적인 전략이며 양적 시스템에서 귀중한 모듈이 될 수 있습니다. 여전히 장기 트렌드 탐지 및 단기 변동을 포착하는 데 결함이 있습니다. 트렌드 메트릭을 추가하고 출구 매개 변수 및 확장 제품과 같은 정밀 조정 조치는 엔진 시스템에 대한 안정적인 수익으로 전략을 향상시킬 것입니다.
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI CCI Williams %R Strategy with TP and SL", overlay=true) // Input parameters for indicators rsi_period = input(14, title="RSI Period") cci_period = input(20, title="CCI Period") williams_period = input(14, title="Williams %R Period") // Thresholds for overbought and oversold conditions rsi_oversold = input(25, title="RSI Oversold Level") rsi_overbought = input(75, title="RSI Overbought Level") cci_oversold = input(-130, title="CCI Oversold Level") cci_overbought = input(130, title="CCI Overbought Level") williams_oversold = input(-85, title="Williams %R Oversold Level") williams_overbought = input(-15, title="Williams %R Overbought Level") // Take profit and stop loss levels as a percentage take_profit_pct = input(1.2, title="Take Profit (%)") / 100 stop_loss_pct = input(0.45, title="Stop Loss (%)") / 100 // Indicator calculations rsi = ta.rsi(close, rsi_period) cci = ta.cci(close, cci_period) highestHigh = ta.highest(high, williams_period) lowestLow = ta.lowest(low, williams_period) williamsR = (highestHigh - close) / (highestHigh - lowestLow) * -100 // Entry conditions longCondition = rsi < rsi_oversold and cci < cci_oversold and williamsR < williams_oversold and strategy.position_size == 0 shortCondition = rsi > rsi_overbought and cci > cci_overbought and williamsR > williams_overbought and strategy.position_size == 0 // Execute strategy entry orders if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Take Profit or Stop Loss Long", "Long", limit=close * (1 + take_profit_pct), stop=close * (1 - stop_loss_pct)) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Take Profit or Stop Loss Short", "Short", limit=close * (1 - take_profit_pct), stop=close * (1 + stop_loss_pct)) // Plot the signals on the chart plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // Plot the indicators for visualization plot(rsi, title="RSI", color=color.blue) plot(cci, title="CCI", color=color.purple) plot(williamsR, title="Williams %R", color=color.orange)