Strategi Dagangan Jangka Pendek Berdasarkan Bollinger Bands

Penulis:ChaoZhang, Tarikh: 2024-03-01 13:29:47
Tag:

img

Ringkasan

Strategi ini menggunakan penunjuk Bollinger Bands untuk menentukan isyarat dagangan dan menetapkan paras stop profit / loss. Ia pergi lama apabila harga menyentuh jalur tengah dari bawah dan pergi pendek apabila harga menyentuh jalur tengah dari atas. Ia menetapkan 0.5% mengambil keuntungan dan 3% berhenti kerugian, milik strategi dagangan jangka pendek.

Logika Strategi

Band tengah Bollinger Bands adalah purata bergerak mudah N-hari harga penutupan. Band atas adalah band tengah + K kali penyimpangan standard N-hari harga penutupan. Band bawah adalah band tengah - K kali penyimpangan standard N-hari harga penutupan.

Analisis Kelebihan

  1. Menggunakan Bollinger Bands untuk menentukan isyarat dagangan dapat menangkap penembusan harga dengan berkesan.
  2. Mengambil perdagangan jangka pendek, kitaran dagangan sangat pendek yang membolehkan beralih arah dengan cepat.
  3. Posisi saiz tetap dan penetapan stop profit/loss menguruskan risiko dengan baik setiap perdagangan.

Analisis Risiko

  1. Bollinger Bands sensitif terhadap turun naik pasaran. tetapan parameter yang tidak betul boleh membawa kepada lebih banyak isyarat tetapi kadar kemenangan yang lebih rendah.
  2. Perdagangan frekuensi tinggi boleh mengurangkan margin keuntungan dengan ketara jika komisen agak tinggi.
  3. Tetapan stop profit/loss yang tidak betul boleh menyebabkan stop loss yang lebih awal atau kehilangan keuntungan yang lebih besar.

Penyelesaian:

  1. Mengoptimumkan parameter untuk mencari kombinasi terbaik.
  2. Pilih sekuriti dengan komisen rendah.
  3. Mengoptimumkan tahap Stop Profit / Loss melalui backtesting.

Pengoptimuman

  1. Gabungkan dengan penunjuk lain seperti corak garis K dan MACD untuk menapis isyarat dan meningkatkan kadar kemenangan.
  2. Tambah lebih banyak jenis mengambil keuntungan seperti berhenti atau penutupan separa untuk mengembangkan potensi keuntungan.
  3. Mengoptimumkan parameter Bollinger Bands dan menghentikan tahap keuntungan / kerugian untuk mencari kombinasi terbaik.

Kesimpulan

Logik keseluruhan strategi ini jelas. Menggunakan Bollinger Bands untuk menentukan isyarat adalah berkesan. Walau bagaimanapun, kekerapan perdagangan yang tinggi dan ruang keuntungan yang terhad setiap perdagangan. Adalah disyorkan untuk menggabungkan penunjuk trend untuk menapis isyarat dan mengoptimumkan parameter untuk meningkatkan prestasi strategi.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia Bollinger Bands", shorttitle="BB Strategy", overlay=true)

// Parámetros de las Bandas de Bollinger
length = input(20, title="Longitud")
mult = input(2.0, title="Multiplicador")

// Calcula las Bandas de Bollinger
basis = ta.sma(close, length)
upper_band = basis + mult * ta.stdev(close, length)
lower_band = basis - mult * ta.stdev(close, length)

// Condiciones para realizar operaciones
price_touches_basis_up = ta.crossover(close, basis)
price_touches_basis_down = ta.crossunder(close, basis)

// Lógica de la estrategia
if (price_touches_basis_up)
    strategy.entry("Compra", strategy.long, qty = 1)
    
if (price_touches_basis_down)
    strategy.entry("Venta", strategy.short, qty = 1)

// Lógica para cerrar la operación con un movimiento del 0,5% (take profit) o 3% (stop loss)
target_profit = 0.005 // Actualizado a 0.5%
stop_loss = 0.03

if (strategy.position_size > 0)
    strategy.exit("Take Profit/Close", from_entry = "Compra", profit = close * (1 + target_profit))
    strategy.exit("Stop Loss/Close", from_entry = "Compra", loss = close * (1 - stop_loss))

if (strategy.position_size < 0)
    strategy.exit("Take Profit/Close", from_entry = "Venta", profit = close * (1 - target_profit))
    strategy.exit("Stop Loss/Close", from_entry = "Venta", loss = close * (1 + stop_loss))

// Dibuja las Bandas de Bollinger en el gráfico
plot(upper_band, color=color.blue, title="Upper Band")
plot(lower_band, color=color.red, title="Lower Band")
plot(basis, color=color.green, title="Basis")


Lebih lanjut