Strategi ini adalah sistem perdagangan frekuensi tinggi yang menggabungkan penunjuk Bollinger Bands dengan isyarat penembusan harga. Strategi ini memantau hubungan antara harga dan Bollinger Bands, digabungkan dengan isyarat penembusan titik tinggi dan rendah sebelumnya, untuk melaksanakan perdagangan pembalikan semasa keadaan pasar yang terlalu banyak dibeli dan terlalu banyak dijual. Sistem ini melaksanakan nisbah risiko-balasan 1: 1 untuk sasaran keuntungan dan kerugian, dan memvisualisasikan tahap harga utama untuk membantu peniaga memahami trend pasaran secara intuitif.
Logik teras strategi ini adalah berdasarkan dua syarat utama: isyarat beli diaktifkan apabila harga memecahkan di atas paras tertinggi sebelumnya dan yang tinggi di bawah Bollinger Band bawah; isyarat jual diaktifkan apabila harga memecahkan di bawah paras rendah sebelumnya dan yang rendah di atas Bollinger Band atas. Parameter Bollinger Bands menggunakan purata bergerak 20 tempoh dengan 2 penyimpangan standard untuk menentukan julat turun naik pasaran dan kawasan overbought / oversold. Selepas mencetuskan isyarat perdagangan, sistem secara automatik menetapkan paras stop-loss dan sasaran yang sesuai, memvisualisasikannya melalui gaya garis yang berbeza.
Ini adalah sistem perdagangan komprehensif yang mengintegrasikan pelbagai konsep analisis teknikal. Melalui kombinasi penunjuk Bollinger Bands dan harga harga, strategi ini dapat menangkap peluang pembalikan di kawasan pasaran yang terlalu banyak dibeli dan terlalu banyak dijual. Walaupun terdapat ruang untuk pengoptimuman, kerangka asas sistem ini mempunyai kemampuan yang baik dan nilai praktikal. Melalui pengurusan risiko yang betul dan pengoptimuman parameter, strategi ini berpotensi untuk mencapai pulangan yang stabil dalam perdagangan sebenar.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-03 00:00:00 period: 2d basePeriod: 2d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Band Scalping", overlay=true) // Input for Bollinger Bands length and standard deviation bbLength = input(20, title="Bollinger Bands Length") stdDev = input(2.0, title="Bollinger Bands Std Dev") // Calculate and plot the Bollinger Bands basis = ta.sma(close, bbLength) deviation = stdDev * ta.stdev(close, bbLength) upperBB = basis + deviation lowerBB = basis - deviation // Get previous candle's values prevHigh = high[1] // Previous candle high prevLow = low[1] // Previous candle low // Buy Signal Condition: Current high crossed above previous high and previous high is below the lower Bollinger Band buyCondition = ta.crossover(high, prevHigh) and (prevHigh < lowerBB[1]) // Sell Signal Condition: Current low crossed below previous low and previous low is above the upper Bollinger Band sellCondition = ta.crossunder(low, prevLow) and (prevLow > upperBB[1]) // Entry and exit for Buy signals if (buyCondition) strategy.entry("Buy", strategy.long) // Calculate target and stop loss stopLossPrice = prevLow targetPrice = prevHigh + (prevHigh - stopLossPrice) // 1:1 RR target // Set stop loss and target orders strategy.exit("Sell", "Buy", limit=targetPrice, stop=stopLossPrice) // // Plot entry line // line.new(x1=bar_index, y1=prevHigh, x2=bar_index + 12, y2=prevHigh, color=color.green, width=2, style=line.style_solid) // // Plot stop loss line // line.new(x1=bar_index, y1=stopLossPrice, x2=bar_index + 12, y2=stopLossPrice, color=color.red, width=1, style=line.style_dashed) // // Plot target line // line.new(x1=bar_index, y1=targetPrice, x2=bar_index + 12, y2=targetPrice, color=color.blue, width=2, style=line.style_solid) // Entry and exit for Sell signals if (sellCondition) strategy.entry("Sell", strategy.short) // Calculate target and stop loss stopLossPriceSell = prevHigh targetPriceSell = prevLow - (stopLossPriceSell - prevLow) // 1:1 RR target // Set stop loss and target orders strategy.exit("Cover", "Sell", limit=targetPriceSell, stop=stopLossPriceSell) // // Plot entry line // line.new(x1=bar_index, y1=prevLow, x2=bar_index + 12, y2=prevLow, color=color.red, width=2, style=line.style_solid) // // Plot stop loss line // line.new(x1=bar_index, y1=stopLossPriceSell, x2=bar_index + 12, y2=stopLossPriceSell, color=color.green, width=1, style=line.style_dashed) // // Plot target line // line.new(x1=bar_index, y1=targetPriceSell, x2=bar_index + 12, y2=targetPriceSell, color=color.blue, width=2, style=line.style_solid) // Plotting Bollinger Bands with 70% transparency plot(upperBB, color=color.red, title="Upper Bollinger Band", transp=70) plot(lowerBB, color=color.green, title="Lower Bollinger Band", transp=70) plot(basis, color=color.blue, title="Middle Band", transp=70)