MACD 트렌드 예측 전략

저자:차오장, 날짜: 2023-11-02 15:25:11
태그:

img

전반적인 설명

MACD 트렌드 예측 전략 (MACD Trend Prediction Strategy) 은 MACD 지표와 EMA 지표에 기반한 트렌드 다음 전략이다. 신호선을 넘어서 거래 신호를 생성하는 전통적인 MACD 전략과 달리, 이 전략은 트렌드 변화를 포착하기 위해 MACD 라인과 신호 라인의 거리의 변화를 통해 거래 신호를 생성한다.

전략 논리

  1. 빠른 라인 DEMAfast을 계산한다: 빠른 라인 MMEfast의 두 개의 EMA 값을 계산하고, 빠른 라인 DEMAfast을 DEMAfast = ((2 * MMEfast) - MMEfastb) 인 공식에 따라 계산한다.

  2. 느린 선 DEMAslow를 계산합니다: 느린 선 MMEslow의 두 개의 EMA 값을 계산하고, DEMAslow = ((2 * MMEslow) - MMEslowb이라는 공식에 따라 느린 선 DEMAslow을 계산합니다.

  3. MACD 라인을 계산합니다. MACD 라인은 빠른 라인 DEMAfast과 느린 라인 DEMAslow, LigneMACDZeroLag 사이의 차이입니다.

  4. 신호 라인을 계산합니다. MACD 라인 MMEsignal의 EMA 값을 두 개 계산하고 리그네시그널 라인을 계산합니다. 리그네시그널 = ((2 * MMEsignal) - MMEsignalb) 인 공식에 따라 계산합니다.

  5. MACD 라인과 신호 라인을 비교합니다. MACD 라인이 신호 라인보다 크면 구매 신호를 생성하고 MACD 라인이 신호 라인보다 작을 때 판매 신호를 생성합니다.

  6. 위의 계산은 MACD 지표의 지연을 효과적으로 줄일 수 있는 DEMA 알고리즘을 사용합니다.

전략 의 장점

  1. DEMA 알고리즘을 사용하면 MACD 지표의 지연을 줄이고 거래 신호를 더 민감하게 만들 수 있습니다.

  2. MACD 크로스오버 신호에 의존하지 않고 MACD와 신호 라인 사이의 거리의 변화를 통해 트렌드 변화를 포착합니다. 이는 트렌드에 더 일찍 들어갈 수 있습니다.

  3. 전략은 추세를 정확하게 판단하고 수익률이 좋은 경우 수익률은 1.6-3.5에 도달할 수 있습니다.

  4. 전략 논리는 간단하고 명확하고 이해하기 쉽고 구현하기 쉽고 양적 거래에 적합합니다.

전략 의 위험

  1. MACD는 지연 지표로서 범위 제한 시장에서 많은 유효하지 않은 거래 신호를 생성 할 수 있습니다.

  2. DEMA 알고리즘은 지연을 줄일 수 있지만, 지연을 완전히 제거할 수는 없습니다. 여전히 약간의 지연이 있습니다.

  3. 트렌드를 따르는 전략으로서, 수익은 다양한 시장에서 좋지 않을 수 있습니다.

  4. 매개 변수 sma, lma, tsp는 다양한 기간과 품종에 최적화되어야합니다.

  5. 손실을 통제하기 위해 스톱 로스 전략을 추가해야 할 수도 있습니다.

전략 최적화의 방향

  1. SMA, LMA, TSP 매개 변수를 최적화하여 다른 기간과 거래 품종에 적응합니다.

  2. 트레이드 당 손실을 제어하기 위해 ATR와 같은 동적 스톱 로스 전략을 추가합니다.

  3. 트렌드 판단 지표를 포함하여 다양한 시장에서 거래를 피합니다.

  4. 포지션 크기를 추가하여 시장 변동성에 따라 포지션을 조정합니다.

  5. 트레이딩 신호 규칙을 정비하기 위해 엔트리 및 엑시트 로직을 최적화합니다.

요약

MACD 트렌드 예측 전략은 MACD의 계산을 DEMA 알고리즘을 사용하여 지연을 줄이고, MACD와 신호선 사이의 거리의 변화를 통해 트렌드를 판단하여 개선합니다. 트렌드를 따르는 전략으로, 트렌드 변화를 효과적으로 파악할 수 있습니다. 수익 인수는 특정 장점으로 1.6-3.5에 도달 할 수 있습니다. 그러나 여전히 매개 변수, 스톱 로스 전략, 범위 시장 필터링 등을 더 많은 시장 환경에 적응하기 위해 추가 최적화가 필요합니다. 이것이이 전략의 개발 방향이 될 것입니다.


/*backtest
start: 2022-10-26 00:00:00
end: 2023-11-01 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/
// © moritz1301

//@version=4
strategy("MACD Trendprediction Strategy V1", shorttitle="MACD TPS", overlay=true)
sma = input(12,title='DEMA Courte')
lma = input(26,title='DEMA Longue')
tsp = input(9,title='Signal')
dolignes = input(true,title="Lignes")

MMEslowa = ema(close,lma)
MMEslowb = ema(MMEslowa,lma)
DEMAslow = ((2 * MMEslowa) - MMEslowb )

MMEfasta = ema(close,sma)
MMEfastb = ema(MMEfasta,sma)
DEMAfast = ((2 * MMEfasta) - MMEfastb)

LigneMACDZeroLag = (DEMAfast - DEMAslow)

MMEsignala = ema(LigneMACDZeroLag, tsp)
MMEsignalb = ema(MMEsignala, tsp)
Lignesignal = ((2 * MMEsignala) - MMEsignalb )

MACDZeroLag = (LigneMACDZeroLag - Lignesignal)

bgcolor(LigneMACDZeroLag<Lignesignal ? color.red : color.green)

if (LigneMACDZeroLag>Lignesignal)
	strategy.entry("Buy", strategy.long, comment="BUY")
	
if (LigneMACDZeroLag<Lignesignal)
	strategy.close("Buy", strategy.long, comment="SELL")








더 많은