이동 평균 추적 거래 전략


생성 날짜: 2023-10-24 14:39:08 마지막으로 수정됨: 2023-10-24 14:39:08
복사: 0 클릭수: 665
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

이동 평균 추적 거래 전략

개요

이 전략은 이동 평균선을 추적하여 MACD 지표 필터링과 결합하여 거래 결정을 내립니다. 빠른 이동 평균선 위에 느린 이동 평균선을 통과할 때 더 많이 하고, 빠른 이동 평균선 아래에 느린 이동 평균선을 통과할 때 공백을 만들며, MACD 지표는 가짜 돌파구를 필터링하는 데 사용할 수 있습니다.

전략 원칙

이 전략은 다음과 같은 원칙에 기초하고 있습니다.

  1. Heikin Ashi 필터링은 시장의 소음을 필터링하여 트렌드를 식별합니다.

  2. 빠르게 움직이는 평균선에서 천천히 움직이는 평균선을 통과하는 것은 가격이 상승 추세로 들어간다는 것을 의미하며, 더 많은 것을 만듭니다. 하향을 통과하는 것은 하향 추세로 들어간다는 것을 의미하며, 공백을 만듭니다.

  3. MACD 지표는 가격 트렌드를 식별하고 가짜 브레이크를 필터링하는 데 사용할 수 있습니다. MACD 직사각형이 0보다 크면 다면 시장이며 0보다 작으면 공백 시장입니다.

  4. 구체적으로, 이 전략은 먼저 Heikin Ashi 도표의 개시 가격과 종료 가격을 계산한다. 그리고 빠른 EMA의 평균선과 느린 EMA의 평균선을 계산한다. 빠른 EMA에서 느린 EMA를 통과할 때 더 많이 하고, 낮은 EMA를 통과할 때 공백을 한다. 동시에 MACD 지표의 교묘한 가짜 돌파 신호와 결합한다.

전략적 이점

  1. 하이킨 아시 (Heikin Ashi) 필터링을 사용하여 노이즈를 필터링하여 트렌드 방향을 판단할 수 있습니다.

  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. 단편적 손실을 통제하기 위한 Stop Loss 전략이 추가되었습니다.

요약하다

이 전략의 전체적인 아이디어는 명확하고 이해하기 쉽다. MACD 지표 필터링과 결합된 빠른 EMA를 통해 더 나은 거래 신호를 얻을 수 있다. 그러나 일정한 체계적인 위험이 존재하며, 파라미터 최적화와 위험 제어가 필요하다. 이 전략은 디지털 통화의 높은 변동성 행태에 적합하지만, 안정적인 수익을 유지하기 위해 주기적으로 최적화 업데이트가 필요하다.

전략 소스 코드
/*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)