부피비율 역전 거래 전략

저자:차오장, 날짜: 2024-01-12 12:08:05
태그:

img

전반적인 설명

볼륨 비율 반전 거래 전략 (Volume Ratio Reversal Trading Strategy, VR Reversal Strategy) 은 볼륨 지표에 기반한 단기 반전 거래 전략이다. 거래 신호를 생성하기 위해 일정 기간 동안 볼륨과 평균 볼륨의 비율을 계산하여 주요 플레이어의 시장 참여를 판단합니다. 이 전략은 주로 단기적으로 강력한 평균 반전 자산에 적합합니다.

전략 논리

VR 역전 전략의 핵심 지표는 현재 기간의 거래량과 일정 기간 동안의 평균 거래량 사이의 비율을 나타내는 볼륨 비율 (단기적으로 VR로 지칭) 이다. 구체적인 계산 방법은:

VR = 전류 부피 / SMA (부피, N)

N는 매개 변수 Length를 뜻하는 경우, 현재 주기의 거래 부피를 Length 주기에 대한 거래 부피의 단순한 이동 평균에 나누는 값입니다.

VR > 임계점, 그것은 주요 플레이어의 참여 신호로 간주됩니다. 이 때, 가격 상승 또는 하락의 돌파와 결합하여 구매 및 판매 신호가 생성됩니다.

이 전략은 또한 보조 방향 판단 지표 dir를 도입합니다. 현재 주기의 종료 가격을 N 주기의 종료 가격과 비교합니다. 1 이상은 상승 방향이며 1 이하는 하락 방향입니다.

VR가 지정된 임계값보다 크면, dir=1이면 구매 신호가 생성됩니다. dir=-1이면 판매 신호가 생성됩니다.

장점

VR 역전 전략의 가장 큰 장점은 갑작스러운 가격 역전 가능성을 포착하는 것입니다. 주요 플레이어의 개입 신호가있을 때 전략은 신속하게 판단을 내릴 수 있으며 리바운드 또는 리트랙의 기회를 적시에 포착 할 수 있습니다.

다른 장점으로는 다음과 같습니다.

  • 부피 지표를 사용 하 여 주요 플레이어에 대한 판단은 비교적 신뢰할 수 있습니다.
  • 간단한 알고리즘, 이해하기 쉽고 구현하기 쉽다
  • 유연한 구성 매개 변수, 더 나은 적응력

위험성

VR 역전 전략은 몇 가지 장점을 가지고 있지만, 여전히 몇 가지 위험이 있습니다.

  • 단기 전략으로서, 변동적인 수익 곡선과 함께 약간의 무작위성이 있습니다.
  • VR 지표가 주요 플레이어를 정확하게 결정하지 못할 수 있습니다.
  • 적절한 기본 상품 을 선택 해야 합니다. 변동 이 가벼우면 효과 가 떨어집니다.

또한, 과도한 거래는 피해야 하며, 단 한번의 손실을 통제하기 위해 스톱 로스를 설정해야 합니다.

최적화 제안

VR 역전 전략의 더 많은 최적화를 위한 여지가 있습니다. 주요 제안은 다음과 같습니다.

  • VR 실패를 피하기 위해 판단을 위해 더 많은 지표를 결합
  • 중지 손실 논리를 추가, 중지 손실 범위를 설정하는 ATR 표시기를 참조할 수 있습니다
  • 매개 변수를 최적화, 특히 다른 사이클 및 제품에 대한 주기의 길이 매개 변수
  • 안정성을 보장하기 위해 백테스트 결과에 기초하여 긍정 및 부정 VR의 문턱을 조정합니다.

결론

VR 반전 거래 전략은 간단하고 구현하기 쉬운 단기 정량 전략입니다. 주요 플레이어의 신호를 잡음으로써 반전 기회를 포착합니다. 전략은 특히 명백한 반전과 함께 변동적인 제품에 적합하지만 위험 통제도 필요합니다. 추가 최적화는 전략을 더 견고하게하고 더 많은 잘못된 신호를 필터링 할 수 있습니다.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

strategy(title="Volume Ratio_30min", shorttitle="VR_30min")//,initial_capital=1000)

// User Input ------------------------------------------------------------------
len = input(20, title="Length", minval=1)
threshold  = input(3,step=0.05, title="閾値")

// Volume Caliculetion ---------------------------------------------------------
vol = volume
sma=sma(volume,len)
vrs = vol / sma

// Direction -------------------------------------------------------------------
dirtime=input(1,"direction picker # bars")
dir=if close/close[dirtime] > 1
    1
else
    -1

// Plot ------------------------------------------------------------------------
plot(vrs, title="VRS",  color=color.green, transp=0)
hline(1, title="baseline")
plot(threshold, color=color.white)

// ️⚠️⚠️Logic -----------------------------------------------------------------

long    = vrs > threshold  and dir == 1
short   = vrs > threshold  and dir ==-1

// Back Test Fnction -----------------------------------------------------------
start = timestamp(input(2019, "Start Year"), input(1, "Start Month"), input(1, "Start Day"), 0, 0)
end = timestamp(input(9999, "End Year"), input(1, "End Month"), input(1, "End Day"), 0, 0)
_testPeriod() => true

// Order -----------------------------------------------------------------------
if _testPeriod()
    if long
        strategy.entry("Long", strategy.long)
    if short
        strategy.entry("Short", strategy.short)


더 많은