로즈 크로스 스타 듀얼 인디케이터 변동성 전략

저자:차오장, 날짜: 2023-10-31 17:33:10
태그:

img

전반적인 설명

이 전략은 볼링거 밴드와 수정된 상대 강도 지수 (RSI) 를 결합하여 거래 기회를 식별합니다. 백테스트 결과는 전체 수익성과 높은 승률을 보여줍니다. 트렌딩 시장에서 브레이크아웃 신호를 캡처하고 단기 중기 거래에 적합합니다.

전략 논리

지표 선택

이 전략은 표준편차 배수 2와 RSI를 14의 기간으로 이용한다. Bollinger Bands는 브레이크오웃을 감지하고 RSI는 과잉 구매/ 과잉 판매 수준을 결정한다. 지표 매개 변수는 경험과 반복 테스트를 기반으로 설정된다.

입국 규칙

  1. 가격이 낮은 볼링거 밴드를 넘어서고 RSI가 30 (가장 팔린 영역) 이면 긴 거래가 됩니다.

  2. 가격이 상부 볼링거 밴드 아래로 떨어지고 RSI가 70 (가장 많이 구매된 지역) 이상이면 단축합니다.

출입규칙

  1. 스톱 로즈 또는 가격이 상부 볼링거 밴드 이하로 떨어지면 긴 포지션을 닫습니다.

  2. 스톱 로즈 또는 가격이 아래 볼링거 밴드 이상으로 넘어갈 때 짧은 포지션을 닫습니다.

장점

  1. 이중 지표 조합은 전략의 정확성을 향상시킵니다.

  2. 최적화된 지표 매개 변수는 강력한 적응력을 제공합니다.

  3. 탈출 신호는 명확하고 실행하기 쉽습니다.

  4. 효율적인 마감과 손실 통제

  5. 시각적 신호는 거래 실행을 단순화합니다.

위험성

  1. 밴드 압축은 거짓 파열을 일으킬 수 있습니다. 더 긴 볼링거 기간을 고려하십시오.

  2. 범위에 묶인 시장에서 빈번한 거래가 가능합니다. 낮은 RSI 감수성.

  3. 트랜잭션 비용을 관리하고 정차 거리를 넓혀

개선

  1. EMA와 다른 지표를 테스트하여 대역을 생성합니다.

  2. 부진을 방지하기 위해 부피 또는 MA 필터를 추가합니다.

  3. ATR에 기반한 밴드 설정 및 정지 거리를 설정합니다.

  4. 트렌드 필터를 추가해 윙사브를 줄여

결론

이 전략은 트렌드 및 브레이크아웃 거래에 대한 볼링거 밴드 및 RSI의 강점을 결합합니다. 구현하기 쉽고, 단기 및 중장기 브레이크아웃에 적합합니다. 지표 및 매개 변수 최적화를 통해 확장하면 안정성을 더욱 확장 할 수 있습니다.


/*backtest
start: 2022-10-24 00:00:00
end: 2023-10-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Estrategia de Ruptura con Bollinger y RSI Modificada", shorttitle="BB RSI Mod", overlay=true)

// Parámetros de Bollinger Bands
src = close
length = input(20, title="Longitud", minval=1)
mult = input(2.0)
basis = sma(src, length)
upper = basis + mult * stdev(src, length)
lower = basis - mult * stdev(src, length)

// Parámetros del RSI
rsiSource = rsi(close, 14)
overbought = 70
oversold = 30

longCondition = crossover(src, lower) and rsiSource < oversold
shortCondition = crossunder(src, upper) and rsiSource > overbought

longExit = crossunder(src, upper)
shortExit = crossover(src, lower)

if (longCondition)
    strategy.entry("Compra", strategy.long, stop=low)
    
if (shortCondition)
    strategy.entry("Venta", strategy.short, stop=high)

if (longExit)
    strategy.close("Compra")

if (shortExit)
    strategy.close("Venta")

// Visualización
plotshape(series=longCondition, title="Compra", location=location.belowbar, color=color.green, style=shape.labelup, text="Compra")
plotshape(series=shortCondition, title="Venta", location=location.abovebar, color=color.red, style=shape.labeldown, text="Venta")
plot(upper, "Banda Superior", color=color.red)
plot(lower, "Banda Inferior", color=color.green)


더 많은