Strategi Perdagangan Momentum Swing


Tarikh penciptaan: 2023-11-21 16:57:07 Akhirnya diubah suai: 2023-11-21 16:57:20
Salin: 1 Bilangan klik: 564
1
fokus pada
1617
Pengikut

Strategi Perdagangan Momentum Swing

Gambaran keseluruhan

Strategi ini adalah berdasarkan pada indikator Bollinger Bands, digabungkan dengan indikator momentum, strategi perdagangan gabungan untuk mencapai kemunduran Bollinger Bands dan momentum untuk menembusi Bollinger Bands. Apabila harga menembusi garis tengah dari Bollinger Bands di bawah, anda boleh melakukan kenaikan harga apabila harga menembusi garis tengah dari Bollinger Bands di atas, dan anda boleh menjejaki penangguhan kerugian dan meratakan kedudukan selepas mencapai sasaran keuntungan dan kerugian.

Prinsip Strategi

Kaedah ini menggunakan Brin band tengah sma sebagai penunjuk rata-rata, bandwidth melalui parameter mult*Stdev perubahan dinamik. Apabila harga dari bawah menembusi garisan tengah, menunjukkan harga mengambil tindakan ke atas, maka lakukan lebih banyak; Apabila harga dari atas menembusi garisan tengah, menunjukkan harga mengambil tindakan ke bawah, maka lakukan kosong.

Secara khusus, pengiraan pita Brin dilakukan dengan dua parameter panjang dan banyak, panjang panjang menentukan kitaran garis tengah, banyak menentukan saiz lebar jalur. EnterLong dan enterShort menentukan masa penembusan, exitLong dan exitShort mengira harga berhenti rugi berdasarkan harga masuk dan nisbah stop loss sasaran.

Kelebihan Strategik

Strategi ini menggabungkan kemerosotan garis purata dan indikator momentum, yang dapat menangkap pergerakan yang lebih besar pada peringkat permulaan trend. Perbandingan dengan garis purata yang hanya mengikuti, penilaian momentum berdasarkan lebar bandwidth Brin ditambahkan, yang dapat menyaring beberapa pecah palsu. Tetapan stop loss berdasarkan pengiraan harga masuk secara langsung, tanpa campur tangan manusia.

Risiko Strategik

  • Blinken berlarutan dalam penyesuaian harga, mungkin terlepas sebahagian daripada acara
  • Tetapan Henti Kerosakan yang terlalu longgar akan meningkatkan risiko kerugian
  • Sinyal kosong mungkin kurang baik dalam keadaan berbilang kepala

Anda boleh mengoptimumkan strategi anda dengan menyesuaikan kitaran garis tengah Brin, parameter bandwidth, dan jangkauan stop loss untuk menyesuaikan diri dengan keadaan pasaran yang berbeza.

Pengoptimuman Strategi

  • Menambah jumlah dagangan atau turun naik untuk mengelakkan pecah palsu yang rendah
  • param mengoptimumkan jangka masa, faktor lebar, dan stop loss
  • Hanya melakukan lebih atau hanya melakukan kosong pada tahap pasaran tertentu
  • Model pembelajaran mesin untuk menentukan arah trend

ringkaskan

Strategi ini mengintegrasikan kelebihan pulangan Brin dan indikator momentum, dapat menangkap sebahagian perdagangan secara beransur-ansur ketika trend bermula, dapat disesuaikan dengan pasaran pada tahap yang berbeza melalui penyesuaian parameter, merupakan sistem penembusan yang agak umum. Tetapan stop loss dapat mengurangkan campur tangan manusia secara langsung dari pengiraan harga. Strategi ini juga mempunyai beberapa ruang untuk penambahbaikan, seperti menambahkan lebih banyak penunjuk keputusan tambahan, yang akan diperbaiki lagi dalam penyelidikan dan pengoptimuman selanjutnya.

Kod sumber strategi
/*backtest
start: 2023-11-13 00:00:00
end: 2023-11-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("BURATINO", overlay=true)

// Входные параметры
length = input(20, minval=1, title="Length")
mult = input(2.0, minval=0.1, maxval=5, title="Multiplier")
target_percent = input(0.5, minval=0.1, title="Target Percent")
stop_loss_percent = input(95, minval=0.1, title="Stop Loss Percent")

// Расчет полос Боллинджера
basis = sma(close, length)
dev = mult * stdev(close, length)
upper = basis + dev
lower = basis - dev

// Переворот снизу вверх через среднюю линию Боллинджера для открытия лонга
enterLong = cross(close, basis) and close[1] < basis[1]

// Переворот сверху вниз через среднюю линию Боллинджера для открытия шорта
enterShort = cross(basis, close) and close[1] > basis[1]

// Закрытие лонга после роста цены на указанный процент или падения на указанный процент
exitLong = close >= strategy.position_avg_price * (1 + (target_percent / 100)) or close <= strategy.position_avg_price * (1 - (stop_loss_percent / 100))

// Закрытие шорта после падения цены на указанный процент или роста на указанный процент
exitShort = close <= strategy.position_avg_price * (1 - (target_percent / 100)) or close >= strategy.position_avg_price * (1 + (stop_loss_percent / 100))

// Управление позициями и ограничениями на открытие противоположных позиций
strategy.entry("Long", strategy.long, when = enterLong and strategy.position_size == 0)
strategy.entry("Short", strategy.short, when = enterShort and strategy.position_size == 0)

strategy.close("Long", when = exitLong)
strategy.close("Short", when = exitShort)

// Визуализация полос Боллинджера
plot(basis, color=color.blue, title="Basis")
plot(upper, color=color.red, title="Upper")
plot(lower, color=color.green, title="Lower")