CMARSI 거래 전략은 RSI 지표와 평행선을 결합한 트렌드 추적 전략이다. 개선된 RSI 지표를 사용하여 트렌드를 식별하고, 평행선을 입력 및 종료 신호로 결정한다. 이 전략은 중장선 거래에 적합하며, 트렌드를 따라가면서 더 나은 수익을 얻는다.
CMARSI 전략은 개량된 RSI 지표를 사용하여 Connors RSI라고 불립니다. Connors RSI는 클래식 RSI, RSI 다공평선 및 가격 변화율 ROC의 세 가지 지표를 결합합니다. 계산 공식은 다음과 같습니다.
코너스 RSI = (RSI + RSI 공백 평균 + ROC 퍼센트) / 3
그 중 RSI는 3일 계산 주기, RSI 다공평선은 2일 계산 주기, ROC 퍼센티지는 100일 계산 주기 사용한다.
코너스 RSI의 장점은 여러 지표를 통합하여 트렌드의 변화를 더 정확하게 식별 할 수 있다는 것입니다. 코너스 RSI는 40 분기점을 통과하면 더 많은 신호를보고, 70 분기점을 통과하면 더 많은 신호를보고 있습니다.
CMARSI 전략은 코너스 RSI를 기반으로, 추가적으로 평균선 인자를 도입한다. 이 전략은 2 일 평균선을 계산하고, 코너스 RSI와 평균선의 황금 포크를 거래 신호로 한다. 구체적인 거래 규칙은:
코너스가 RSI에서 40분선을 통과하고 금강 2일 평균자책점을 기록했을 때 추가 출전했다.
코너스 RSI 하에서 70 분기선을 통과하고 2 일간 평균선에서 죽었을 때, 평상시는 출전했다.
평행선 미세파를 이용함으로써 코너스 RSI가 나타나는 부분적인 가짜 신호를 피할 수 있으며, 이를 통해 전략의 안정성을 높일 수 있다.
CMARSI 전략의 가장 큰 장점은 여러 지표의 트렌드를 통합하여 단일 RSI 지표의 한계를 피하는 것입니다. 구체적으로, 이 전략에는 다음과 같은 장점이 있습니다:
코너스 RSI 지표는 전통적인 RSI 지표보다 안정적이며, 트렌드 전환점을 정확하게 식별할 수 있다.
평행선의 도입은 일부 소음을 효과적으로 필터링하여 추격하는 것을 방지합니다.
다중 지표 조합은 승률을 높여줄 수 있고, 트렌드를 따라가며 수익을 올릴 수 있다.
거래 규칙은 간단하고 명확하며 실행하기 쉽습니다.
트렌드를 따라가는 전략으로, 중·장선 트렌드의 이익을 충분히 포착할 수 있다.
CMARSI 전략의 주요 위험은 트렌드 판단 오류와 스톱 로즈 설정이다. 구체적인 위험은 다음과 같다:
코너스 RSI 지표는 잘못된 신호를 내보내고 불필요한 입구를 초래한다. 적절한 변수를 조정하거나, 다른 지표의 확인이 추가될 수 있다.
손해 중지 위치 설정이 합리적이지 않으며, 너무 일찍 또는 너무 큰 손해 중지 될 수 있습니다. 다양한 품종과 시장 환경에 따라 손해 중지 위치를 최적화해야합니다.
충격적인 상황에서는 평선 필터링 효과가 좋지 않을 수 있으며, 전략 매개 변수들에 대한 최적화가 필요하다.
장기간 운영으로 인해 과도한 최적화가 발생할 수 있으므로 정기적으로 재검토하고 시장 환경에 따라 매개 변수를 조정해야합니다.
CMARSI 전략은 다음과 같은 측면에서 최적화될 수 있습니다.
코너스 RSI의 매개 변수를 최적화하여 다른 주기 및 품종에 적합합니다.
다른 종류의 평행선을 시도하여 필러링 효과를 더욱 향상시킵니다.
MACD, BRI 등과 같은 다른 지표를 추가하여 거래 신호를 확인합니다.
손해 중지 전략을 최적화하고, 합리적인 이동 손해 또는 차등 손해 중지 설정을 한다.
거래 품종에 대한 필터링을 통해 특정 품종에 적합한 전략을 수립합니다.
워크 포워드 분석 방법을 사용하여 매개 변수를 주기적으로 최적화하여 과도한 최적화를 피하십시오.
CMARSI 전략은 코너스 RSI와 평평한 지표를 통합하여 추세를 따라 중장선 거래를 한다. 이 전략은 안정적이고, 실행하기 쉽고, 효과적으로 추세를 따라 수익을 올릴 수 있다. 우리는 시장 환경에 따라 전략 매개 변수를 지속적으로 최적화하고, 위험을 관리하면 더 나은 수익률을 얻을 수 있다.
/*backtest
start: 2022-09-19 00:00:00
end: 2023-09-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
src = close, lenrsi = 3, lenupdown = 2, lenroc = 100, malengt = 2, low = 40, high = 70, a = 1
updown(s) =>
isEqual = s == s[1]
isGrowing = s > s[1]
ud = 0.0
ud := isEqual ? 0 : isGrowing ? (nz(ud[1]) <= 0 ? 1 : nz(ud[1])+1) : (nz(ud[1]) >= 0 ? -1 : nz(ud[1])-1)
ud
rsi = rsi(src, lenrsi)
updownrsi = rsi(updown(src), lenupdown)
percentrank = percentrank(roc(src, 1), lenroc)
crsi = avg(rsi, updownrsi, percentrank)
MA = sma(crsi, malengt)
band1 = 70
band0 = 40
ColorMA = MA>=band0 ? lime : red
p1 = plot(MA, title="BuyNiggers", style=line, linewidth=4, color=ColorMA)
p2 = plot(low, title="idk", style=line, linewidth=2, color=blue)
p3 = plot(high, title="idk2", style=line, linewidth=2, color=orange)
//@version=2
strategy("CMARSI")
if crossover(MA,band0)
strategy.entry("buy", strategy.long, when=strategy.position_size <= 0)
if crossunder(MA,band1)
strategy.exit("sell", "buy", profit=1000000, stop=10000000)
plot(strategy.equity)