
Ini adalah strategi perdagangan berdasarkan analisis pola kandil multi-periode, yang terutama menghasilkan sinyal perdagangan dengan mengidentifikasi pola kandil umum seperti bullish engulfing, bearish engulfing, dan doji. Strategi ini beroperasi pada siklus harian dan menentukan titik balik tren pasar dengan menggabungkan beberapa indikator teknis dan karakteristik pola, sehingga menemukan waktu masuk perdagangan yang ideal.
Logika inti dari strategi ini adalah mengidentifikasi tiga pola kandil klasik secara terprogram:
Bila pola bullish engulfing teridentifikasi, sinyal beli ditampilkan di bawah garis K; bila pola bearish engulfing teridentifikasi, sinyal jual ditampilkan di atas garis K; bila pola doji teridentifikasi, ditandai di bagian atas garis K. Strategi ini mengimplementasikan pelabelan sinyal melalui fungsi label.new() dan meningkatkan visualisasi sinyal melalui fungsi plotshape().
Strategi ini menerapkan analisis pola K-line klasik dengan cara terprogram dan memiliki operasional dan skalabilitas yang baik. Melalui pengaturan parameter yang wajar dan pengendalian risiko, ini dapat memberikan referensi yang berharga untuk keputusan perdagangan. Di masa mendatang, stabilitas dan keandalan strategi dapat ditingkatkan dengan menambahkan lebih banyak indikator teknis dan mengoptimalkan mekanisme konfirmasi sinyal.
/*backtest
start: 2024-01-06 00:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Sensex Option Buy/Sell Signals", overlay=true)
// Input parameters
bullishColor = color.new(color.green, 0)
bearishColor = color.new(color.red, 0)
dojiColor = color.new(color.yellow, 0)
// Candlestick pattern identification
isBullishEngulfing = close[1] < open[1] and close > open and close > high[1] and open < low[1]
isBearishEngulfing = close[1] > open[1] and close < open and close < low[1] and open > high[1]
isDoji = math.abs(close - open) <= (high - low) * 0.1
// Plot buy/sell signals
buySignal = isBullishEngulfing
sellSignal = isBearishEngulfing
timeframeCondition = input.timeframe("D", title="Timeframe for signals")
// Buy Signal
if buySignal
label.new(bar_index, high, "Buy", style=label.style_label_up, color=bullishColor, textcolor=color.white)
strategy.entry("Buy", strategy.long)
// Sell Signal
if sellSignal
label.new(bar_index, low, "Sell", style=label.style_label_down, color=bearishColor, textcolor=color.white)
strategy.entry("Sell", strategy.short)
// Highlight Doji candles
if isDoji
label.new(bar_index, high, "Doji", style=label.style_circle, color=dojiColor, textcolor=color.black)
// Alerts
alertcondition(buySignal, title="Buy Alert", message="Bullish Engulfing Pattern Detected")
alertcondition(sellSignal, title="Sell Alert", message="Bearish Engulfing Pattern Detected")
// Add plot shapes for visibility
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=bullishColor, style=shape.labelup, text="BUY")
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=bearishColor, style=shape.labeldown, text="SELL")