Triple EMA Crossover Strategy adalah strategi dagangan berdasarkan isyarat silang yang dihasilkan oleh tiga purata bergerak eksponensial (EMA) dengan tempoh yang berbeza. Strategi ini menggunakan EMA cepat (10 tempoh), EMA sederhana (25 tempoh), dan EMA perlahan (50 tempoh) untuk menangkap trend pasaran sambil menggunakan Julat Benar Purata (ATR) untuk menetapkan tahap stop-loss dan mengambil keuntungan yang menyesuaikan diri dengan keadaan turun naik pasaran yang berbeza. Isyarat menaik dihasilkan apabila EMA cepat melintasi EMA perlahan, dan EMA sederhana juga di atas EMA perlahan; sebaliknya, isyarat menurun dicetuskan apabila EMA pantas melintasi EMA perlahan, dan EMA sederhana juga di bawah EMA perlahan.
Triple EMA Crossover Strategy menawarkan peniaga kaedah yang berkesan untuk mengikuti trend dan pengurusan risiko dengan memanfaatkan isyarat silang dari purata bergerak eksponensial dengan tempoh yang berbeza, digabungkan dengan tetapan stop-loss dan mengambil keuntungan yang dinamik menggunakan ATR. Walaupun strategi ini berfungsi dengan baik di pasaran yang sedang berkembang, ia mungkin menghadapi cabaran di pasaran yang berbeza. Oleh itu, peniaga harus mempertimbangkan untuk menggabungkannya dengan alat analisis teknikal lain dan mengoptimumkan parameter untuk keadaan pasaran dan kelas aset yang berbeza untuk meningkatkan kebolehpercayaan dan potensi keuntungan strategi.
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Triple EMA Crossover Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) // Input for EMA periods fastLength = input(10, title="Fast EMA Length") mediumLength = input(25, title="Medium EMA Length") slowLength = input(50, title="Slow EMA Length") riskMultiplier = input(3.0, title="Risk Multiplier for Stop Loss and Take Profit") // Calculating EMAs fastEMA = ta.ema(close, fastLength) mediumEMA = ta.ema(close, mediumLength) slowEMA = ta.ema(close, slowLength) // Plot EMAs plot(fastEMA, color=color.red, title="Fast EMA") plot(mediumEMA, color=color.orange, title="Medium EMA") plot(slowEMA, color=color.yellow, title="Slow EMA") // Define the crossover conditions for a bullish and bearish signal bullishCrossover = ta.crossover(fastEMA, slowEMA) and mediumEMA > slowEMA bearishCrossover = ta.crossunder(fastEMA, slowEMA) and mediumEMA < slowEMA // ATR for stop and limit calculations atr = ta.atr(14) longStopLoss = close - atr * riskMultiplier shortStopLoss = close + atr * riskMultiplier longTakeProfit = close + atr * riskMultiplier * 2 shortTakeProfit = close - atr * riskMultiplier * 2 // Entry signals with visual shapes plotshape(series=bullishCrossover, location=location.belowbar, color=color.green, style=shape.triangleup, title="Buy Signal", text="BUY") plotshape(series=bearishCrossover, location=location.abovebar, color=color.red, style=shape.triangledown, title="Sell Signal", text="SELL") // Strategy execution if (bullishCrossover) strategy.entry("Long", strategy.long) strategy.exit("Exit Long", "Long", stop=longStopLoss, limit=longTakeProfit) if (bearishCrossover) strategy.entry("Short", strategy.short) strategy.exit("Exit Short", "Short", stop=shortStopLoss, limit=shortTakeProfit) // Color bars based on EMA positions barcolor(fastEMA > slowEMA ? color.green : slowEMA > fastEMA ? color.red : na, title="Bar Color")