Strategi ini adalah sistem perdagangan pembalikan trend berdasarkan penunjuk Bollinger Bands, yang menangkap peluang pembalikan pasaran dengan memantau hubungan antara harga dan Bollinger Bands. Strategi ini beroperasi pada jangka masa 5 minit, menggunakan purata bergerak 20 tempoh sebagai band tengah dan 3.4 penyimpangan standard untuk band atas dan bawah. Isyarat perdagangan dihasilkan apabila harga menyentuh band atas atau bawah.
Logik terasnya dibina berdasarkan teori pembalikan purata. Apabila harga menyentuh jalur bawah, sistem menganggap pasaran terlalu terjual dan cenderung untuk pergi panjang; apabila harga menyentuh jalur atas, sistem menganggap pasaran terlalu dibeli dan cenderung untuk pergi pendek.
Strategi ini menangkap peluang pembalikan pasaran melalui sentuhan Bollinger Bands, yang memaparkan logika yang jelas dan kawalan risiko yang munasabah. Melalui tetapan parameter yang sesuai dan peraturan perdagangan yang komprehensif, strategi menunjukkan kestabilan yang baik di pasaran terikat julat. Walau bagaimanapun, apabila digunakan untuk perdagangan langsung, perhatian mesti diberikan kepada risiko terobosan trend. Adalah disyorkan untuk menggabungkan penunjuk teknikal lain untuk pengesahan perdagangan dan menyesuaikan parameter strategi secara dinamik berdasarkan keadaan pasaran. Pengoptimuman terutamanya memberi tumpuan kepada penyelarasan multi-periode, penapisan trend, dan penyesuaian parameter dinamik.
/*backtest start: 2024-11-11 00:00:00 end: 2024-12-11 00:00:00 period: 5h basePeriod: 5h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("5-Min Bollinger Bands Touch Strategy", overlay=true, margin_long=100, margin_short=100) // Input parameters length = input(20, title="Bollinger Bands Length") mult = input(3.4, title="Bollinger Bands Deviation") // Bollinger Bands calculation basis = ta.sma(close, length) dev = mult * ta.stdev(close, length) upper = basis + dev lower = basis - dev // Plot Bollinger Bands plot(basis, color=color.blue, title="Basis") p1 = plot(upper, color=color.red, title="Upper Band") p2 = plot(lower, color=color.green, title="Lower Band") fill(p1, p2, color=color.new(color.gray, 90)) // Bullish buying condition: 5-min low touches lower Bollinger Band bullish_entry = low <= lower and low[1] > lower[1] // Bearish selling condition: 5-min high touches upper Bollinger Band bearish_entry = high >= upper and high[1] < upper[1] // Entry and exit conditions longCondition = bullish_entry shortCondition = bearish_entry // Strategy entries if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Optional: Add exit conditions (you may want to customize these) // Example: Exit long position after a certain profit or loss strategy.close("Long", when = high >= basis) strategy.close("Short", when = low <= basis) // Alerts alertcondition(bullish_entry, title='Bullish BB Touch', message='5-min low touched Lower Bollinger Band') alertcondition(bearish_entry, title='Bearish BB Touch', message='5-min high touched Upper Bollinger Band') // Plot entry points plotshape(bullish_entry, title="Bullish Entry", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green) plotshape(bearish_entry, title="Bearish Entry", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)