추세 분석 지수를 기반으로 한 양적 거래 전략


생성 날짜: 2023-12-12 10:40:52 마지막으로 수정됨: 2023-12-12 10:40:52
복사: 0 클릭수: 595
avatar of ChaoZhang ChaoZhang
1
집중하다
1621
수행원

추세 분석 지수를 기반으로 한 양적 거래 전략

개요

이 전략의 핵심 아이디어는 이동 평균의 기울기를 사용하여 시장의 흐름을 판단하고 트렌드 분석 지수 (Trend Analysis Index, TAI) 를 거래 신호로 구성하는 것입니다. 가격이 추세에서 작동 할 때 이동 평균의 기울기는 커집니다. 가격이 명확한 추세가없는 범위 내에서 흔들릴 때 이동 평균의 기울기는 작아집니다.

전략 원칙

이 전략은 우선 가격의 간단한 이동 평균을 계산한다 (X일 이동 평균). 그 다음 이동 평균이 지난 Y일 동안의 최고값과 최저값을 계산하고, 이 두 가지 극단값을 통해 이동 평균이 지난 Y일 동안의 변동 범위를 계산한다. 마지막으로, Y일 동안의 변동 범위를 가격과 비교하여 0-1 사이의 표준화 지표를 변환하여 트렌드 분석 지수를 구성한다. 지수가 특정 하락값보다 높을 때 더하고, 특정 하락값보다 낮을 때 공백을 만든다.

우위 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 이동 평균의 기울기를 통해 트렌드 동작을 판단하여 중장선 트렌드를 효과적으로 캡처할 수 있습니다.
  2. 변동 범위 표준화와 함께 지수화 지표를 구축하여 거래 신호를 더 명확하게 만듭니다.
  3. 사용자 정의 이동 평균 변수 및 추세 판단 변수, 다양한 시장 환경에 적응
  4. 선택적 역거래, 다른 전략을 추적하거나 헤지할 수 있습니다.

위험 분석

이 전략에는 위험도 있습니다.

  1. 위키피디아에 따르면,
  2. 이동 평균 파라미터를 잘못 설정하면 트렌드 전환점을 놓칠 수 있습니다.
  3. 표준화 파라미터를 잘못 설정하면 약한 추세를 놓칠 수 있습니다.
  4. 역 거래로 인해 손실이 커질 수 있습니다.

대응방법:

  1. 다른 지표와 결합하여 필터링 신호
  2. 최적화 매개 변수, 최적의 매개 변수 조합
  3. 표준화 변수의 상하단값 조정
  4. 반전 거래 기능을 조심하세요.

최적화 방향

이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.

  1. BOLL 채널과 같은 다른 지표의 추세 판단과 결합하여 거래 신호를 더 신뢰할 수 있도록합니다.
  2. 단편적 손실을 제어하기 위한 손실을 차단하는 전략
  3. 이동 평균의 일 수 변수를 최적화하여 다른 주기에서의 시장 특성에 더 적합하게 만듭니다.
  4. 최적의 표준화 변수를 훈련하고 최적의 변수 값을 찾습니다.
  5. 트렌드를 예측하는 확률을 더하는 기계 학습 모델, 보조 거래

요약하다

이 전략은 전체적으로 이동 평균 기울기를 통해 트렌드를 판단하는 중장선 전략으로, 트렌드를 효과적으로 포착할 수 있지만, 또한 약간의 가짜 신호 위험이 있다. 다른 지표 조합과 함께 사용, 중지 손실, 변수 최적화 등의 수단으로 전략을 더 안정적으로 신뢰할 수 있다. 본질적으로 여전히 비교적 간단한 트렌드 추적 전략이다.

전략 소스 코드
//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 21/12/2017
// In essence, it is simply the standard deviation of the last x bars of a 
// y-bar moving average. Thus, the TAI is a simple trend indicator when prices 
// trend with authority, the slope of the moving average increases, and when 
// prices meander in a trendless range, the slope of the moving average decreases.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Trend Analysis Index", shorttitle="TAI")
AvgLen = input(28, minval=1)
TAILen = input(5, minval=1)
TopBand = input(0.11, step=0.01)
LowBand = input(0.02, step=0.01)
reverse = input(false, title="Trade reverse")
hline(TopBand, color=red, linestyle=line)
hline(LowBand, color=green, linestyle=line)
xPrice = close
xSMA = sma(xPrice, AvgLen)
xHH = highest(xSMA, TAILen)
xLL = lowest(xSMA, TAILen)
nRes = (xHH - xLL) * 100 / xPrice
pos = iff(nRes > TopBand, 1,
       iff(nRes < LowBand, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(nRes, color=blue, title="TAI")