SMI 에르고딕 오시레이터 모멘텀 거래 전략

저자:차오장, 날짜: 2023-11-01 11:19:18
태그:

img

전반적인 설명

이 전략은 우수한 모멘텀 인덱스 (SMI) 와 에르고딕 라인을 기반으로 트렌드 다음 시스템을 구축하여 빠르고 느린 이동 평균의 조합을 통해 거래 신호를 생성합니다. 그것은 고주파 모멘텀 거래 시스템에 속합니다.

전략 논리

이 전략은 주로 상거래 신호를 구성하기 위해 우수한 모멘텀 인덱스 (SMI) 와 에르고딕 라인을 사용합니다.

SMI는 다른 기간의 두 기하급수적 이동 평균의 차이를 절대 차이로 나누는 것으로 가격 변화 속도를 측정합니다. 그 공식은:

SMI = (빠른 EMA - 느린 EMA) / Abs ((빠른 EMA - 느린 EMA)

여기서 빠른 EMA는 단기 EMA이고 느린 EMA는 장기 EMA입니다.

가격 움직임의 속도를 측정함으로써 SMI는 시장의 트렌드 변화를 결정할 수 있습니다. 0 이상의 크로스는 상승 추세를 나타내고 0 이하의 크로스는 하락 추세를 나타냅니다.

에르고딕 라인은 무역 신호를 생성하는 SMI의 EMA입니다. 에르고딕 라인의 위의 크로스는 구매 신호이며 아래의 크로스는 판매 신호입니다.

SMI와 에르고딕 라인을 결합함으로써 전략은 지연이 없는 트렌드 추적 시스템을 형성하여 고주파의 모멘텀 트레이딩 전략이 됩니다.

장점

  1. 가격 속도에 따라 트렌드 변화에 민감합니다.

  2. 에르고딕 라인은 SMI의 가짜 신호를 필터링하여 신뢰할 수 있는 무역 신호를 형성합니다.

  3. 이중 레일 구조로 생성된 명확한 구매/판매 신호

  4. 트렌드 내에서 빠른 가격 움직임을 포착하기 위해 높은 거래 빈도.

  5. 늦지 않고, 전환점을 적시에 파악할 수 있습니다.

위험성

  1. 셈 시스템으로서 다양한 시장에서 빈번한 스톱 로스에 유연합니다.

  2. 부적절한 이중 레일 설정은 빈번한 신호로 인해 과도한 거래로 이어질 수 있습니다.

  3. 단기 매개 변수 조정이 안되면 과도한 잘못된 신호가 발생할 수 있습니다.

  4. 주요 트렌드 방향을 고려하지 않는 것은 트렌드 반대 거래로 이어질 수 있습니다.

  5. 엄격한 스톱 로스 규칙이 지켜져야 합니다. 그렇지 않으면 손실이 증가할 수 있습니다.

위험을 해결하기 위해 다음과 같은 측면을 최적화 할 수 있습니다.

  1. 잘못된 신호를 줄이기 위해 이중 레일 매개 변수를 최적화합니다.

  2. 트렌드 필터를 추가하여 트렌드 반대 거래를 피합니다.

  3. 단일 거래 손실을 통제하기 위해 스톱 로스 전략을 실행하십시오.

최적화 방향

이 전략은 다음과 같은 측면에서 개선될 수 있습니다.

  1. 최적의 매개 변수 조합을 찾기 위해 빠르고 느린 EMA 매개 변수를 최적화합니다.

  2. 오픈, 높은, 낮은 가격 등과 같은 다른 가격 입력을 테스트합니다.

  3. 기계 학습 알고리즘을 포함해서 자동으로 매개 변수를 최적화할 수 있습니다.

  4. 트렌드 필터를 추가하여 트렌드 반대 거래를 피합니다.

  5. 단일 거래 손실을 엄격하게 통제하기 위해 스톱 로스 전략을 실행하십시오.

  6. 거래 빈도와 수익률을 고려하여 과잉 거래를 방지하십시오.

  7. 최적의 자산을 찾기 위해 다른 제품에서 적용 가능성을 테스트합니다.

  8. 더 포괄적 인 시스템을 구축하기 위해 다른 지표와 조합을 탐구하십시오.

결론

이 전략은 SMI와 에르고딕 라인을 사용하여 지연이없는 트렌드 다음 시스템을 구축하여 이중 레일 구조를 통해 명확한 거래 신호를 생성합니다. 이것은 고주파 운동 트레이딩 전략에 속합니다. 이점은 트렌드 변화를 빠르게 캡처하는 반면 단점은 과잉 거래 및 역 트렌드 트레이드를 포함합니다. 더 견고한 양적 거래 시스템을 구축하기 위해 매개 변수 최적화, 스톱 로스, 트렌드 필터 등을 통해 개선이 가능합니다.


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

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 03/11/2017
// The SMI Ergodic Indicator is the same as the True Strength Index (TSI) developed by 
// William Blau, except the SMI includes a signal line. The SMI uses double moving averages 
// of price minus previous price over 2 time frames. The signal line, which is an EMA of the 
// SMI, is plotted to help trigger trading signals. Adjustable guides are also given to fine 
// tune these signals. The user may change the input (close), method (EMA), period lengths 
// and guide values.
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="SMI Ergodic Oscillator")
fastPeriod = input(4, minval=1)
slowPeriod = input(8, minval=1)
SmthLen = input(3, minval=1)
TopBand = input(0.5, step=0.1)
LowBand = input(-0.5, step=0.1)
reverse = input(false, title="Trade reverse")
// hline(0, color=gray, linestyle=dashed)
// hline(TopBand, color=red, linestyle=line)
// hline(LowBand, color=green, linestyle=line)
xPrice = close
xPrice1 = xPrice - xPrice[1]
xPrice2 = abs(xPrice - xPrice[1])
xSMA_R = ema(ema(xPrice1,fastPeriod),slowPeriod)
xSMA_aR = ema(ema(xPrice2, fastPeriod),slowPeriod)
xSMI = xSMA_R / xSMA_aR
xEMA_SMI = ema(xSMI, SmthLen)
pos = iff(xEMA_SMI < LowBand, -1,
	   iff(xEMA_SMI > TopBand, 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(xSMI, color=green, title="Ergotic SMI")
plot(xEMA_SMI, color=red, title="SigLin")

더 많은