RSI에 기반한 금포 슈퍼공공 전략

저자:차오장, 날짜: 2024-02-22 17:05:17
태그:

基于RSI金叉超级做空策略

1 전략 개요

RSI 금포트 초공점 전략은 트렌드 판단과 엔트리를 구현하기 위해 ATR 파운드, 이중 RSI 지표 및 EMA 평선 금포트 포크를 사용합니다. ATR 파운드, 이중 RSI 지표, 가격 트렌드를 확인하기 위해 사용되며, EMA 평선 금포트는 엔트리 기회를 찾기 위해 사용됩니다. 이 전략은 간단하고 구현하기 쉽고 효율적이고 유연한 공점 전략입니다.

두 번째, 전략적 원칙

이 전략은 ATR 파운드, 듀얼 RSI 지표 및 EMA 평선 세 가지 구성 요소를 사용하여 엔트리 신호를 함께 구현합니다. 가격이 ATR 파운드보다 높게 열렸을 때 우리는 과잉 구매를 판단합니다. 이 경우 빠른 시기의 RSI가 느린 시기의 RSI보다 낮으면 추세가 황소로 바뀌고 EMA 평선이 정교한 경우 추세가 더욱 약화되는 것을 나타냅니다.

예를 들어, 가격이 열릴 때 ATR 계단 위에 있는지 여부를 판단합니다.open>upper_band이 경우, 우리는 빠른 RSI가 느린 RSI보다 낮은지 판단합니다.rsi1<rsi2그리고 우리는 EMA 평행선이 정교한 포크가 발생하는지 확인했습니다.ta.crossover(longSMA, shortSMA)이 세 가지 조건이 모두 충족되면 공허 신호를 발송하여 진입합니다.

반대로, 만약 가격이 열 때 아래 ATR 파도, 빠른 RSI가 느린 RSI보다 높고 EMA 금포가 발생하면, 많은 입장을 하는 신호가 발생한다.

이 전략의 주요 혁신은 트렌드 판단을 위해 이중 RSI 지표의 도입으로 단일 RSI에 비해 높은 신뢰성을 얻을 수 있으며, ATR 파단과 EMA 평평선과 결합하여 신호를 필터링하여 신호를 더 정확하고 신뢰할 수 있도록 하는 것이 전략의 핵심 특징이다.

세 번째, 전략적 장점

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 이중 RSI를 사용하여 추세를 더 정확하게 판단합니다.
  2. ATR 파도는 부진을 방지하기 위해 부진을 판단합니다.
  3. EMA 평균선은 명확한 금포크/죽포크가 발생했을 때 진입하여 신호 정확성을 높인다.
  4. 다양한 지표 조합을 상호 검증하여 높은 신뢰도를 제공합니다.
  5. 전략 설계는 간단하고 실행이 쉽습니다.
  6. 이 두 가지 조건은,
  7. 더 많은 매개 변수를 조정할 수 있으며, 다른 시장에 따라 조정할 수 있습니다.

네, 전략적 위험

이 전략에는 주의해야 할 몇 가지 위험 요소가 있습니다.

  1. 평균 EMA는 잘못된 진단을 일으킬 수 있으며, MA가 더 안정적으로 부드럽게 될 수 있습니다.
  2. 부진한 시장에서 손해를 막기 쉽다.
  3. 파라미터 설정이 잘못되면 잘못된 신호가 증가할 수 있습니다.
  4. ATR 파장을 돌파하는 것은 너무 이른 시간이며 가짜 돌파일 수도 있습니다.

이러한 위험은 다음과 같은 몇 가지 측면에서 최적화 될 수 있습니다. 1. 평평한 EMA를 대신하여 Smoothed MA를 사용하여 테스트합니다. 2. 적당하게 손해배상을 완화하여 불안한 시장의 빈번한 손해배상을 피한다. 3. 최적의 밸런스를 찾기 위해 파라미터 조합을 조정합니다 4. 파장을 돌파할 때 더 많은 지표를 도입하여 두 번째 검증

5. 전략적 최적화 방향

이 전략은 다음과 같은 부분에서 더욱 최적화 될 수 있습니다.

  1. EMA의 중간선을 대신하여 Smoothed MA를 사용하여 잘못된 진단 신호를 줄일 수 있는지 확인합니다.
  2. 켈트너 통로와 같은 변동률 지표의 증가가 가짜 돌파구를 방지하기 위해 두 번째 검증을 수행합니다.
  3. ADX와 같은 더 많은 트렌드 지표를 추가하여 큰 트렌드 판단을 수행합니다.
  4. 특정 품종 특성에 따라 최적의 조합을 찾습니다.
  5. 다른 시간주기 매개 변수에서 수행을 테스트합니다
  6. 기계 학습 알고리즘을 추가하여 자동 최적화 파라미터

이러한 최적화 조치는 전략의 안정성, 유연성 및 수익성을 더욱 향상시킬 수 있습니다.

6. 요약

RSI 금포 초공식 전략은 전체적으로 매우 효율적인 실용적인 단선 공식 전략이다. 그것은 세 가지 지표의 장점을 동시에 활용하여 입시 신호를 통합하여 다른 품종과 시장 환경에 맞게 변수를 조정할 수 있다. 이 전략의 핵심 혁신은 트렌드 전환을 판단하는 이중 RSI 지표의 사용이며, ATR 파도와 EMA 일평선과 상호 검증하여 높은 정확성으로 입시 시기를 형성하는 것이다. 전체적으로 이 전략은 실용성이 매우 강하며 투자자가 적극적으로 사용해야 할 가치가 있지만, 또한 몇 가지 잠재적인 위험 요소에 대한 주의가 필요하다. 지속적인 테스트와 최적화를 통해 이 전략은 투자자의 수익 도구 중 한 가지 도구가 될 수 있다고 믿는다.


/*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=5
//Revision: Updated script to pine script version 5
//added Double RSI for Long/Short prosition trend confirmation instead of single RSI
strategy("Super Scalper - 5 Min 15 Min", overlay=true)
source = close
atrlen = input.int(14, "ATR Period")
mult = input.float(1, "ATR Multi", step=0.1)
smoothing = input.string(title="ATR Smoothing", defval="WMA", options=["RMA", "SMA", "EMA", "WMA"])

ma_function(source, atrlen) =>
    if smoothing == "RMA"
        ta.rma(source, atrlen)
    else
        if smoothing == "SMA"
            ta.sma(source, atrlen)
        else
            if smoothing == "EMA"
                ta.ema(source, atrlen)
            else
                ta.wma(source, atrlen)

atr_slen = ma_function(ta.tr(true), atrlen)
upper_band = atr_slen * mult + close
lower_band = close - atr_slen * mult

// Create Indicator's
ShortEMAlen = input.int(5, "Fast EMA")
LongEMAlen = input.int(21, "Slow EMA")
shortSMA = ta.ema(close, ShortEMAlen)
longSMA = ta.ema(close, LongEMAlen)
RSILen1 = input.int(40, "Fast RSI Length")
RSILen2 = input.int(60, "Slow RSI Length")
rsi1 = ta.rsi(close, RSILen1)
rsi2 = ta.rsi(close, RSILen2)
atr = ta.atr(atrlen)

//RSI Cross condition
RSILong = rsi1 > rsi2
RSIShort = rsi1 < rsi2

// Specify conditions
longCondition = open < lower_band
shortCondition = open > upper_band
GoldenLong = ta.crossover(shortSMA, longSMA)
Goldenshort = ta.crossover(longSMA, shortSMA)

plotshape(shortCondition, title="Sell Label", text="S", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.new(color.red, 0), textcolor=color.white)
plotshape(longCondition, title="Buy Label", text="B", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.new(color.green, 0), textcolor=color.white)
plotshape(Goldenshort, title="Golden Sell Label", text="Golden Crossover Short", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.new(color.blue, 0), textcolor=color.white)
plotshape(GoldenLong, title="Golden Buy Label", text="Golden Crossover Long", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.new(color.yellow, 0), textcolor=color.white)

// Execute trade if condition is True
if (longCondition)
    stopLoss = low - atr * 1
    takeProfit = high + atr * 4
    if (RSILong)
        strategy.entry("long", strategy.long)

if (shortCondition)
    stopLoss = high + atr * 1
    takeProfit = low - atr * 4
    if (RSIShort)
        strategy.entry("short", strategy.short)

// Plot ATR bands to chart

////ATR Up/Low Bands
plot(upper_band)
plot(lower_band)

// Plot Moving Averages
plot(shortSMA, color=color.red)
plot(longSMA, color=color.yellow)


더 많은 내용