StochRSI 반전 거래 전략

저자:차오장날짜: 2024-02-26 14:17:36
태그:

img

전반적인 설명

스토크RSI 역전 거래 전략은 스토카스틱 RSI와 RSI 지표를 결합한 양적 거래 전략이다. 이 전략은 스토카스틱 RSI 지표를 사용하여 과소매 및 과소매 상황을 식별하고 RSI 지표가 역전되면 거래 신호를 생성합니다.

전략 논리

이 전략은 먼저 14일 RSI 지표를 계산한다. 그 다음 %K 라인과 %D 라인을 포함한 RSI를 기반으로 스토카스틱 RSI를 계산한다. %K 라인은 3일 SMA 매개 변수를 사용하고, %D 라인은 %K 라인의 3일 SMA를 사용합니다. %K 라인이 과소매 구역에서 과소매 구역으로 떨어지면서 %D 라인의 위를 넘을 때 구매 신호가 생성된다. %K 라인이 과소매 구역에서 과소매 구역으로 상승한 후 %D 라인의 아래를 넘을 때 판매 신호가 생성된다.

이점 분석

스토카스틱 RSI 및 RSI 지표를 결합함으로써이 전략은 전환 지점을 더 정확하게 파악 할 수 있습니다. 단일 RSI 지표와 비교하면 다음과 같은 장점이 있습니다.

  1. 스토카스틱 RSI는 과잉 구매와 과잉 판매 상황을 더 명확하게 식별하고 소음을 필터링할 수 있습니다.

  2. 스토카스틱 RSI와 RSI 반전이 결합되면 반전의 시기를 더 정확하게 파악할 수 있습니다.

  3. 스토카스틱 RSI 매개 변수를 조정하면 더 많은 시장 환경에 맞게 지표의 민감도를 최적화 할 수 있습니다.

위험 분석

이 전략은 또한 몇 가지 위험을 포함합니다.

  1. 반전 실패 위험. 선택 된 지표는 가격 반전을 완벽하게 예측 할 수 없으므로 항상 실패 위험이 있습니다.

  2. 매개 변수 최적화 위험. 스토카스틱 RSI와 RSI의 매개 변수는 전략 성능에 영향을 미치므로 최적화되어야합니다.

  3. 트렌드를 따르는 전략은 일반적으로 트렌드 브레이크 시장에서 반전 전략을 능가합니다.

대책:

  1. 단일 거래 손실을 제어하기 위해 스톱 손실을 적절히 조정합니다.

  2. 기계 학습을 사용하여 최적의 매개 변수 조합을 검색합니다.

  3. 트렌드를 따르는 전략과 결합하고 시장 조건에 따라 융통성 있게 전환합니다.

최적화 방향

이 전략은 또한 다음과 같은 측면에서도 개선될 수 있습니다.

  1. 스토카스틱 RSI와 RSI의 매개 변수를 최적화하여 기계 학습을 통해 최상의 조합을 찾습니다.

  2. 스톱 로스 로직을 추가합니다. 전략이 3% 하락했을 때 탈퇴하는 것과 같이요. 위험을 효과적으로 통제하기 위해서죠.

  3. 모멘텀 요소를 조합하고, 거짓 브레이크오프를 피하기 위해 과잉 매입/ 과잉 판매 시 과도한 모멘텀을 식별합니다.

  4. 트렌드 결정 - 역전 거래를 중지하고 트렌드 시장에서 트렌드 추적을 시작하십시오.

결론

스토크RSI 역전 거래 전략은 스토카스틱 RSI와 RSI의 조합을 사용하여 과반 구매 / 과반 판매 조건을 확인한 후에 거래를 수행하며, 단기에서 중기 임의 변동에서 이익을 얻는 것을 목표로합니다. 전략이 역전 거래의 정확성을 향상시킬 수 있지만, 역전 실패와 같은 위험이 여전히 존재합니다. 우리는 위험을 제어하면서 높은 승률을 유지하기 위해 매개 변수를 최적화하고 스톱 로스를 추가하고 모멘텀을 결정하여 전략을 더욱 향상시킬 수 있습니다.


/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("StochRSIStrategy", overlay=true)

// Define the K and D periods, RSI length, and overbought/oversold levels
K = input(3, title="%K")
D = input(3, title="%D")
rsiLength = input(14, title="RSI Length")
stochLength = input(14, title="Stoch Length")
overbought = input(80, title="Overbought Level")
oversold = input(20, title="Oversold Level")

// Calculate the RSI
rsi = rsi(close, rsiLength)

// Calculate Stochastic RSI
stochRsi = stoch(rsi, rsi, rsi, stochLength)
Kline = sma(stochRsi, K)
Dline = sma(Kline, D)

// Plot Stochastic RSI
plot(Kline, title="K", color=color.blue)
plot(Dline, title="D", color=color.orange)

// Define bullish and bearish conditions
bullCond = (Kline < oversold) and (crossover(Kline, Dline))
bearCond = (Kline > overbought) and (crossunder(Kline, Dline))

// Generate and plot signals
if (bullCond)
    strategy.entry("L", strategy.long)
if (bearCond)
    strategy.close("L")

if (bearCond)
    strategy.entry("S", strategy.short)
if (bullCond)
    strategy.close("S")

// Plot signals
plotshape(series=bullCond, title="L", location=location.belowbar, color=color.green, style=shape.circle, size=size.small)
plotshape(series=bearCond, title="S", location=location.abovebar, color=color.red, style=shape.circle, size=size.small)


더 많은