RSI 장기 거래 전략

저자:차오장, 날짜: 2023-09-21 20:54:08
태그:

전반적인 설명

이 전략은 RSI 지표를 사용하여 촛불 패턴과 가격 브레이크와 결합하여 장기 거래 신호를 생성하여 장기 트렌드 방향을 결정합니다. RSI 기반의 장기 주기 추적 전략 유형에 속합니다.

전략 논리

이 전략은 두 가지 주요 요소에 기반합니다.

  1. RSI 지표

    전체 트렌드 방향을 결정하기 위해 20주기 RSI를 계산합니다.

  2. 촛대 패턴

    지난 3개의 촛불에서 가격 변화를 판단하여 트렌드를 확인합니다.

    • 350 이상의 축적 된 근위 변화 는 상승 추세를 나타냅니다.
    • -200 이하의 축적된 근위변화는 하향 경향을 나타냅니다.

상승 추세와 RSI가 30을 넘을 때 길게, 하락 추세에 따라 짧게 움직입니다.

전체적으로, 트렌드를 결정하기 위해 더 긴 기간 동안 RSI 추세와 촛불 패턴을 모두 고려합니다.

장점

  • RSI는 장기적 동향 방향을 판단합니다.
  • 촛불 패턴은 추세를 확인합니다
  • 여러 가지 요인이 정확성 을 향상 시킨다
  • 더 긴 주기는 과도한 거래를 피합니다
  • 사용자 정의 가능한 RSI 매개 변수 및 기준

위험성

  • RSI는 트렌드 변화에서 뒤쳐질 수 있습니다.
  • 간단한 촛불 패턴 규칙
  • 스톱 로스 메커니즘이 없으니, 좋은 출구들이 중요합니다.
  • 긴 주기는 짧은 조정에 반응 할 수 없습니다.
  • 임계값은 각기 다른 제품들에 대해 별도의 조정이 필요합니다.

위험은 다음과 같이 감소 할 수 있습니다.

  • 최고의 기간에 RSI 매개 변수를 최적화
  • 확인을 위해 MACD와 같은 다른 지표를 추가합니다
  • 이동 또는 비율 중지 추가
  • 짧은 주기에 대한 추가 작은 거래를 고려하십시오.
  • 각기 다른 제품들에 대한 테스트 매개 변수 및 임계값

개선 방향

이 전략은 다음과 같이 개선될 수 있습니다.

  1. 최적의 매개 변수를 위해 다른 RSI 기간을 테스트합니다.

    예를 들어, 10, 15, 30 기간 RSI 테스트

  2. 확인 지표 추가

    예를 들어, RSI 상승 추세에 MACD 황금 십자가가 필요합니다.

  3. 정지 최적화

    이동 중지, 트레일123 등을 고려하십시오.

  4. 시간 기반 매개 변수 최적화

    다른 세션에 대해 매개 변수를 별도로 최적화

  5. 단기 전략 추가

    일시적 조정에 대응하기 위해 단기 전략을 결합

요약

이 장기 전략은 촛불 패턴과 브레이크아웃에 의해 확인된 트렌드 방향을 나타내는 RSI를 사용하여 단기적인 잡음을 피하면서 주요 트렌드에 집중합니다. 그러나 RSI 지연 및 약한 스톱과 같은 문제가 있습니다. 파라미터 최적화, 확인 추가, 단기적인 유연성과 장기적인 끈기를 결합하여 안정적인 장기적인 수익성을 가능하게 하는 스톱을 최적화하여 개선이 가능합니다.


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


//@version=2
// use with eurusd h1 , gbpusd h1
strategy("RSI Long Term", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 10)
RSI = (rsi(sum(close , 20) + sum(open ,20) , 20 ))
Sum_OF_3_Both = sum((close - open)*100000 , 3) 
Up_Move = ((close[0] - open[0])*100000) < 35



Down_Move = ((close[6] - open[6])*100000) + ((close[5] - open[5])*100000) + ((close[4] - open[4])*100000) < -400


maxIdLossPcnt = input(10, "Max Intraday Loss(%)", type=float)

// strategy.risk.max_intraday_loss(maxIdLossPcnt, strategy.percent_of_equity)
//total =  (num > 70 )

if (Sum_OF_3_Both > 350 and Up_Move )
    strategy.entry("Bar Up Buy", strategy.long)

if (Sum_OF_3_Both < -200  and Down_Move and RSI > 30.1  )
    strategy.entry("Bar Down Sell ", strategy.short)

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

더 많은