Bollinger Band Breakout Strategi Dagangan


Tarikh penciptaan: 2024-02-21 11:35:14 Akhirnya diubah suai: 2024-02-21 11:35:14
Salin: 0 Bilangan klik: 586
1
fokus pada
1617
Pengikut

Bollinger Band Breakout Strategi Dagangan

Gambaran keseluruhan

Strategi ini berdasarkan pada reka bentuk penunjuk Bollinger Bands, melakukan lebih banyak apabila harga menembusi Bollinger Bands ke arah yang lebih baik, dan melakukan kosong apabila harga menembusi Bollinger Bands ke arah yang lebih buruk. Strategi ini adalah strategi untuk mengesan trend.

Prinsip Strategi

  1. Mengira tali pusat, tali atas dan tali bawah
  2. Apabila harga penutupan naik, masuk lebih banyak
  3. Apabila harga penutupan menembusi tren bawah, masuklah secara kosong.
  4. Syarat kedudukan rata: meratakan lebih banyak kad apabila menerobos orbit tengah, meratakan kad kosong apabila menerobos orbit tengah

Strategi ini menggunakan Burin untuk menilai kawasan pergerakan dan arah trend pasaran. Apabila harga menembusi Burin untuk melangkah ke bawah, ia dianggap sebagai isyarat untuk berbalik arah, dan berdasarkan isyarat ini, masuk melakukan lebih banyak pengurangan. Berhampiran rel tengah berfungsi sebagai kedudukan berhenti, dan keluar dari kedudukan apabila melangkah ke bawah rel tengah.

Analisis kelebihan

  1. Menggunakan indikator Brin Belt untuk menilai trend pasaran dan tahap rintangan sokongan
  2. Kemungkinan lebih tinggi untuk menembusi Burin dan turun ke bawah
  3. Peraturan masuk dan keluar yang jelas

Analisis risiko

  1. Brin berhadapan dengan risiko signal palsu yang mungkin berlaku dalam jangka pendek.
  2. Kemungkinan besar, ia akan menyebabkan kerugian besar.

Penyelesaian risiko:

  1. Trend penilaian dalam gabungan dengan petunjuk lain
  2. Menyesuaikan parameter, meluaskan ruang lingkup Brin

Arah pengoptimuman

  1. Menggabungkan indikator trend untuk mengelakkan pembalikan yang tidak perlu
  2. Secara dinamik menyesuaikan parameter Brinband, mengoptimumkan saiz parameter

ringkaskan

Strategi ini menilai trend harga dan tahap rintangan sokongan melalui indikator Bollinger Band, memasuki titik penembusan di bawah Bollinger Band, dan berhenti di tengah Bollinger Band. Logik strategi sederhana dan jelas, mudah dilaksanakan. Ia boleh dioptimumkan dengan menyesuaikan parameter atau dengan kombinasi indikator lain, dan lebih berkesan dalam keadaan trend.

Kod sumber strategi
/*backtest
start: 2024-01-21 00:00:00
end: 2024-02-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("FFFDBTC", overlay=true,initial_capital = 100,commission_type =strategy.commission.percent,commission_value= 0.15,default_qty_value = 100,default_qty_type = strategy.percent_of_equity)
// === INPUT BACKTEST RANGE ===
FromMonth = input.int(defval=1, title="From Month", minval=1, maxval=12)
FromDay = input.int(defval=1, title="From Day", minval=1, maxval=31)
FromYear = input.int(defval=1972, title="From Year", minval=1972)
ToMonth = input.int(defval=1, title="To Month", minval=1, maxval=12)
ToDay = input.int(defval=1, title="To Day", minval=1, maxval=31)
ToYear = input.int(defval=9999, title="To Year", minval=2010)

// === FUNCTION EXAMPLE === 
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)  // backtest finish window
window() => true
// Definindo tamanho da posição
position_size = strategy.equity
// Definir parâmetros das Bandas de Bollinger
length = input.int(51, "Comprimento")
mult = input.float(1.1, "Multiplicador")

// Calcular as Bandas de Bollinger
basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper = basis + dev
lower = basis - dev
// Definir condições de entrada e saída
entrada_na_venda = low < lower
saida_da_venda = high > lower and strategy.position_size < 0
entrada_na_compra = high > upper
saida_da_compra = low < upper and strategy.position_size > 0
shortCondition = close[1] < lower[1] and close > lower and close < basis
longCondition = close[1] > upper[1] and close < upper and close > basis

// Entrar na posição longa se a condição longCondition for verdadeira
if ((entrada_na_compra) and window() )
    strategy.entry("Buy", strategy.long)
//saida da compra
if (saida_da_compra)
    strategy.close("Buy")
//entrada na venda
if ((entrada_na_venda) and window() )
    strategy.entry("Sell", strategy.short)
//saida da venda
if (saida_da_venda)
    strategy.close("Sell")
if ((longCondition) and window())
    strategy.entry("Long", strategy.long)

// Entrar na posição curta se a condição shortCondition for verdadeira
if ((shortCondition) and window())
    strategy.entry("Short", strategy.short)

// Definir a saída da posição

strategy.exit("Exit_Long", "Long", stop=ta.sma(close, length), when = close >= basis)
strategy.exit("Exit_Short", "Short", stop=ta.sma(close, length), when = close <= basis)

// Desenhar as Bandas de Bollinger no gráfico
plot(basis, "Média", color=#2962FF, linewidth=2)
plot(upper, "Upper", color=#BEBEBE, linewidth=2)
plot(lower, "Lower", color=#BEBEBE, linewidth=2)