스토카스틱 RSI와 EMA 크로스오버에 기반한 암호화폐 리브랙 거래 전략

저자:차오장, 날짜: 2024-03-08 16:44:51
태그:

img

전략 개요

이 전략은 트렌드를 탐지하고 거래 신호를 확인하기 위해 스토카스틱 RSI와 EMA를 결합합니다. 가격이 EMA20 이상으로 EMA9와 EMA14 사이로 회귀 할 때 스토카스틱 RSI가 과판 수준 이하인 경우 긴 신호가 생성됩니다. 가격이 EMA20 이하로 EMA9와 EMA14 사이로 회귀 할 때 스토카스틱 RSI가 과반 수준 이상인 경우 짧은 신호가 생성됩니다.

전략 원칙

  1. ta.ema 함수를 사용하여 서로 다른 기간의 3 개의 EMA를 계산합니다. EMA9, EMA14, EMA20, 가격의 트렌드 상태를 결정하기 위해.
  2. ta.rsi 함수를 사용하여 RSI 지표를 계산하고, ta.stoch 함수를 사용하여 RSI를 스토카스틱 RSI 지표로 변환하여 가격이 과잉 구매되거나 과잉 판매되는지 결정합니다.
  3. 종료 가격 > EMA20 및 종료 가격 < EMA9 및 EMA14, 그리고 스토카스틱 RSI < 과잉 판매 수준, 긴 신호가 발생하고 구매 거래가 실행됩니다.
  4. 닫기 가격 < EMA20 및 닫기 가격 > EMA9 및 EMA14, 그리고 스토카스틱 RSI >가 구매 수준을 초과하면 짧은 신호가 발생하고 판매 거래가 실행됩니다.

이 전략의 핵심 아이디어는 주 트렌드 (EMA20에 의해 대표되는) 의 가격 리트레이션이 적절한 과소매 또는 과소매 영역에 도달했는지 여부를 결정하기 위해 스토카스틱 RSI를 사용하는 데 있습니다. 빠른 EMA와 중간 EMA를 사용하여 리트레이션의 강도를 확인합니다. 가격이 빠른 EMA와 중간 EMA를 통과하면 리트레이션이 종료되고 트렌드가 역전 될 수 있습니다. 이는 입장에 들어갈 수 없습니다. 가격 리트레이션이 EMA9와 EMA14 사이에있을 때만 트렌드 방향으로 입장에 들어간다고 간주됩니다. 이 다 조건 검증 방법은 신호 품질을 효과적으로 개선하고 잘못된 판단을 줄일 수 있습니다.

전략적 장점

  1. 트렌드 지표 (EMA) 와 오시레이터 지표 (RSI) 를 결합하여 트렌드 및 과잉 구매/ 과잉 판매 시기를 더 잘 파악합니다.
  2. 스토카스틱 RSI를 채택합니다. 원래 RSI 지표에 비해 두 가지 장점이 있습니다. 하나는 지표의 부드러움 증대이며 다른 하나는 지표가 장기간 극단적 인 값을 고수하는 것을 피합니다.
  3. 여러 조건 검증은 많은 잘못된 신호를 효과적으로 필터링하고 신호의 신뢰성을 향상시킬 수 있습니다.
  4. 코드 로직은 명확하고 간단하며, 이해하기 쉽고 수정하기 쉽고, 초보자가 배울 수있는 템플릿으로 사용될 수 있습니다.

전략 위험

  1. EMA가 종종 교차하기 때문에 옆 시장에 적합하지 않으며 많은 잘못된 신호를 생성 할 수 있습니다.
  2. 트렌드가 매우 강하고 가격이 일방적으로 상승하거나 하락하면 이 전략은 리트랙션이 매우 기 때문에 많은 기회를 놓칠 것입니다.
  3. EMA 매개 변수 선택은 전략에 큰 영향을 미치며 다양한 품종과 기간에 따라 개별적으로 조정되어야합니다.
  4. 스토카스틱 RSI 매개 변수 또한 실제 상황에 따라 조정되어야하며 현재 기본 값은 일부 품종에서 잘 작동하지 않을 수 있습니다.

최적화 방향

  1. ATR 지표를 도입하여 다른 변동성 수준에 적응하기 위해 과잉 구매 및 과잉 판매 수준을 동적으로 조정하는 것을 고려하십시오.
  2. 다른 기간에 더 많은 EMA를 추가하여 가격 retraces의 위치를 더 정확하게 설명합니다.
  3. 스톱 로스 및 영업 영업 영업 영업 영업 영업 영업 영업 영업 영업
  4. 핀 바와 같은 촛불 패턴은 정확성을 향상시키는 추가 조건으로 트렌드 반전을 판단하는 데 도움이 될 수 있습니다.

요약

이 전략은 트렌드 리트레이스를 파악하는 동안 위험을 효과적으로 제어하기 위해 EMA 다 조건 검증과 결합한 스토카스틱 RSI를 사용합니다. 전반적인 아이디어는 간단하고 이해하기 쉽고 초보자가 배우고 사용할 수 있습니다. 그러나 전략 자체는 측면 시장에서 낮은 성과, 트렌드 움직임에 대한 충분한 이해 등과 같은 몇 가지 한계를 가지고 있으며 실제 상황에 따라 유연하게 조정해야합니다. 앞으로 더 강력한 수익을 얻기 위해 동적 매개 변수, 더 많은 지표 검증 및 돈 관리와 같은 측면에서 전략을 최적화하고 개선하는 것도 고려 할 수 있습니다. 일반적으로이 전략은 수정하고 확장 할 수있는 기본 템플릿으로 사용될 수 있으며 좋은 출발점 및 학습 자료입니다.


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

//@version=5
strategy("Crypto-EMA_Pullback=-", overlay=true,initial_capital = 10000000,default_qty_type=strategy.percent_of_equity, default_qty_value=10.0, pyramiding = 10)

// Inputs
lengthRsi = input(14, title="RSI Length")
k = input(3, title="Stoch %K")
d = input(3, title="Stoch %D")
lengthStoch = input(14, title="Stochastic RSI Length")
overSold = input(25, title="Oversold Level")
overBought = input(85, title="Overbought Level")
emaFastLength = input(9, title="Fast EMA Length")
emaMediumLength = input(14, title="Medium EMA Length")
emaSlowLength = input(20, title="Slow EMA Length")

// Calculating EMAs
emaFast = ta.ema(close, emaFastLength)
emaMedium = ta.ema(close, emaMediumLength)
emaSlow = ta.ema(close, emaSlowLength)

// Calculating the RSI and Stoch RSI
rsi = ta.rsi(close, lengthRsi)
stochRsiK = ta.sma(ta.stoch(rsi, rsi, rsi, lengthStoch), k)
stochRsiD = ta.sma(stochRsiK, d)

// Entry Conditions
bullishCondition = close > emaSlow and close < emaFast and close < emaMedium and stochRsiK < overSold
bearishCondition = close < emaSlow and close > emaFast and close > emaMedium and stochRsiK > overBought

// Strategy Execution
if (bullishCondition)
    strategy.entry("Long", strategy.long)

if (bearishCondition)
    strategy.entry("Short", strategy.short)

// Plotting
plot(emaFast, color=color.blue, title="Fast EMA")
plot(emaMedium, color=color.orange, title="Medium EMA")
plot(emaSlow, color=color.red, title="Slow EMA")
hline(overSold, "Oversold", color=color.green)
hline(overBought, "Overbought", color=color.red)


더 많은