
MACDトレンド追跡策略は,MACD指標とその信号線の金叉死叉を計算してトレンドを判断し,トレンド追跡を利益にする.
この戦略は,MACD指標に基づいてトレンドの方向を判断する.MACD指標は,トレンド追跡指数であり,移動平均と平らなもので,快線 (MACD),慢線 (Signal) とヒストグラムで構成されている.快線と慢線の金叉は,トレンドが牛市を始める可能性があることを示し,死叉は,トレンドが熊市を始める可能性があることを示している.ヒストグラムは,快線と慢線の差値を代表し,色の変化によって2つの平均線の近接と変化の速度を判断する.
ヒストグラムがマイナスから正数に上昇すると金叉信号が生じる.これは,取引が始まったばかりであることを示すため,多頭ポジションを確立することができる.ヒストグラムが正数からマイナスに変化すると,取引が頂点に達する可能性を示すために,多頭ポジションを平らげるか空頭ポジションを確立することができる.
MACDトレンド追跡戦略は,全体としてより信頼性の高いトレンド判断方法である.最適化パラメータを,他の指標と組み合わせて確認することにより,偽信号率を大幅に低減して,より高い戦略収益を得ることができる.この戦略の考え方は,簡単で理解しやすく,自動化量化取引の入門の第一選択である.
/*backtest
start: 2022-11-17 00:00:00
end: 2023-11-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("MACD")
// Getting inputs
fastLength = input(title="Fast Length", defval=12)
slowlength = input(title="Slow Length", defval=26)
src = input(title="Source", defval=close)
signalLength = input(title="Signal Smoothing", minval = 1, maxval = 50, defval = 9)
// Calculating
macd = ema(close, fastLength) - ema(close, slowlength)
signal = ema(macd, signalLength)
delta = macd - signal
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// Plot histogram
plot(delta, title="Histogram", style=columns, color=(delta>=0 ? (delta[1] < delta ? col_grow_above : col_fall_above) : (delta[1] < delta ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
// Plot orders
if (crossover(delta, 0))
strategy.entry("buy", strategy.long)
if (crossunder(delta, 0))
strategy.entry("sell", strategy.short)