리소스 로딩... 로딩...

RWI 변동성 반대 전략

저자:차오장, 날짜: 2024-02-01 14:56:58
태그:

img

전반적인 설명

RWI 변동성 역전 전략은 시장이 역전 상태에 있는지 여부를 결정하기 위해 특정 기간 동안 RWI 최고와 최저를 계산하여 역전 기회를 발견합니다. 수익을 목표로 최고에서 짧고 최저에서 길게 가는 역전 전략을 채택합니다.

전략 원칙

전략은 먼저 일정 기간 동안 (예를 들어 14 개의 촛불) 에 대한 RWI 최고와 최저를 계산합니다. 계산 공식은 다음과 같습니다.

RWI High = (N 기간의 최고 - 최저) / (N 기간의 ATR * sqrt(N))

RWI 낮음 = (N 기간 중 가장 높음 - 낮음) / (N 기간의 ATR * sqrt(N))

그 다음 RWI 최고/하위와 임계치 사이의 차이를 계산하여 임계치 이하인지 결정합니다. (예를 들어 1). RWI 최고와 최하위 모두 임계치 이하인 경우 시장이 다양하다고 결정됩니다. 이 경우 아무런 조치도 취하지 않습니다.

RWI 최고가 RWI 낮보다 임계보다 높으면 가격이 반전될 것이라는 것이 결정되며, 단축을 고려할 수 있습니다. RWI 낮이 임계보다 높으면 가격이 반전될 것이라는 것이 결정되며, 단축을 고려할 수 있습니다. 이것은 시장 반전 상태를 결정하기 위해 RWI에 기반한 역행 거래 전략을 형성합니다.

이점 분석

RWI 변동성 반대 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 역전점을 결정하기 위해 RWI 지표를 사용하는 것은 높은 승률과 정확합니다.
  2. 반대 전략을 채택하는 것은 다양한 시장에 적합합니다.
  3. 전략 논리는 명확하고 이해하기 쉽고, 매개 변수는 유연합니다.
  4. 신호 품질을 향상시키기 위해 길고 짧은 사이클을 구성 할 수 있습니다.

위험 분석

RWI 변동성 대비 전략은 또한 다음과 같은 위험을 가지고 있습니다.

  1. 반전 신호는 손실을 초래하는 거짓 파업이있을 수 있습니다.
  2. 지속된 트렌드 중에 더 많은 반전 신호가 발생하여 손실이 발생합니다.
  3. 잘못된 RWI 매개 변수 설정은 신호 품질을 감소시킬 수 있습니다.
  4. 변동성이 증가하면 RWI 지표가 실패합니다.

위험을 통제하기 위해 RWI 매개 변수를 적절히 조정하고 필터를 추가하고 역전 범위를 제한할 수 있습니다.

최적화 방향

이 전략은 다음과 같은 방법으로 더 이상 최적화 될 수 있습니다.

  1. 신호를 개선하기 위해 길고 짧은 RWI 기간을 사용하여 이중 시간 프레임 분석을 추가하십시오.
  2. 가짜 파장을 피하기 위해 KD와 MACD와 같은 다른 지표와 결합하십시오.
  3. 단일 손실을 엄격하게 제어하기 위해 중지 손실 전략을 구성
  4. 시장 변화에 적응하기 위해 RWI 매개 변수를 동적으로 최적화
  5. 포지션 관리 최적화, 시장 조건에 따라 포지션을 추가 또는 감소

요약

RWI 변동성 역전 전략은 반전을 결정하기 위해 RWI를 사용하여 명확한 논리를 가지고 있습니다. 거래 논리는 견고하며 시장 범위에서 잘 작동합니다. 매개 변수를 최적화하고 위험을 제어함으로써 전략은 더 안정적이고 효율적으로 적용 될 수 있습니다.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// Copyright (c) 2020-present, JMOZ (1337.ltd)
strategy("RWI Strategy", overlay=false)


length = input(title="Length", type=input.integer, defval=14, minval=1)
threshold = input(title="Threshold", type=input.float, defval=1.0, step=0.1)


rwi(length, threshold) =>
    rwi_high = (high - nz(low[length])) / (atr(length) * sqrt(length))
    rwi_low = (nz(high[length]) - low) / (atr(length) * sqrt(length))
    is_rw = rwi_high < threshold and rwi_low < threshold
    [is_rw, rwi_high, rwi_low]


[is_rw, rwi_high, rwi_low] = rwi(length, threshold)


long = not is_rw and rwi_high > rwi_low
short = not is_rw and rwi_low > rwi_high


strategy.entry("Long", strategy.long, when=long)
strategy.entry("Short", strategy.short, when=short)


plot(rwi_high, title="RWI High", linewidth=1, color=is_rw?color.gray:color.blue, transp=0)
plot(rwi_low, title="RWI Low", linewidth=1, color=is_rw?color.gray:color.red, transp=0)


더 많은