
Ini adalah strategi perdagangan kuantitatif berdasarkan pola engulfing, yang diperdagangkan dengan mengidentifikasi pola engulfing linear tren multi-periode yang muncul di pasar. Inti dari strategi ini adalah menangkap sinyal pembalikan harga, menggabungkan periode penahanan dan pengendalian risiko, serta mencapai hasil perdagangan yang kuat. Strategi ini berlaku untuk semua pasar dan periode waktu dan memiliki universalitas yang kuat.
Strategi ini didasarkan pada perdagangan pola engulfing dalam pola candlestick. Ketika pola bullish engulfing terjadi (kandil hitam yang lebih kecil diikuti oleh kandil putih yang lebih besar yang menelan sepenuhnya kandil hitam yang lebih kecil), maka hal ini menghasilkan sinyal beli dalam tren turun; ketika pola bearish engulfing terjadi (kandil hitam yang lebih kecil diikuti oleh kandil putih yang lebih besar), maka hal ini menghasilkan sinyal beli dalam tren turun. candlestick yang sepenuhnya menelan candlestick putih yang lebih kecil), menghasilkan sinyal beli dalam tren naik. Sinyal jual dihasilkan. Strategi ini menetapkan periode kepemilikan melalui parameterisasi dan secara otomatis menutup posisi setelah periode yang ditentukan untuk menghindari risiko yang ditimbulkan oleh kepemilikan yang berlebihan.
Strategi ini menggunakan pendekatan sistematis untuk menangkap peluang pola engulfing di pasar dan menggabungkannya dengan manajemen posisi berparameter untuk mencapai perdagangan yang terkendali risiko. Strategi ini sangat praktis dan mudah beradaptasi, tetapi pedagang masih perlu mengoptimalkan dan menyesuaikannya menurut karakteristik pasar tertentu. Disarankan untuk menggabungkan indikator teknis lainnya dan langkah-langkah pengendalian risiko untuk meningkatkan stabilitas dan keandalan strategi.
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("Engulfing Candlestick Strategy", overlay=true)
// Input parameters
bull_color = input.color(color.new(color.green, 0), title="Bullish Engulfing Highlight")
bear_color = input.color(color.new(color.red, 0), title="Bearish Engulfing Highlight")
hold_periods = input.int(17, title="Hold Periods", minval=1) // How many bars to hold the position
// Input for selecting the pattern (Bullish or Bearish Engulfing)
pattern_type = input.string("Bullish Engulfing", title="Engulfing Pattern", options=["Bullish Engulfing", "Bearish Engulfing"])
// Input for selecting the trade type (Long or Short)
trade_type = input.string("Long", title="Trade Type", options=["Long", "Short"])
// Conditions for Bullish Engulfing
bullish_engulfing = close > open and open < close[1] and close > open[1] and open[1] > close[1]
// Conditions for Bearish Engulfing
bearish_engulfing = close < open and open > close[1] and close < open[1] and open[1] < close[1]
// Declare the entry condition variable
var bool entry_condition = false // Set initial value to 'false'
// Entry logic based on selected pattern and trade type
if pattern_type == "Bullish Engulfing"
entry_condition := bullish_engulfing
else
entry_condition := bearish_engulfing
// Execute the entry based on the selected trade type
if entry_condition
if trade_type == "Long"
strategy.entry("Long", strategy.long)
else
strategy.entry("Short", strategy.short)
// Close position after specified number of bars
if strategy.position_size != 0 and bar_index - strategy.opentrades.entry_bar_index(0) >= hold_periods
strategy.close("Long")
strategy.close("Short")
// Highlight Bullish Engulfing Candles (Background Color)
bgcolor(bullish_engulfing and pattern_type == "Bullish Engulfing" ? color.new(bull_color, 80) : na, title="Bullish Engulfing Background")
// Highlight Bearish Engulfing Candles (Background Color)
bgcolor(bearish_engulfing and pattern_type == "Bearish Engulfing" ? color.new(bear_color, 80) : na, title="Bearish Engulfing Background")