Ini adalah strategi perdagangan kuantitatif berdasarkan pola engulfing, yang mengidentifikasi dan memperdagangkan pola engulfing linier tren multi-periode di pasar. Inti dari strategi ini adalah untuk menangkap sinyal pembalikan harga, dikombinasikan dengan periode penahan dan pengendalian risiko untuk mencapai hasil perdagangan yang stabil. Strategi ini berlaku untuk semua pasar dan periode waktu, menunjukkan universalitas yang kuat.
Strategi ini berdagang berdasarkan pola engulfing dalam formasi candlestick. Sinyal beli dihasilkan dalam tren menurun ketika pola engulfing bullish muncul (lilin bearish yang lebih kecil diikuti oleh lilin bullish yang lebih besar yang sepenuhnya menelan yang sebelumnya). Sinyal jual dihasilkan dalam tren naik ketika pola engulfing bearish muncul (lilin bullish yang lebih kecil diikuti oleh lilin bearish yang lebih besar yang sepenuhnya menelan yang sebelumnya). Strategi ini menggunakan periode holding yang diparameterkan, secara otomatis menutup posisi setelah periode yang ditentukan untuk menghindari risiko yang terkait dengan pemegang yang berlebihan.
Strategi ini menangkap peluang pola yang meluap melalui pendekatan yang sistematis, mencapai perdagangan yang dikendalikan risiko melalui manajemen posisi yang diparameterkan. Sementara strategi menunjukkan kepraktisan dan kemampuan beradaptasi yang kuat, pedagang masih perlu mengoptimalkan dan menyesuaikan sesuai dengan karakteristik pasar tertentu.
/*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")