この戦略は,MACDインジケーターをベースに,MACDラインとシグナルラインのクロスオーバーを使用して取引信号を決定する.MACDラインがシグナルラインの上を横切ると,長信号を生成し,MACDラインがシグナルラインを下を横切ると,短信号を生成する.この戦略は,前キャンドルの最低価格をロングポジションのストップ損失と前キャンドルの最高価格をショートポジションのストップ損失として使用する.利益を取ることはATR (平均真差) の4倍に設定される.
MACD指標は,DIF線とDEA線で構成される.DIF線は,高速移動平均線とスロー移動平均線の違いであり,DEA線はDIF線の移動平均線である.DIF線がDEA線を超越すると,価格は過売りエリアを離れ,上昇し始めたことを示し,ロング信号を生成する.DIF線がDEAラインを下回ると,価格は過買いエリアを離れ,低下し始めたことを示し,ショート信号を生成する.同時に,戦略は,前キャンドルの最低価格と最高価格をそれぞれロングとショートポジションのストップ損失としてリスク制御に使用する.利益を引き出すことは利益を最大化するためにATRの4倍に設定されている.
この戦略は,MACD指標に基づい,MACD線とシグナルラインのクロスオーバーを使用して取引信号を決定する.また,前回のキャンドルの最低価格と最高価格をストップ損失として使用し,ATRの4倍に利益を得ることを設定する.戦略ロジックは明確で実行が簡単で,価格動向をうまく把握することができます.しかし,戦略には,指標遅延や単純なストップ損失設定などのいくつかのリスクもあります.将来,他の指標を追加し,ストップ損失と利益を得ること設定を最適化し,戦略の安定性と収益性を向上させるためにポジション管理を追加することができます.
/*backtest start: 2023-05-05 00:00:00 end: 2024-05-10 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MACD Strategy", overlay=true) // Define MACD [macdLine, signalLine, _] = macd(close, 12, 26, 9) // Define conditions for long entry longCondition = crossover(macdLine, signalLine) // Define conditions for short entry shortCondition = crossunder(macdLine, signalLine) // Define stop loss for long entry longStopLoss = low[1] // Previous candle low // Define stop loss for short entry shortStopLoss = high[1] // Previous candle high // Define take profit for both long and short entries takeProfit = close + (close - longStopLoss) * 4 // 4 x ATR // Execute long entry if (longCondition) strategy.entry("Buy", strategy.long) strategy.exit("TP/SL", "Buy", stop=longStopLoss, limit=takeProfit) // Execute short entry if (shortCondition) strategy.entry("Sell", strategy.short) strategy.exit("TP/SL", "Sell", stop=shortStopLoss, limit=takeProfit)