이동 평균 추적 거래 전략

저자:차오장, 날짜: 2023-10-24 14:39:08
태그:

img

전반적인 설명

이 전략은 트레이드 의사결정을 위해 MACD 지표 필터링과 결합한 이동 평균 추적을 기반으로합니다. 빠른 이동 평균이 느린 이동 평균보다 높을 때 길게 이동하고 빠른 MA가 느린 MA보다 낮을 때 짧게 이동합니다. 한편 MACD 지표는 잘못된 브레이크오프를 필터링하는 데 사용할 수 있습니다.

전략 논리

이 전략은 주로 다음과 같은 원칙에 기초합니다.

  1. 하이킨 아시 촛불을 사용하면 시장 소음을 필터하고 트렌드를 식별할 수 있습니다.

  2. 느린 MA보다 빠른 MA가 넘어가면 상승 추세를 나타내고, 길게 갈 것이고, 아래로 넘어가면 하락 추세를 나타내고, 짧게 갈 것입니다.

  3. MACD 지표는 가격 트렌드를 식별하고 잘못된 브레이크오프를 필터할 수 있습니다. 0 이상의 MACD 히스토그램은 상승 시장을 나타냅니다. 0 이하는 하락 시장을 나타냅니다.

  4. 특히, 전략은 먼저 하이킨 아시 촛불의 오픈 및 클로즈 가격을 계산합니다. 다음으로 빠른 EMA와 느린 EMA 라인을 계산합니다. 빠른 EMA가 느린 EMA를 넘을 때 길고 빠른 EMA가 느린 EMA를 넘을 때 짧습니다. MACD 지표는 잘못된 브레이크 아웃 신호를 필터하는 데 사용됩니다.

장점

  1. 하이킨 아시 촛불은 소음을 필터하고 트렌드 방향을 결정하는 데 도움이 됩니다.

  2. 빠르고 느린 EMA 크로스 시스템은 트렌드를 따르는 성숙한 거래 전략입니다.

  3. MACD 필터는 가짜 브레이크오웃을 줄임으로써 더 정확한 거래 신호를 제공합니다.

  4. 이 전략은 EMA 기간, MACD 매개 변수 등을 조정함으로써 많은 최적화 공간을 가지고 있습니다.

  5. 단순하고 직관적인 전략 논리, 이해하기 쉽고 구현하기 쉬운, 매우 변동적인 암호화 시장에 적합합니다.

위험성

  1. 이 전략은 근본적인 분석 없이 기술 지표에만 의존하고 주요 뉴스 이벤트를 놓치고 손실을 초래할 수 있습니다.

  2. 부적절한 EMA 기간 설정은 과도한 잘못된 신호와 손실을 유발할 수 있습니다.

  3. MACD 필터는 매개 변수 조정에 달려 있습니다. 부적절한 설정은 잘못된 브레이크를 효과적으로 필터하지 않을 수 있습니다.

  4. 급격한 가격 상승은 스톱 로드를 타격하고 큰 손실을 초래할 수 있습니다.

  5. 변동적인 시장에서 적절한 스톱 로스를 설정하기 어렵고 손실 증폭 위험이 있습니다.

최적화

  1. 최적의 조합을 찾기 위해 EMA 기간 매개 변수를 최적화합니다.

  2. 트렌드 식별 능력을 향상시키기 위해 MACD 매개 변수를 최적화하십시오.

  3. RSI, KD 등과 같은 다른 기술적 지표를 신호 필터에 추가합니다.

  4. 트렌드 라인, 지원/저항 수준 등을 기반으로 거래 범위를 결정합니다.

  5. 다른 암호화 특성에 따라 매개 변수를 조정합니다.

  6. 단일 거래 손실 금액을 제어하기 위해 스톱 로스 전략을 추가합니다.

요약

이 전략은 명확하고 이해하기 쉬운 논리를 가지고 있다. 거래 신호는 빠른 / 느린 EMA 크로스 및 MACD 필터에서 얻을 수 있다. 그러나 매개 변수 최적화와 리스크 관리가 필요한 고유한 시스템 위험이 있다. 이 전략은 매우 변동적인 암호화 시장에 적합하지만 안정적인 이익을 위해 정기적인 업데이트가 필요하다. 지속적인 개선으로, 전략에 따른 안정적인 수익성있는 트렌드로 변할 가능성이 있다.


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

//@version=4
//Heikin Ashi Strategy  V3 by breizh29

// strategy("Heikin Ashi Strategy  V3",shorttitle="HAS V3",overlay=true,default_qty_value=100,initial_capital=100,currency=currency.EUR) 
res = input(title="Heikin Ashi Candle Time Frame",  defval="30")
hshift = input(1,title="Heikin Ashi Candle Time Frame Shift")
res1 = input(title="Heikin Ashi EMA Time Frame",  defval="180")
mhshift = input(0,title="Heikin Ashi EMA Time Frame Shift")
fama = input(1,"Heikin Ashi EMA Period")
test = input(1,"Heikin Ashi EMA Shift")
sloma = input(10,"Slow EMA Period")
slomas = input(1,"Slow EMA Shift")
macdf = input(false,title="With MACD filter")
res2 = input(title="MACD Time Frame",  defval="12")
macds = input(1,title="MACD Shift")




//Heikin Ashi Open/Close Price
ha_t = heikinashi(syminfo.tickerid)
ha_open = security(ha_t, res, open[hshift])
ha_close = security(ha_t, res, close[hshift])
mha_close = security(ha_t, res1, close[mhshift])

//macd
[macdLine, signalLine, histLine] = macd(close, 12, 26, 9)
macdl = security(ha_t,res2,macdLine[macds])
macdsl= security(ha_t,res2,signalLine[macds])

//Moving Average
fma = ema(mha_close[test],fama)
sma = ema(ha_close[slomas],sloma)
plot(fma,title="MA",color=lime,linewidth=2,style=line)
plot(sma,title="SMA",color=red,linewidth=2,style=line)


//Strategy
golong =  crossover(fma,sma) and (macdl > macdsl or macdf == false )
goshort =   crossunder(fma,sma) and (macdl < macdsl or macdf == false )


strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)

더 많은