RSI 모멘텀 긴 짧은 전략

저자:차오장, 날짜: 2023-10-26 17:05:40
태그:

img

전반적인 설명

RSI 모멘텀 롱 쇼트 전략은 라리 코너스 RSI 지표에 기반한 전형적인 모멘텀 전략으로, RSI의 과잉 구매 및 과잉 판매 신호를 사용하여 진입 및 출구를 결정합니다. 핵심은 가격이 과잉 구매 또는 과잉 판매 상태에 있는지 확인하고 거래 신호로 사용하는 것입니다.

전략 논리

이 전략은 리크백 기간 동안 가격의 상승 동력과 하락 동력을 계산하여 RSI 지표를 구성합니다. 과반 판매 라인 10 이하의 RSI는 과반 판매로 간주되며, 과반 구매 라인 90 이상의 RSI는 과반 구매로 간주됩니다. 이 전략은 RSI가 아래에서 과반 판매 라인을 넘을 때 긴 신호를 생성하고, RSI가 위에서 과반 구매 라인을 넘을 때 짧은 신호를 생성합니다.

추가 이동 평균 필터가 추가됩니다. 5 일 MA가 200 일 MA보다 높을 때 긴 신호를 허용하고 5 일 MA가 200 일 MA보다 낮을 때 짧은 신호를 허용합니다. 이것은 단기 리바운드에서 잘못된 신호를 필터링하는 데 도움이됩니다.

또한 이윤 취득 메커니즘이 도입됩니다. 기존의 긴 포지션은 RSI가 과소매 라인 90을 넘으면 닫을 것입니다. 기존의 짧은 포지션은 RSI가 과소매 라인 10을 넘으면 닫을 것입니다. 이것은 이익을 잠금하고 손실을 증가시키는 것을 피합니다.

전략 의 장점

  1. 과잉 구매/ 과잉 판매 수준을 식별하기 위해 RSI를 사용하면 가격 반전 순간을 잡습니다.

  2. MA 필터를 추가하면 단기 소음으로 인한 잘못된 신호를 줄일 수 있습니다.

  3. 이윤 창출 메커니즘은 위험을 통제하고 손실을 제한하는 데 도움이 됩니다.

  4. 간단하고 명확한 규칙, 이해하기 쉽고 실행하기 쉽습니다.

  5. RSI는 널리 사용되고 실용적인 지표로 많은 도구에 적합합니다.

전략 의 위험

  1. RSI가 과잉 구매/ 과잉 판매되는 것은 항상 반전으로 이어지는 것은 아닙니다.

  2. MA 필터는 또한 좋은 거래 기회를 필터링 할 수 있습니다.

  3. 부적절한 수익 설정은 너무 일찍 트렌드를 포기합니다.

  4. RSI 룩백, 과잉 구매/ 과잉 판매 수준, MA 설정과 같은 매개 변수는 조정해야 합니다.

위험은 매개 변수 최적화, 다른 지표의 조합, 유연한 수익 취득 등으로 줄일 수 있습니다.

더 나은 기회

  1. 다른 뷰백 기간으로 RSI를 테스트합니다.

  2. RSI를 보완하기 위해 KDJ, MACD와 같은 다른 지표를 추가하십시오.

  3. 시장 체제에 따라 과반 구매/ 과반 판매 수준을 조정합니다.

  4. 보유 기간에 따라 수익률 RSI 수준을 정렬합니다.

  5. 최대 손실 비율에 기반한 스톱 로스 전략을 포함합니다.

  6. MA 시스템을 최적화하고 역동적인 후속 스톱 손실을 사용하세요.

결론

RSI 모멘텀 롱 쇼트 전략은 RSI를 사용하여 MAs 및 수익 취득 규칙에 의해 필터링된 과소 구매 / 과소 판매 수준을 식별하여 단기적 역전 기회를 잡습니다. 전략은 간단하고 실용적이며 다양한 시장에 적응하기 위해 추가 테스트 및 향상 가치가 있습니다. 전반적으로 양적 거래 전략 개발에 대한 참조로 사용할 수있는 좋은 틀을 제공합니다.


/*backtest
start: 2023-09-25 00:00:00
end: 2023-10-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//authour: SudeepBisht
//@version=3
//Based on Larry Connors RSI-2 Strategy - Lower RSI
strategy("SB_CM_RSI_2_Strategy_Version 2.0", overlay=true)

src = close
entry= input(defval=0,title="Entry area")
entry:=nz(entry[1])
overBought=input(90)
overSold=input(10)
//RSI CODE
up = rma(max(change(src), 0), 2)
down = rma(-min(change(src), 0), 2)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
//Criteria for Moving Avg rules
ma5 = sma(close,5)
ma200= sma(close, 200)

//Rule for RSI Color
col = close > ma200 and close < ma5 and rsi < 10 ? lime : close < ma200 and close > ma5 and rsi > 90 ? red : silver
chk= col==red?-1:col==lime?1:0

if (not na(rsi))
    if (crossover(rsi, overSold))
        if(chk[1]==1)
            strategy.entry("RsiLE", strategy.long, comment="RsiLE")
            entry:=1
    if (crossunder(rsi, overBought))
        if(chk[1]==-1)
            strategy.entry("RsiSE", strategy.short, comment="RsiSE")
            entry:=-1
        
if (not na(rsi))
    if (crossover(rsi, overSold) and entry==-1)
        strategy.close_all()
        //strategy.entry("RsiLE", strategy.long, comment="RsiLE")
        entry:=0
    if (crossunder(rsi, overBought) and entry==1)
        strategy.close_all()
        //strategy.entry("RsiSE", strategy.short, comment="RsiSE")
        entry:=0
        


더 많은