다중 시간 프레임 이동 평균과 RSI를 기반으로 한 추세 추종 전략


생성 날짜: 2024-01-08 16:57:29 마지막으로 수정됨: 2024-01-08 16:57:29
복사: 0 클릭수: 608
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

다중 시간 프레임 이동 평균과 RSI를 기반으로 한 추세 추종 전략

개요

이 전략은 다중 시간 프레임 이동 평균을 기반으로 트렌드 방향을 식별하고 상대 강도 지수 ((RSI) 와 결합하여 과매매를 판단하여 거래 신호를 생성합니다. 긴 라인, 중간 라인, 짧은 라인의 빠른 느린 평균이 같은 방향으로있을 때, 트렌드가 형성되었다고 생각되며, 이 때 RSI를 통해 과매를 판단하고 거래를 생성합니다. 신호 또한, 전략은 손실을 추적하여 위험을 제어합니다.

전략 원칙

기본 원칙은 빠른 선에서 느린 선을 통과하면 황금 교차로, 느린 선을 통과하면 황금 교차로, 황금 시장이 다가오고 있음을 나타냅니다. 빠른 선 아래의 느린 선을 통과하면 사망 교차로, 곰 시장이 다가오고 있음을 나타냅니다. 이 전략은 다른 시간 프레임에 대한 기본 원칙을 사용하여 긴, 중간, 짧은 세 개의 주기 동향이 있는지 여부를 판단합니다. 다중 시장 또는 공백 시장이라면 거래 신호가 발생한다. 또한 RSI 지표는 시장 전환점에서 상쇄를 놓치지 않도록 과매 또는 과매 상태인지 여부를 판단합니다.

우위 분석

  1. 다중 시간 프레임을 사용하여 트렌드를 판단하여 단기 시장 소음을 효과적으로 필터링하여 중장기 트렌드를 식별 할 수 있습니다.

  2. RSI 지표는 오버 바이 오버 소드를 판단하여 시장 전환점 이후에도 원래의 방향을 유지하여 스톱 로스를 놓치지 않도록합니다.

  3. 손실을 추적하면서 수익을 확대하고 위험을 통제하고 수익의 위험은 더 높습니다.

위험 분석

  1. 다중 시간 프레임 판단은 시간 지연이 있을 수 있으며, 입학이 늦어지고, 초기 단계가 놓칠 수 있다.

  2. RSI 지표는 오버 바이 오버 셀 상황을 판단하는데, 시장이 돌풍을 일으키면 시장의 전환점을 잘 판단할 수 없다.

  3. 트래킹 스톱포인트 설정이 잘못되어 너무 급진적이거나 너무 보수적이어서 변수를 조정해야 합니다.

최적화 방향

  1. 시장의 전환점을 판단하는 더 많은 지표와 결합하는 것을 고려할 수 있습니다. 예를 들어, 브린 띠, KDJ 등이 거래 신호를 더 정확하게 만듭니다.

  2. 동적으로 추적되는 스톱로드를 설정할 수 있으며, 시장의 변동성과 위험 선호도에 따라 이동 후 포인트를 조정할 수 있다.

  3. 더 짧은 기간의 시간 프레임 워크에서 비슷한 전략을 도입할 수 있습니다. 투자 수입과 출입을 판단하여 투자 사용 효율성을 최적화 할 수 있습니다.

요약하다

이 전략은 전체적으로 장점은 약점보다 크며, 중장선 트렌드를 정확하게 판단하고, 수익 위험 비율이 높으며, 실장 검증 및 최적화 조정할 가치가 있다. 하나의 트렌드 추적 전략으로서, 그것은 충격적인 상황에서 주요 트렌드 방향을 식별하고, 중장선 트렌드를 효율적으로 추적할 수 있다. 매개 변수 조정 및 지표 최적화를 통해 전략의 안정성과 수익성을 더욱 향상시킬 수 있다.

전략 소스 코드
/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Cryptocurrency Trading Tools by XMAXPRO
//ATA INDIKATORU
//Test 4.0v Tarih:23.02.2020
//

strategy("MTF+MA+RSI+TSL", overlay=false, shorttitle="ATA v4 Strategy")
src = input(title="kaynak", type=input.source, defval=close)
fast = input(title="hızlıbarlar", type=input.integer, defval=21)
slow = input(title="yavaşbarlar", type=input.integer, defval=34)

//MTF source
long = input(title="uzunvade", type=input.resolution, defval="240")
mid = input(title="ortavade", type=input.resolution, defval="60")
short = input(title="kısavade", type=input.resolution, defval="5")

//MTF Grafikleri
ln = security(syminfo.ticker, long, src)
md = security(syminfo.ticker, mid, src)
sh = security(syminfo.ticker, short, src)

//0
lnma = ema(ln, fast) - ema(ln, slow)
mdma = ema(sh, fast) - ema(md, slow)
shma = ema(sh, fast) - ema(sh, slow)

//Makeup
uzunrenk = lnma > 0 ? color.white : color.red
ortarenk = mdma > 0 ? color.white : color.red
kisarenk = shma > 0 ? color.white : color.red

l1 = 1
m1 = 2
s1 = 3

plot(l1, style=plot.style_line, color=uzunrenk, linewidth=25)
plot(m1, style=plot.style_line, color=ortarenk, linewidth=25)
plot(s1, style=plot.style_line, color=kisarenk, linewidth=25)

atarsi = rsi(close, 14)
rsiob = input(title="aşırıalım", type=input.integer, defval=60)
rsios = input(title="aşırısatış", type=input.integer, defval=25)

sell = atarsi > rsiob and lnma > 0 and mdma > 0 and shma > 0
buy = atarsi < rsios and lnma < 0 and mdma < 0 and shma < 0

barcolor(sell ? color.white : color.red)
barcolor(buy ? color.white : color.red)

//strateji
strategy.entry("long", strategy.long, comment = "BULL", when = sell)
strategy.entry("short", strategy.short, comment = "BEAR", when = buy)

//kompleks alarm
//alertcondition(sell, title = "ATA LONG SIGNAL", message = "btc/usd ata long sinyali")
//alertcondition(buy, title = "ATA SHORT SIGNAL", message = "btc/usd ata short sinyali")

//iz sürücü TSL
strategy.exit ("Bull TSL", "long", trail_points=close * 0.02 / syminfo.mintick, trail_offset=close * 0.02/syminfo.mintick)
strategy.exit ("Bear TSL", "short", trail_points=close * 0.02 / syminfo.mintick, trail_offset=close * 0.02/syminfo.mintick)