移動平均クロスオーバーと MACD フィルター付きハイン・アッシュ・キャンドル戦略 V3


作成日: 2023-10-25 11:26:17 最終変更日: 2023-10-25 11:26:17
コピー: 0 クリック数: 1056
1
フォロー
1617
フォロワー

移動平均クロスオーバーと MACD フィルター付きハイン・アッシュ・キャンドル戦略 V3

概要

この戦略は,ハイン・アシューの移動平均線交差を計算して取引信号を生成し,MACDをフィルタリング条件として組み合わせて,より安定した取引システムを実現する.

戦略原則

  1. ハイン・アシューの開値と閉値の計算
  2. 急速移動平均線 ((EMA) と遅い移動平均線 ((SMA) を計算する
  3. スローモーション平均線を高速モーション平均線に突破すると,買取信号が生成されます.
  4. 速動平均線の下を通過すると,出売信号が生成される.
  5. MACD フィルタが有効であれば,MACD 柱の上を通る 0 軸時のみで買取信号が発生し,MACD 柱の下を通る 0 軸時のみで出売信号が発生する

優位分析

  1. ハインアシオンは,市場騒音を効率的に除し,移動均線交差信号をより信頼性のあるものにします.
  2. 異なる周期の平均線を組み合わせて,複数の確認を用い,偽突破を避ける
  3. MACDフィルタリングは,偽信号をさらに回避し,信号の質を向上させるのに役立ちます.
  4. ハイン・アシューアンの計算平均線を用いて, Scientist の値を下げることができる.

このV3版の海因修策は,海因修の移動均線交差を計算して取引信号を生成し,MACDをフィルタリング条件として組み込むことで,V1およびV2版と比較して大きく改善されている.

この戦略の利点は,以下のようなものです.

  1. ハインアシオンは,市場騒音を効率的に除し,移動均線交差信号をより明確かつ信頼性のあるものにする.

  2. 速速均線組合せを用いて,単一の均線の偽突破に騙されないようにする.

  3. MACDのフィルタリングシステムに加入することで,偽信号をさらに回避し,入場の精度を向上させることができます.

  4. 異なる周期の平均線を用いて,複数の時間枠の確認を実現し,このことも信号の信頼性を高めます.

  5. ハイン・アシューを用いて平均線を計算すると,通常のK線による後退を減らすことができる.

  6. この戦略のパラメータ設定は合理的で,動作頻度は中等で,高周波取引も不要で安定した収益を得ることができる.

しかし,この戦略にはいくつかのリスクがあります.

  1. 変動の時には,ポジションを何度も調整する反復取引が起こる可能性があります.

  2. MACDはフィルタリング指標として機能しなくなることもあり,偽信号が生成される.

  3. 均線系はパラメータ設定に敏感であり,最適なパラメータ組み合わせを慎重にテストする必要があります.

  4. 長期にわたってポジションを保持する際には,突発的な出来事による重大な市場変動に注意する必要があります.

  5. 逆転取引による損失を避けるために,大規模なトレンドを人工的に判断する必要があります.

全体として,この戦略は,より成熟した均線戦略として,パラメータ調整が合理的な前提で,安定した投資収益を得ることができる.しかし,トレーダーは,リスクに注意し,適時にポジションを調整し,トレンド判断と組み合わせてこの戦略を適用する必要があります.

ストラテジーソースコード
/*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)