EMA, MACD 및 4번째 캔들 확장을 이용한 1-2-3 패턴의 양적 거래 전략


생성 날짜: 2024-03-08 15:03:15 마지막으로 수정됨: 2024-03-08 15:03:15
복사: 0 클릭수: 832
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

EMA, MACD 및 4번째 캔들 확장을 이용한 1-2-3 패턴의 양적 거래 전략

개요

파인 스크립트를 기반으로 작성된 이 전략은 1-2-3 형태를 통해 지수 이동 평균 ((EMA) 과 이동 평균 수렴 분산 (MACD) 지표의 부가 조건과 결합하여 잠재적인 매수 신호를 식별하기 위해 고안되었습니다. 이 전략은 가격 형태, 트렌드 확인 및 동력 지표를 사용하여 전체적인 거래 신호를 제공합니다.

전략 원칙

이 전략의 핵심은 1-2-3 형태를 식별하는 것입니다. 이것은 3 개의 연속적인 선으로 구성된 일반적인 가격 형태이며, 잠재적인 트렌드 반전을 나타냅니다. 구매 신호의 경우, 첫 번째 선 종료 가격이 개시 가격보다 높고, 두 번째 선 종료 가격이 개시 가격보다 낮고, 세 번째 선 종료 가격이 첫 번째 선 종료 가격보다 높고, 마지막 네 번째 선 종료 가격이 세 번째 선 종료 가격보다 높습니다.

1-2-3 형태 외에도, 이 전략은 트렌드 방향과 잠재적인 트렌드 반전을 확인하기 위해 EMA와 MACD 지표를 사용합니다. 9단계 EMA와 20단계 EMA는 트렌드 확인을 위해 사용되며, MACD 라인 및 신호 라인은 동력과 잠재적인 트렌드 반전을 식별하기 위해 사용됩니다.

모든 구매 조건이 충족되면, 즉 1-2-3 형태가 형성되고, 종료 가격이 두 개의 EMA, MACD 라인이 신호 라인보다 높을 때, 전략은 다목적 포지션을 열립니다. 마찬가지로, 모든 판매 조건이 충족되면, 전략은 공백 포지션을 열립니다. 반대 신호가 생성되거나 현재 선이 종료되는 방향이 포지션 보유 방향과 반대되는 경우, 전략은 해당 포지션을 평행합니다.

우위 분석

  1. 가격 형태, 트렌드 확인 및 동력 지표와 결합하여 포괄적인 거래 신호를 제공합니다.
  2. 1-2-3 형태는 일반적인, 신뢰할 수 있는 가격 형태이며, 잠재적인 트렌드 반전을 효과적으로 포착할 수 있다.
  3. EMA와 MACD 지표를 사용하여 트렌드 방향과 동력을 추가로 확인하여 신호의 신뢰성을 향상시킵니다.
  4. 출입 및 출입 규칙이 명확하고, 이해하기 쉽고, 실행하기 쉽습니다.

위험 분석

  1. 이 전략은 단일 시간 프레임에 기반하여 다른 시간 프레임의 중요한 정보를 놓칠 수 있습니다.
  2. 이 전략은 불안정한 시장이나 불확실한 추세에서 잘못된 신호를 줄 수 있다.
  3. 위험 관리, 예를 들어 정지 및 포지션 조정 등이 고려되지 않았기 때문에 큰 손실이 발생할 수 있습니다.
  4. 전략의 매개 변수는 최적화되지 않았으며 모든 시장 조건에 적용되지 않을 수 있습니다.

최적화 방향

  1. 다중 시간 프레임 분석을 도입하여 다양한 시간 스케일의 동향 일관성을 확인합니다.
  2. ATR 기반의 동적 중지 및 포지션 조정과 같은 위험 관리 조치를 추가하십시오.
  3. 다양한 시장 상황에 맞게 EMA와 MACD의 주기적 설정과 같은 전략 매개 변수를 최적화하십시오.
  4. 신호의 신뢰성을 높이기 위해 다른 기술 지표 또는 시장 감정 지표를 추가하는 것을 고려하십시오.

요약하다

이 1-2-3 형태, EMA 및 MACD 지표에 기반한 전략은 잠재적 인 매매 신호를 식별하는 포괄적인 방법을 제공합니다. 가격 형태, 트렌드 확인 및 동력 지표를 결합하여 신뢰할 수있는 거래 신호를 생성합니다. 그러나이 전략에는 위험 관리 조치와 변수 최적화 등의 제한이 있습니다. 다중 시간 프레임, 동적 스톱 손실 및 포지션 조정 분석 및 변수 최적화를 도입하여 전략의 성능을 더욱 향상시킬 수 있습니다.

전략 소스 코드
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("1-2-3 Pattern Strategy with EMAs, MACD, and 4th Candle Extension", overlay=true)

// Define conditions for the 1-2-3 pattern for buy orders
buy_candle1_above_open = close[3] > open[3]
buy_candle2_below_open = close[2] < open[2]
buy_candle3_above_close = close[1] > close[3]
buy_candle4_above_close = close > close[3]

// Define conditions for the 1-2-3 pattern for sell orders
sell_candle1_below_open = close[3] < open[3]
sell_candle2_above_open = close[2] > open[2]
sell_candle3_below_close = close[1] < close[3]
sell_candle4_below_close = close < close[3]

// Fetch 9 EMA, 20 EMA, and MACD
ema_9 = ta.ema(close, 9)
ema_20 = ta.ema(close, 20)
[macd_line, signal_line, _] = ta.macd(close, 12, 26, 9)

// Implement strategy logic for buy orders
if (buy_candle1_above_open and buy_candle2_below_open and buy_candle3_above_close and buy_candle4_above_close and strategy.opentrades == 0 and close > ema_9 and close > ema_20 and macd_line > signal_line)
    strategy.entry("Buy", strategy.long, qty=5)

if (close < open and strategy.opentrades > 0)
    strategy.close("Buy", qty=5)

// Implement strategy logic for sell orders
if (sell_candle1_below_open and sell_candle2_above_open and sell_candle3_below_close and sell_candle4_below_close and strategy.opentrades == 0 and close < ema_9 and close < ema_20 and macd_line < signal_line)
    strategy.entry("Sell", strategy.short, qty=5)

if (close > open and strategy.opentrades > 0)
    strategy.close("Sell", qty=5)