Strategi ini dirancang berdasarkan salib emas dan salib mati rata-rata bergerak cepat dan lambat. Ketika MA cepat melintasi di atas MA lambat, pergi panjang. Ketika MA cepat melintasi di bawah MA lambat, pergi pendek. Strategi ini cocok untuk perdagangan jangka menengah hingga panjang dan dapat menangkap pembalikan tren di pasar.
Strategi ini menggunakan rata-rata bergerak eksponensial (EMA) untuk menghitung garis cepat dan lambat. panjang MA cepat adalah 10 periode dan panjang MA lambat adalah 30 periode. strategi pertama menghitung EMA cepat dan EMA lambat, kemudian memetakan garis dan menunjukkan latar belakang berwarna yang berbeda untuk menunjukkan arah tren.
Ketika penutupan hari ini berada di atas MA cepat dan MA cepat berada di atas MA lambat, latar belakang berwarna hijau, menunjukkan tren kenaikan.
Dalam tren naik, jika ada lilin merah (tutup di bawah terbuka) dan kemarin juga lilin merah, pergi panjang. Setel stop loss di 300 poin dan ambil keuntungan dengan menutup posisi pendek.
Dalam tren penurunan, jika ada lilin hijau (tutup di atas terbuka) dan kemarin juga lilin hijau, pergi pendek. Setel stop loss di 300 poin dan ambil keuntungan dengan menutup posisi panjang.
Setelah membuka posisi di setiap arah, jika waktu ditahan melebihi 1008000000 milidetik (sekitar 2 minggu), paksa tutup posisi untuk mencegah kebuntuan.
Secara keseluruhan strategi ini cukup seimbang, menggunakan EMA ganda untuk tren dan filter candlestick dengan aturan tambahan untuk menghindari sinyal palsu.
/*backtest start: 2023-10-10 00:00:00 end: 2023-11-09 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © yeainshukla //@version=5 strategy('BuyRedSellGreen4H', overlay = true) greenCandle = close > open redCandle = open > close start = timestamp(2023,9,18,0,00) end = timestamp(2023,12,31,0,00) fastLength = input.int(10, title="Fast Average Length") slowLength = input.int(30, title="Slow Average Length") averageData = input.source(close, title="Average Data Source") // Calculate exponential moving averages fastAverage = ta.ema(averageData, fastLength) slowAverage = ta.ema(averageData, slowLength) // Plot averages plot(fastAverage, color=color.navy, title="Fast EMA") plot(slowAverage, color=color.fuchsia, linewidth=2, title="Slow EMA") // Show the moving average trend with a coloured background backgroundColor = if close > fastAverage and fastAverage > slowAverage color.new(color.green, 85) else if close < fastAverage and fastAverage < slowAverage color.new(color.red, 85) else color.new(color.orange, 90) bgcolor(backgroundColor, title="EMA Background") if time >= start and time < end if(close < open) if(close[1] < open[1]) strategy.entry("Enter Long", strategy.long) strategy.exit("Exit Long", from_entry="Enter Long") strategy.close("Enter Short") else if(close[1] > open[1]) strategy.entry("Enter Short", strategy.short) strategy.exit("Exit Short", from_entry="Enter Short") strategy.close("Enter Long") if strategy.position_size < 0 or strategy.position_size > 0// short and long is opened. if((time - strategy.opentrades.entry_time(strategy.opentrades - 1)) > 1008000000) strategy.close("Enter Short") strategy.close("Enter Long")