
多重均線回帰MACDトレンド確認戦略は,均線システム,価格回帰とMACD指標を組み合わせたトレンド取引システムである.この戦略の核心思想は,価格が長期均線 ([200/250均線]) に戻る近くの取引機会を探し,MACD指標を入場確認信号として使用することである.この戦略は,多重隠された均線を補助的な選条件として使用するとともに,ATRに基づく動的止損と固定リスク報酬比設定を組み,完全な取引システムを形成する.
この戦略は,以下の基本原則に基づいて取引されます.
条件は以下の通りです.
裸足の入場条件:
多重均線回帰MACDトレンド確認策略は,複数の技術分析方法を融合した総合的な取引システムであり,その核心的な優位性は,トレンド判断,価格回帰理論,動力の確認と体系化されたリスク管理の組み合わせにある.戦略は,均線システムを通じて,全体的なトレンドの方向性を識別し,価格が長期均線に回帰して近くのメカニズムによって,高い勝率のエントリー点を探し,MACDを動力の確認信号として使用し,偽信号を減らす.
この戦略は,特に中長期のトレンド市場には適しており,強いトレンド環境で価格の回調を捕まえ,トレンド方向に進む機会があります.しかしながら,戦略には平均線遅れ,取引機会の稀さなどの潜在的リスクがあり,市場環境のフィルタリング,ダイナミックリスク管理などの方法で最適化する必要があります.
市場環境のフィルターメカニズムを追加し,リスク・リターン比率を動的に調整し,均線システムを改善することにより,この戦略は,さらに安定性と適応性を高め,より包括的で効果的な取引システムになる見込みである. 体系化された取引を求める投資家にとって,この戦略は,複数の技術指標を組み合わせて,完全なリスク管理メカニズムを備えた取引の枠組みを考慮に値する.
/*backtest
start: 2025-01-01 00:00:00
end: 2025-03-27 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Price Near 200 EMA", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === User Inputs ===
ema1Length = input(20, title="EMA 1 Length") // Main EMA (Trend)
ema2Length = input(250, title="EMA 2 Length") // Long-term EMA
macdFastLength = input(12, title="MACD Fast Length")
macdSlowLength = input(26, title="MACD Slow Length")
macdSignalLength = input(9, title="MACD Signal Length")
rrRatio = input.float(1.5, title="Risk to Reward Ratio", minval=1, step=0.1)
atrMultiplier = input.float(5, title="ATR Multiplier for SL", minval=1, step=0.1) // Default to 5x ATR
atrLength = input(14, title="ATR Length") // User-defined ATR length
// === Hidden EMA Lengths (Hardcoded) ===
ema3Length = 2 // Fast EMA (Hidden)
ema4Length = 100 // Medium EMA (Hidden)
ema5Length = 300 // Long EMA (Hidden)
// === EMA Calculations ===
ema1 = ta.ema(close, ema1Length) // 20 EMA
ema2 = ta.ema(close, ema2Length) // 250 EMA
ema3 = ta.ema(close, ema3Length) // 2 EMA (Hidden)
ema4 = ta.ema(close, ema4Length) // 100 EMA (Hidden)
ema5 = ta.ema(close, ema5Length) // 300 EMA (Hidden)
// === MACD Calculation ===
[macdLine, signalLine, _] = ta.macd(close, macdFastLength, macdSlowLength, macdSignalLength)
macdBullish = ta.crossover(macdLine, signalLine)
macdBearish = ta.crossunder(macdLine, signalLine)
// === ATR for Dynamic Stop Loss ===
atrValue = ta.atr(atrLength)
// === Long Conditions ===
bullishCondition1 = ema1 > ema2
bullishCondition2 = ema3 > ema5 and ema3 < ema4
bullishEntry = bullishCondition1 and bullishCondition2 and macdBullish
// === Short Conditions ===
bearishCondition1 = ema1 < ema2
bearishCondition2 = ema3 < ema5 and ema3 > ema4
bearishEntry = bearishCondition1 and bearishCondition2 and macdBearish
// === Calculate Stop Loss and Target Using ATR ===
longStopLoss = close - atrValue * atrMultiplier
longTargetPrice = close + (close - longStopLoss) * rrRatio
shortStopLoss = close + atrValue * atrMultiplier
shortTargetPrice = close - (shortStopLoss - close) * rrRatio
// === Entry and Exit Logic ===
if bullishEntry
strategy.entry("Buy", strategy.long)
strategy.exit("TP Long", "Buy", limit=longTargetPrice, stop=longStopLoss, comment="SL/TP Long")
if bearishEntry
strategy.entry("Sell", strategy.short)
strategy.exit("TP Short", "Sell", limit=shortTargetPrice, stop=shortStopLoss, comment="SL/TP Short")
// === Plotting Only Visible EMAs ===
plot(ema1, title="EMA 1", color=color.blue)
plot(ema2, title="EMA 2", color=color.red)
// === Background Highlight for Entries ===
bgcolor(bullishEntry ? color.new(color.green, 90) : na, title="Bullish Background")
bgcolor(bearishEntry ? color.new(color.red, 90) : na, title="Bearish Background")