여러 MACD 및 RSI 전략

저자:차오장, 날짜: 2023-10-08 14:03:47
태그:

전반적인 설명

다중 MACD 및 RSI 전략은 MACD 지표와 RSI 지표의 신호를 포괄적으로 활용합니다. 두 MACD의 빠르고 느린 선이 교차하고 RSI가 과잉 구매 수준 이하일 때 길게 이동하고 두 MACD의 빠르고 느린 선이 교차하고 RSI가 과잉 판매 수준으로 들어가면 짧게 이동하여 중장기 트렌드를 파악하는 것을 목표로합니다.

원칙

이 전략은 신호를 생성하기 위해 두 개의 MACD 지표를 사용합니다. 한 MACD는 빠른 길이 10, 느린 길이 22 및 MACD 길이 9의 매개 변수를 가지고 있으며 다른 MACD는 빠른 길이 21, 느린 길이 45 및 MACD 길이 20의 매개 변수를 가지고 있습니다. 두 MACD의 빠른 선이 느린 선 위에 넘어가면 구매 신호를 생성하고 두 MACD의 빠른 선이 느린 선 아래에 넘어가면 판매 신호를 생성합니다.

이 와중에, 그것은 과잉 구매 및 과잉 판매 조건을 판단하기 위해 RSI 지표를 통합합니다. RSI 매개 변수는 14로 설정되어 있으며, 과잉 구매 수준은 70이며 과잉 판매 수준은 20입니다. RSI가 과잉 구매 수준 이하일 때 구입하고 RSI가 과잉 판매 수준 이상일 때 판매 할 수 있습니다.

두 MACD가 구매 신호를 생성하고 RSI가 과잉 구매되지 않을 때만 긴 엔트리가 발생합니다. 두 MACD가 판매 신호를 생성하고 RSI가 과잉 판매 구역에 들어갈 때만 짧은 엔트리가 발생합니다.

장점

이 전략의 가장 큰 장점은 일부 잘못된 신호를 필터링하기 위해 이중 MACD 지표를 활용하고 두 MACD 모두 신호를 내렸을 때만 입력한다는 것입니다. 이것은 수익률률을 향상시키는 동시에 불필요한 거래와 거래 빈도를 줄여줍니다.

또한, 과잉 구매/ 과잉 판매 조건을 판단하기 위해 RSI를 통합하면 가격이 이미 강한 트렌드를 가지고 있을 때 장기/단순으로 가는 것을 피하고 손실 위험을 감소시킵니다.

이 전략은 이중 MACD 필터링과 RSI 판단을 결합하여 트렌딩 시장에서만 거래하고 중장기 트렌드에서 적당한 수익을 얻을 수 있습니다.

위험성

이 전략은 또한 몇 가지 위험을 가지고 있습니다. 이중 MACD 필터링은 가격 반전의 타이밍을 놓치고 손실을 증가시킬 수 있습니다. 두 MACD가 양수적 인 크로싱이고 RSI가 과잉 매입되지 않은 상태에서 길게 이동하면 이미 바닥을 놓치고 손실을 초래할 수 있습니다.

또한, MACD 자체는 거래 시장의 특성에 매우 민감합니다. 다른 거래 주기와 시장 환경이 유효하기 위해 MACD 매개 변수를 조정해야합니다. 매개 변수가 올바르게 설정되지 않으면 잘못된 신호를 생성하고 손실을 유발할 가능성이 있습니다.

또한, RSI는 여러 가지 과잉 구매 / 과잉 판매 신호를 생성 할 수 있습니다. RSI가 완전히 역전되기 전에 조기에 진입하면 손실을 증가시킬 수 있습니다.

최적화

이 전략을 최적화하기 위해 몇 가지 측면을 고려할 수 있습니다.

  1. MACD 매개 변수를 최적화하고 다른 제품과 시간 프레임에 최적의 MACD 매개 변수 조합을 찾기 위해 빠른 / 느린 라인 길이를 조정하여 신호 효율을 향상시킵니다.

  2. RSI 매개 변수를 세밀하게 조정하고, 입시 시기를 최적화하기 위해 과잉 매입/ 과잉 판매 수준을 적당히 단축하거나 확대합니다.

  3. 스톱 로스 전략을 추가하여 마감률이 일정 수준에 도달했을 때 손실을 줄이고 추가 손실을 피합니다.

  4. 진입하기 전에 추세를 더 확인하기 위해 브레이크오프 포인트와 같은 보조 판단을 추가하는 것을 고려하십시오.

결론

다중 MACD 및 RSI 전략은 신호 유효성을 향상시키기 위해 이중 MACD 지표와 RSI 지표를 결합하고 중장기 트렌드 움직임에서 적당한 수익을 얻을 수 있습니다. 그러나 또한 몇 가지 위험을 감수합니다. MACD 및 RSI 매개 변수는 추가 테스트 및 최적화가 필요하며 전략이 실제 거래에 적용되기 전에 위험 관리 메커니즘이 추가되어야합니다.


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

//@version=2
strategy("MACDbl RSI", overlay=true)

fastLength = input(10)
slowlength = input(22)
MACDLength = input(9)

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = sma(MACD, MACDLength)
delta = MACD - aMACD

fastLength2 = input(21)
slowlength2 = input(45)
MACDLength2 = input(20)

MACD2 = ema(open, fastLength2) - ema(open, slowlength2)
aMACD2 = sma(MACD2, MACDLength2)
delta2 = MACD2 - aMACD2

Length = input(14, minval=1)
Oversold = input(20, minval=1)
Overbought = input(70, minval=1)
xRSI = rsi(open, Length)


if (delta > 0) and (year>2015) and (delta2 > 0) and (xRSI < Overbought)
    strategy.entry("buy", strategy.long, comment="buy")

if (delta < 0) and (year>2015) and (delta2 < 0) and (xRSI > Oversold)
    strategy.entry("sell", strategy.short, comment="sell")

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

더 많은