
この戦略は,ハイン・アシューの移動平均線交差を計算して取引信号を生成し,MACDをフィルタリング条件として組み合わせて,より安定した取引システムを実現する.
このV3版の海因修策は,海因修の移動均線交差を計算して取引信号を生成し,MACDをフィルタリング条件として組み込むことで,V1およびV2版と比較して大きく改善されている.
この戦略の利点は,以下のようなものです.
ハインアシオンは,市場騒音を効率的に除し,移動均線交差信号をより明確かつ信頼性のあるものにする.
速速均線組合せを用いて,単一の均線の偽突破に騙されないようにする.
MACDのフィルタリングシステムに加入することで,偽信号をさらに回避し,入場の精度を向上させることができます.
異なる周期の平均線を用いて,複数の時間枠の確認を実現し,このことも信号の信頼性を高めます.
ハイン・アシューを用いて平均線を計算すると,通常のK線による後退を減らすことができる.
この戦略のパラメータ設定は合理的で,動作頻度は中等で,高周波取引も不要で安定した収益を得ることができる.
しかし,この戦略にはいくつかのリスクがあります.
変動の時には,ポジションを何度も調整する反復取引が起こる可能性があります.
MACDはフィルタリング指標として機能しなくなることもあり,偽信号が生成される.
均線系はパラメータ設定に敏感であり,最適なパラメータ組み合わせを慎重にテストする必要があります.
長期にわたってポジションを保持する際には,突発的な出来事による重大な市場変動に注意する必要があります.
逆転取引による損失を避けるために,大規模なトレンドを人工的に判断する必要があります.
全体として,この戦略は,より成熟した均線戦略として,パラメータ調整が合理的な前提で,安定した投資収益を得ることができる.しかし,トレーダーは,リスクに注意し,適時にポジションを調整し,トレンド判断と組み合わせてこの戦略を適用する必要があります.
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
//Heiken-Ashi Strategy V3 by wziel
// strategy("Heiken-Ashi Strategy V3",shorttitle="WZIV3",overlay=true,default_qty_value=10000,initial_capital=10000,currency=currency.USD)
res = input(title="Heikin Ashi Candle Time Frame", defval="60")
hshift = input(1,title="Heikin Ashi Candle Time Frame Shift")
res1 = input(title="Heikin Ashi EMA Time Frame", defval="180")
mhshift = input(0,title="Heikin Ashi EMA Time Frame Shift")
fama = input(1,"Heikin Ashi EMA Period")
test = input(1,"Heikin Ashi EMA Shift")
sloma = input(30,"Slow EMA Period")
slomas = input(1,"Slow EMA Shift")
macdf = input(false,title="With MACD filter")
res2 = input(title="MACD Time Frame", defval="15")
macds = input(1,title="MACD Shift")
//Heikin Ashi Open/Close Price
ha_t = heikinashi(syminfo.tickerid)
ha_open = security(ha_t, res, open[hshift])
ha_close = security(ha_t, res, close[hshift])
mha_close = security(ha_t, res1, close[mhshift])
//macd
[macdLine, signalLine, histLine] = macd(close, 12, 26, 9)
macdl = security(ha_t,res2,macdLine[macds])
macdsl= security(ha_t,res2,signalLine[macds])
//Moving Average
fma = ema(mha_close[test],fama)
sma = ema(ha_close[slomas],sloma)
plot(fma,title="MA",color=lime,linewidth=2,style=line)
plot(sma,title="SMA",color=red,linewidth=2,style=line)
//Strategy
golong = crossover(fma,sma) and (macdl > macdsl or macdf == false )
goshort = crossunder(fma,sma) and (macdl < macdsl or macdf == false )
strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)