Strategi penembusan harian adalah strategi trend sederhana berdasarkan carta lilin harian. Ia menghasilkan isyarat perdagangan dengan memerhatikan hubungan antara harga pembukaan dan penutupan hari sebelumnya untuk menentukan momentum pasaran.
Logik teras strategi ini ialah:
Jika badan lilin hari sebelumnya berwarna hijau (harga penutupan lebih tinggi daripada harga pembukaan), ia menunjukkan trend menaik pada hari itu. Strategi akan menjadi panjang pada pembukaan hari berikutnya. Jika badan lilin hari sebelumnya berwarna merah (harga penutupan lebih rendah daripada harga pembukaan), ia menunjukkan trend menurun. Strategi akan menjadi pendek pada pembukaan hari berikutnya.
Dengan cara yang mudah ini, strategi dapat mengenal pasti momentum pasaran dalam kitaran lilin baru-baru ini dan membuat perdagangan dengan sewajarnya. Ini membolehkan strategi mengikuti trend pasaran terkini.
Khususnya, strategi menghasilkan isyarat perdagangan seperti berikut:
Melalui logik ini, strategi boleh memanfaatkan trend harga jangka pendek.
Kelebihan utama strategi ini termasuk:
Beberapa risiko dan bidang peningkatan:
Strategi pecah harian mengenal pasti momentum pasaran melalui perbandingan lilin harian yang mudah dan berkesan, yang membolehkannya berdagang ke arah trend jangka pendek. Walaupun mudah dan mudah dilaksanakan, ia mempunyai risiko whipsaw. Pengoptimuman lanjut pada parameter dan penunjuk tambahan dapat meningkatkan kebolehpercayaan strategi.
/*backtest start: 2022-12-26 00:00:00 end: 2023-08-30 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Daily Candle Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=0.0) // Input parameters initialCapital = 10000 riskFactor = 3500 // Calculate the opening and closing values for the last day's candle lastDayOpen = request.security(syminfo.tickerid, "D", open[1], lookahead=barmerge.lookahead_on) lastDayClose = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on) // Determine the color of the last day's candle lastDayColor = lastDayOpen < lastDayClose ? color.green : color.red // Plot the last day's candle on the chart plotshape(series=na, color=lastDayColor, style=shape.triangledown, location=location.abovebar) // Calculate trade size based on available capital at last day's closing availableCapital = strategy.equity tradeSize = availableCapital / riskFactor // Trading conditions buyCondition = lastDayColor == color.green sellCondition = lastDayColor == color.red // Execute strategy orders with calculated trade size strategy.entry("Buy", strategy.long, qty=tradeSize, when=buyCondition) strategy.entry("Sell", strategy.short, qty=tradeSize, when=sellCondition) // Exit strategy stopLoss = 0.001 * lastDayOpen * tradeSize strategy.exit("StopLoss/Profit", from_entry="Buy", loss=stopLoss) strategy.exit("StopLoss/Profit", from_entry="Sell", loss=stopLoss) // Plot stop loss level on the chart plot(stopLoss, color=color.red, linewidth=2, title="Stop Loss")