크로스오버 EMA 단기 거래 전략

저자:차오장, 날짜: 2024-01-29 10:01:10
태그:

img

전반적인 설명

이 전략은 짧은 기간 동안 이동 평균 라인의 황금 교차를 사용하여 구매 및 판매 신호를 생성하는 단기 거래 전략이다. 이 전략은 거래 신호로 서로 다른 기간을 가진 두 개의 기하급수적인 이동 평균 (EMA) 라인을 사용합니다. 짧은 기간 EMA 라인이 긴 기간 EMA 라인의 위를 넘을 때 황금 교차가 형성되고 구매 신호가 유발됩니다. 짧은 기간 EMA가 긴 기간 EMA 아래를 넘을 때 죽음의 교차가 발생하고 판매 신호가 생성됩니다.

전략 논리

이 전략의 핵심 논리는 두 개의 EMA 라인을 계산하는 것입니다. 하나는 55 기간 단기 EMA, 다른 하나는 34 기간 장기 EMA입니다. 단기 EMA가 장기 EMA를 넘을 때, 가격 상승 추세가 발생했다고 믿어지고, 따라서 구매 신호가 유발됩니다. 단기 EMA가 장기 EMA를 넘을 때, 그것은 가격 하락 추세로 간주되므로 판매 신호가 생성됩니다.

코드에서는 두 개의 EMA 매개 변수를 먼저 입력하여 두 개의 EMA 라인을 계산합니다. 구매 또는 판매 신호가 발생하면 그에 따른 표시가 그래프화됩니다. 한편, 두 EMA 라인은 직관적인 트렌드 판단을 위해 촛불 차트에 그래프화됩니다.

장점

  1. 조작이 간단하고 이해하기 쉬우며 초보자도 사용할 수 있습니다.
  2. 민감한 반응, 단기적인 거래, 빠른 이익
  3. EMA를 사용하면 비정상적인 가격 변동을 효과적으로 필터링하고 신뢰할 수있는 신호를 생성 할 수 있습니다.
  4. 사용자 정의 가능한 EMA 매개 변수, 최적화 가능한 전략
  5. 다양한 제품에 적용됩니다.

위험 과 해결책

  1. 빈번한 거래는 비용과 미끄러짐 위험을 증가시킬 수 있습니다. EMA 주기의 매개 변수를 적절하게 조정하면 너무 빈번한 신호를 필터링하는 데 도움이됩니다.
  2. 특정 시간 지연이 존재하며, 초기 기회를 놓칠 수도 있습니다. BOLL와 같은 다른 지표는 판단을 보완하는 데 도움이 될 수 있습니다.
  3. 잘못된 EMA 매개 변수 설정은 잘못된 거래 신호로 이어질 수 있습니다. 적절한 백테스팅과 매개 변수 최적화가 필요합니다.

최적화

  1. 더 많은 지표, 예를 들어 BOLL, MACD를 포함하여 잘못된 신호를 피하기 위해 임계 조건을 설정합니다.
  2. 위치 크기를 조절하는 모듈을 추가하여 위험을 더 잘 제어합니다.
  3. 다양한 제품과 사이클 차이에 따라 적응 가능한 EMA 조정 메커니즘을 설계하십시오.
  4. 거래당 손실을 효과적으로 제한하기 위해 스톱 로스 전략을 사용하십시오.

요약

일반적으로, 이것은 매우 간단하고 실용적인 단기 거래 전략이며, 특히 초보자가 사용하기 쉽고 상당한 효과로 학습하고 채택하기에 적합합니다. 매개 변수가 다른 판단 도구의 보완으로 지속적으로 최적화 될 때까지 전략은 점점 더 견고해질 것입니다. 기본 아이디어는 높은 가치를 가지고 있으며 앞으로 더 많은 연구를 받아야합니다.


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

//@version=5
strategy("mohammad tork strategy", overlay=true)

// Input parameters
lengthShortEMA = input(55, title="Short EMA Length")
lengthLongEMA = input(34, title="Long EMA Length")

// Calculate EMAs
emaShort = ta.ema(close, lengthShortEMA)
emaLong = ta.ema(close, lengthLongEMA)

// Conditions for Long Signal
longCondition = ta.crossover(emaLong, emaShort)

// Conditions for Short Signal
shortCondition = ta.crossunder(emaLong, emaShort)

// Execute Long Signal
strategy.entry("Long", strategy.long, when = longCondition)

// Execute Short Signal
strategy.entry("Short", strategy.short, when = shortCondition)

// Plot EMAs on the chart
plot(emaShort, color=color.blue, title="Short EMA")
plot(emaLong, color=color.red, title="Long EMA")

// Plot Long Signal Icon with Buy Label
plotshape(series=longCondition, title="Long Signal", color=color.green, style=shape.triangleup, location=location.abovebar, size=size.small, text="Buy")

// Plot Short Signal Icon with Sell Label
plotshape(series=shortCondition, title="Short Signal", color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small, text="Sell")


더 많은