더블 MACD 트렌드 확인 트레이딩 시스템

MACD EMA SMA
생성 날짜: 2024-07-31 11:17:05 마지막으로 수정됨: 2024-07-31 11:17:05
복사: 0 클릭수: 680
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

더블 MACD 트렌드 확인 트레이딩 시스템

개요

이 전략은 MACD 지표를 기반으로 한 거래 시스템으로, 두 개의 시간 주기의 MACD 지표를 결합하여 거래 결정을 내립니다. 이 전략은 주로 5 분 주기의 MACD 지표를 사용하여 진입 기회를 찾고, 1 시간 주기의 MACD 지표를 사용하여 전체 시장 동향을 확인합니다. 이 이중 확인 메커니즘은 거래의 정확성과 신뢰성을 높이기 위해 고안되었습니다.

전략 원칙

이 전략의 핵심 원칙은 시장의 추세와 거래 기회를 잡기 위해 다른 시기의 MACD 지표를 사용하는 것입니다. 구체적으로:

  1. 5분 MACD: 특정 입수 신호를 찾기 위해 사용된다. MACD 라인에서 신호선을 통과하면 구매 신호가 발생한다.

  2. 1시간 MACD: 전체 시장의 추세를 확인하기 위해 사용된다. 1시간 MACD 기둥이 긍정적인 경우에만 시장이 상승 추세에 있다고 여겨진다.

  3. 진입 조건: 5분 MACD가 구매 신호를 생성하고 1시간 MACD가 상승세를 확인하면 전략이 구매 작업을 수행한다.

  4. 위험 관리: 전략은 매 거래의 위험을 관리하기 위해 고정된 이익 목표 (<100점) 와 스톱 손실 (<20점) 을 설정한다.

  5. 포지션 관리: 매 거래마다 고정된 100 단위 거래량을 사용한다.

전략적 이점

  1. 다주기 확인: 짧은 주기 ((5분) 과 긴 주기 ((1시간) 의 MACD 지표를 결합하여 전략은 시장 동향을 더 포괄적으로 평가하고 거짓 신호를 줄일 수 있습니다.

  2. 트렌드 따라가기: 전략 설계는 전체적인 트렌드가 상승하는 것을 확인했을 때만 구매하는 “진행에 따라가기”의 원칙을 따르며 거래의 성공률을 높인다.

  3. 명확한 위험 관리: 고정된 스톱로스 설정은 거래의 위험을 통제하고, 단일 거래가 과도한 손실을 초래하지 않도록 도와줍니다.

  4. 자동화 실행: 전략은 거래 플랫폼에서 자동으로 실행될 수 있으며, 인적 감정적 간섭을 줄이고 거래 규율을 향상시킵니다.

  5. 변수 조정: 정책은 사용자가 개인 선호도 및 시장 특성에 따라 MACD 변수를 조정할 수 있도록 허용하여 유연성을 증가시킵니다.

전략적 위험

  1. 지연성: MACD는 지연된 지표이며, 빠르게 변화하는 시장에서 신호 지연이 발생할 수 있으며, 이는 진입 또는 출퇴근이 조기에 이루어지지 않습니다.

  2. 흔들리는 시장은 적용되지 않는다: 가로 수평 흔들리는 시장에서, 전략은 종종 잘못된 신호를 생성하여 연속적인 손실을 초래할 수 있다.

  3. 고정 스톱은 충분하지 않을 수 있다: 높은 변동성 시장에서 20 포인트의 고정 스톱은 갑작스러운 큰 변동에 대처하기에는 충분하지 않을 수 있다.

  4. 더 많은 일을 생각하기만 하면 됩니다. 전략은 더 많은 일을 하는 논리만을 고려하여 설계되었으며, 공백 기회를 무시하고, 수익의 일부를 놓칠 수 있습니다.

  5. 매개 변수 민감성: MACD 매개 변수의 선택은 전략 성과에 큰 영향을 미치며, 다른 시장이나 기간에는 다른 매개 변수 설정이 필요할 수 있다.

전략 최적화 방향

  1. 다이내믹 스톱: ATR 또는 변동률에 기반한 다이내믹 스톱 메커니즘을 도입하는 것을 고려하여 다양한 시장 환경에 적응하십시오.

  2. 코스피 로직에 가입: 코스피 거래를 포함하도록 전략을 확장하여 양방향 시장 기회를 최대한 활용하십시오.

  3. 양값 분석을 도입: OBV 또는 CMF와 같은 교류량 지표를 결합하여 신호의 신뢰성을 강화한다.

  4. 포지션 관리를 최적화: 고정 거래량보다는 계좌의 순가치 또는 위험 평가에 기반한 역동적인 포지션 관리를 고려한다.

  5. 필터링 조건을 추가합니다. 가짜 신호를 줄이기 위해 RSI 또는 VIX와 같은 추가 기술 지표 또는 시장 감정 지표를 도입합니다.

  6. 회수 및 최적화: 다양한 시장과 시간 주기에 대한 광범위한 회수를 수행하고 MACD 변수 및 다른 전략 변수를 최적화하십시오.

  7. 기본 요소를 고려하십시오. 중요한 경제 데이터나 이벤트 발표 기간 동안 거래 제한을 설정하거나 전략 변수를 조정할 수 있습니다.

요약하다

이중 MACD 트렌드 확인 거래 시스템은 단기 및 장기 시장 트렌드 분석을 결합한 정량화 거래 전략이다. 이 전략은 시장 트렌드를 포착하고 트렌드가 확립될 때 거래하는 것을 목표로 다양한 시간 주기의 MACD 지표를 활용한다. 일정한 위험 관리 규칙과 자동화 실행 특성은 비교적 안정적인 거래 시스템으로 만든다. 그러나 모든 거래 전략과 마찬가지로 일부 고유한 위험과 한계에 직면합니다.

전략의 효과와 적응성을 더욱 높이기 위해, 거래자는 다이내믹 스톱 메커니즘을 도입하고, 포지션 관리를 확장하고, 포지션 관리를 최적화하며, 다른 기술과 기본 분석 도구와 결합하는 것을 고려하는 것이 좋습니다. 또한, 지속적인 피드백과 변수 최적화는 전략의 효과를 유지하는 데 중요합니다. 마지막으로, 거래자는 완벽한 거래 전략이 없으며, 위험 관리와 지속적인 학습이 장기적인 성공의 열쇠라는 것을 항상 명심해야합니다.

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

//5分足で運用想定

//@version=5
strategy(title='MACD5分IN,一時間足強弱判定', shorttitle='MACDストラテジー', overlay=false)
//overlay true:チャート上に表示 felse:別ウィンドに表示

//================
//注文ポイント
//================

//入力部を作成
//input関数で設定画面に入力項目を追加できる
//type入力形式の設定,defval初期設定値,minval最小設定値
FastLength = input.int(title='短期線本数', defval=12, minval=1)
SlowLength = input.int(title='長期線本数', defval=26, minval=1)
SignalLength = input.int(title='シグナル本数', defval=9, minval=1)

FastLength1 = input.int(title='短期線本数', defval=144, minval=1)
SlowLength1 = input.int(title='長期線本数', defval=312, minval=1)
SignalLength1 = input.int(title='シグナル本数', defval=108, minval=1)
//一時間足で強弱判定のため5分足の数字を12倍

//MACDの計算 エントリー
[MACD, MACDSignal, MACDosc] = ta.macd(close, FastLength, SlowLength, SignalLength)
//MACDの計算 強弱判定
[MACD1, MACDSignal1, MACDosc1] = ta.macd(close, FastLength1, SlowLength1, SignalLength1)

//プロット エントリー
//plot画面表示,MACD計算からMACDラインとシグナルラインを表示
//linewidthでラインの太さ変更
//style_histogramでヒストグラム表示, color = MACDosc < 0の判定式で色変更
plot(MACD, color=color.new(color.red, 0), linewidth=1)
plot(MACDSignal, color=color.new(color.green, 0))
plot(MACDosc, style=plot.style_histogram, linewidth=3, color=MACDosc < 0 ? color.new(color.blue, 50) : color.new(color.red, 50))

//プロット 相場強弱判定
//一時間足の表示作成
plot(MACD1, color=color.new(color.red, 0), linewidth=1)
plot(MACDSignal1, color=color.new(color.green, 0))

//買いポイント 
//crossover(x,y)yをxが上抜け
BuyPoint_MACDGC = ta.crossover(MACD, MACDSignal)
//ヒストグラムの値がプラスの場合GC中と判定
BuyPoint_crossnow = MACDosc1 > 0
//5分足MACDGCかつ1時間足がGC中,条件は末尾にand追加で条件追加可能
BuyPoint = BuyPoint_MACDGC and BuyPoint_crossnow

//買いポイントに背景色を設定
bgcolor(BuyPoint ? color.red : color.new(color.green, 100), transp=90)

//================
//決済ポイント
//================
//100円抜いたらOUT,20円下がったら損切
ProfitDelta = 100
LossDelta = 20

//================
//枚数
//================
Size = 1

//================
//注文・決済
//================
//strategy.entryでエントリー,qtyでサイズ指定,
//エントリータイミング今回は46行目BuyPoint = BuyPoint_MACDGC and BuyPoint_crossnow
if BuyPoint
    strategy.entry(id='long', direction=strategy.long, qty=Size)
//profit利確までの幅,loss損切までの幅(stopというので移動平均線に到達したらなどの損切設定なども可能)
strategy.exit(id='exit', from_entry='long', profit=ProfitDelta, loss=LossDelta)