다양한 기간을 기반으로 한 이동 평균 교차 전략


생성 날짜: 2023-12-19 13:34:30 마지막으로 수정됨: 2023-12-19 13:34:30
복사: 0 클릭수: 694
avatar of ChaoZhang ChaoZhang
1
집중하다
1621
수행원

다양한 기간을 기반으로 한 이동 평균 교차 전략

개요

평균선 교차전략은 다른 주기의 지수 이동 평균 ((EMA) 을 사용하여 거래 신호를 생성하는 양적 거래 전략이다. 이 전략은 5주기, 9주기 및 21주기 EMA의 세 가지 EMA의 교차 상황을 사용하여 시장 추세를 판단하고 구매 및 판매 신호를 생성한다. 이 전략은 또한 더 긴 주기의 100주기 및 200주기 EMA를 결합하여 큰 추세를 판단한다.

전략 원칙

이 전략의 핵심 지표는 5주기, 9주기, 21주기 세 개의 EMA이다. 그것의 거래 논리는 다음과 같은 점들에 기초한다:

  1. 5주기 EMA의 상위 돌파는 9주기 EMA를 넘어서면 구매 신호를 생성한다. 5주기 EMA의 상하 돌파는 9주기 EMA를 넘어서면 판매 신호를 생성한다.

  2. 21주기 EMA는 거래 신호를 검증하는 데 사용할 수 있습니다. 즉, 5주기 EMA와 9주기 EMA가 21주기 EMA보다 높으면 구매 신호가 더 효과적입니다. 둘 다 21주기 EMA보다 낮으면 판매 신호가 더 효과적입니다.

  3. 100주기 EMA와 200주기 EMA는 시장의 중·장기 경향을 판단하는 데 사용됩니다. 그들은 단기 거래 신호에 큰 경향에 대한 검증 또는 경고를 제공합니다.

우위 분석

이 전략에는 다음과 같은 장점이 있습니다.

  1. 조작이 간단하고 실행이 쉽죠. EMA의 계산과 교차 상황을 판단하는 것은 매우 간단합니다.

  2. 시장 반응에 민감하다. 5주기 및 9주기 EMA는 가격 변화에 매우 민감하며, 단기 경향을 빠르게 포착할 수 있다.

  3. 손해 차단기를 쉽게 설정할 수 있다. EMA 자체는 모바일 손해 차단기로 사용될 수 있다.

  4. 확장성이 좋다. 다른 주기적 EMA 또는 기술 지표를 쉽게 도입하여 시스템을 풍요롭게 할 수 있다.

위험 분석

이 전략에는 다음과 같은 주요 위험도 있습니다.

  1. 가짜 신호 위험. EMA 교차는 100% 신뢰성이 없으며, 가짜 돌파구가 발생할 수 있습니다. 다른 요소와 함께 신중하게 판단해야합니다.

  2. 트렌드 반전의 위험. 빠른 EMA 교차는 단기 조정만을 반영하여 큰 트렌드 반전을 무시할 수 있습니다. 중기 및 장기 EMA를 참조하십시오.

  3. 파라미터 튜닝 위험. 다양한 품종과 시장 조건에 따라 파라미터 설정이 크게 다를 수 있으므로 충분히 최적화 및 테스트가 필요합니다.

최적화 방향

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

  1. KD, MACD 등과 같은 다른 지표 필터 신호를 도입하여 거짓 신호의 가능성을 줄인다.

  2. 트레일링 스톱 (trailing stop) 또는 트레일링 스톱 (trailing stop) 은 트레일링 스톱을 사용하여 수익을 고정하는 방식이다.

  3. 매개 변수를 최적화하여 최적의 주기 매개 변수 조합을 찾는다. 또한 기계 학습 방법을 사용하여 동적으로 최적화한다.

  4. 수량화 프레임워크와 결합하여 전체 거래 프로세스를 자동화하십시오.

요약하다

이 평선 교차 전략의 전체적인 아이디어는 명확하고, 조작이 용이하며, 단기 동향을 효과적으로 포착할 수 있다. 그러나 단지 EMA 교차 의사결정에 의존하는 것은 여전히 특정 맹 영역이 있으며, 다른 요소가 의사결정에 보조되어야 하며, 위험을 줄일 수 있다. 이 전략의 최적화 공간은 넓고, 더 많은 지표 또는 기술 수단을 도입하여 전략 내용을 풍부하게하고, 안정적인 수익성을 향상시킬 수 있다.

전략 소스 코드
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © nagversion

//@version=5
strategy("5/9/21 EMA Strategy with 200 and 100 EMA", overlay=true)

// Calculate EMAs
ema5 = ta.ema(close, 5)
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)
ema100 = ta.ema(close, 100)
ema200 = ta.ema(close, 200)

// Plot EMAs
plot(ema5, title="5 EMA", color=color.blue)
plot(ema9, title="9 EMA", color=color.yellow)
plot(ema21, title="21 EMA", color=color.red)
plot(ema100, title="100 EMA", color=color.purple)
plot(ema200, title="200 EMA", color=color.green)

// Strategy conditions
longCondition = ta.crossover(ema5, ema9) and ta.crossover(ema9, ema21)
shortCondition = ta.crossunder(ema5, ema9) and ta.crossunder(ema9, ema21)

if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

// Set strategy properties if required (like stop loss, take profit, etc.)