상대량 지표 전략

저자:차오장, 날짜: 2023-12-20 15:12:56
태그:

img

전략 개요

이 전략은 상대적 강도 지수 (RSI) 와 상대적 부피 지표를 기반으로 하는 양적 거래 전략입니다. 이 전략은 강한 트렌드의 가장 빠른 단계를 거래함으로써 과도한 수익을 확보하는 것을 목표로합니다.

전략 논리

이 전략은 상대적 강도 지수 (RSI) 와 상대적 부피 (RVOL) 를 두 가지 지표로 통합한다. RSI는 과잉 구매/ 과잉 판매 수준을 판단한다. RSI 30 이하는 과잉 판매를 제안하고 RSI 70 이상은 과잉 구매를 제안한다. RVOL은 최근 평균에 비해 부피의 급증을 포착한다. RVOL이 한 임계 이상의 경우 강한 구매/ 판매 압력을 나타낸다.

전략 논리는: RSI가 과소매 (최고) 를 표시하고 RVOL가 상승할 때 긴 거리로 이동; RSI가 과소매 (최고) 를 표시하고 RVOL이 상승할 때 짧은 거리로 이동. RSI가 정상 수준으로 돌아온 후에 출구 신호가 발생합니다 (장출: RSI 69 이하; 짧은 출구: RSI 31 이상).

이점 분석

이 전략의 가장 큰 이점은 RSI의 과잉 구매/ 과잉 판매 신호와 높은 상대 부피 신호를 결합하여 트렌드의 가장 공격적인 부분을 찾아내는 것입니다. RSI와 RVOL의 컴보 신호를 사용하면 많은 잘못된 브레이크를 피하고 수익성을 향상시킬 수 있습니다.

RSI만 사용하는 것과 비교하면 이 전략은 유동성 부족으로 시장에 진입하는 것을 피하기 위해 부피 정보를 포함합니다. 브레이크아웃만 사용하는 것과 비교하면 이 전략은 OB/OS 지역에서 주요 추세에 반하는 거래를 방지합니다.

위험 분석

이 전략의 가장 큰 위험은 RSI가 잘못된 신호를 주는 가능성이다. 시장이 범위가 있을 때, RSI는 OB/OS 구역의 출입/출입을 자주 가로질러 가짜 신호를 생성할 수 있다. 또한, 이 전략은 부피 변화에 민감하다. 유동성이 낮은 도구는 수익성을 할인할 수 있다.

위험을 완화하기 위해 RSI의 매개 변수를 조정할 수 있습니다. 평균 기간을 늘리거나 RVOL의 문턱을 높이는 것과 같이. 다른 지표를 결합하면 안정성도 향상됩니다.

최적화 방향

잠재적인 최적화는 다음과 같습니다.

  1. 유동성 없는 기구를 피하기 위해 유동성 측정값을 추가합니다.

  2. 거래에 변동성 메트릭을 추가하면 변동성 확장이 있을 때만

  3. 가짜 파급을 방지하기 위한 메커니즘을 구축합니다. 예를 들어, 모니터링 볼륨.

  4. 스톱 로드를 더 엄격하게 하고, 드라운드를 제한합니다.

  5. 최적의 설정을 찾기 위해 백테스트에 기반한 매개 변수 조정

결론

상대적 볼륨 전략은 RSI와 상대적 볼륨을 통합하여 OB/OS 영역 내에서 급증하는 볼륨의 지점을 찾아내는 데 성공하여 효과적인 트렌드 포착 전략으로 자리잡습니다. 명확한 논리와 강력한 최적화로 양적 거래 시스템에 귀중한 추가가 될 수 있습니다.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gary_trades
//This script is a basic concept to catch breakout moves utilising a spike in relative volume when the RSI is high (for longs) or when the RSI is low (for shorts).
//Drawdown is typically low as it exits out of the trade once the RSI returns back to "normal levels".

//@version=4
strategy(title="Relative Volume & RSI Pop", shorttitle="VOL & RSI Pop", overlay=false, precision=2, margin_long=100, margin_short=100)

//RSI
RSIlength = input(14, title="RSI Period")
RSItop = input(70, title="RSI buy", minval= 69, maxval=100)
RSIbottom = input(35, title="RSI short", minval= 0, maxval=35)
price = close
vrsi = rsi(price, RSIlength)
RSIco = crossover(vrsi, RSItop)
RSIcu = crossunder(vrsi, RSIbottom)
plot(vrsi, "RSI", color=color.purple)
band1 = hline(70, "Upper Band", color=#C0C0C0)
bandm = hline(50, "Middle Band", color=color.new(#C0C0C0, 50))
band0 = hline(30, "Lower Band", color=#C0C0C0)
fill(band1, band0, color=color.purple, transp=90, title="Background")

//RELATIVE VOLUME
RVOLlen = input(14, minval=1, title="RV Period")
av = sma(volume, RVOLlen)
RVOL = volume / av
RVOLthreshold = input(1.5,title="RV Threshold", minval=0.5, maxval=10)

//TRADE TRIGGERS
LongCondition = RSIco and RVOL > RVOLthreshold
CloseLong = vrsi < 69

ShortCondition = RSIcu and RVOL > RVOLthreshold
CloseShort = vrsi > 35

if (LongCondition)
    strategy.entry("Long", strategy.long)
    
strategy.close("Long", when = CloseLong)    

if (ShortCondition)
    strategy.entry("Short", strategy.short)
    
strategy.close("Short", when = CloseShort)   


더 많은