Strategi ini mengira purata bergerak eksponensial 9 hari dan 15 hari (EMA) untuk mengenal pasti isyarat beli dan jual berdasarkan persilangan EMA dan arah lilin untuk perdagangan intraday. Ia menghasilkan isyarat beli apabila 9EMA melintasi di atas 15EMA dan lilin terakhir adalah bullish, dan isyarat jual apabila 9EMA melintasi di bawah 15EMA dan lilin terakhir adalah bearish. Strategi ini juga menggabungkan stop loss berasaskan ATR.
Kelebihan strategi ini termasuk:
Risiko termasuk:
Penyelesaian:
Kawasan untuk pengoptimuman:
Ini adalah strategi scalping intraday yang mudah namun berkesan yang mengintegrasikan dua silang EMA dan penapisan candlestick dengan stop loss dinamik berasaskan ATR. Penambahbaikan lanjut dalam parameter dan kombinasi pelbagai faktor dapat meningkatkan kestabilan dan keuntungan.
/*backtest start: 2023-01-17 00:00:00 end: 2024-01-23 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Scalping Strategy", shorttitle="EMAScalp", overlay=true) // Input parameters ema9_length = input(9, title="9 EMA Length") ema15_length = input(15, title="15 EMA Length") // Calculate EMAs ema9 = ta.ema(close, ema9_length) ema15 = ta.ema(close, ema15_length) // Plot EMAs on the chart plot(ema9, color=color.blue, title="9 EMA") plot(ema15, color=color.red, title="15 EMA") // Identify Bullish and Bearish candles bullish_candle = close > open bearish_candle = close < open // Bullish conditions for Buy Signal buy_condition = ta.crossover(close, ema9) and ema15 < ema9 and bullish_candle // Bearish conditions for Sell Signal sell_condition = ta.crossunder(close, ema9) and ema15 > ema9 and bearish_candle // Plot Buy and Sell signals plotshape(series=buy_condition, title="Buy Signal", color=color.green, style=shape.triangleup, location=location.belowbar) plotshape(series=sell_condition, title="Sell Signal", color=color.red, style=shape.triangledown, location=location.abovebar) // Optional: Add stop-loss levels atr_length = input(14, title="ATR Length for Stop Loss") atr_multiplier = input(1.5, title="ATR Multiplier for Stop Loss") atr_value = ta.atr(atr_length) stop_loss_level = strategy.position_size > 0 ? close - atr_multiplier * atr_value : close + atr_multiplier * atr_value plot(stop_loss_level, color=color.gray, title="Stop Loss Level", linewidth=2) // Strategy rules if (buy_condition) strategy.entry("Buy", strategy.long) strategy.exit("Exit Buy", from_entry="Buy", loss=stop_loss_level) if (sell_condition) strategy.entry("Sell", strategy.short) strategy.exit("Exit Sell", from_entry="Sell", loss=stop_loss_level)