Tren Penembusan Dinamis Mengikuti Strategi

Penulis:ChaoZhang, Tanggal: 2023-12-29 17:32:10
Tag:

img

Gambaran umum

Ini adalah tren dinamis yang mengikuti strategi breakout. Ini melacak harga saham tertinggi dan terendah secara real time. Ketika harga menembus harga tertinggi dalam periode terakhir, itu akan panjang. Ketika harga menembus harga terendah dalam periode terakhir, itu akan pendek. Sementara itu, stop loss dan take profit diatur untuk mengendalikan risiko dan memastikan rasio imbalan risiko tetap.

Logika Strategi

Logika inti dari strategi ini adalah untuk melacak dan memperdagangkan titik-titik terobosan harga tren. Secara khusus, strategi menghitung tertinggi tertinggi dan terendah terendah dalam 20 hari terakhir. Ketika harga penutupan hari ini menembus tertinggi kemarin, itu dianggap sebagai sinyal terobosan tren naik dan akan pergi panjang. Ketika harga penutupan hari ini menembus terendah kemarin, itu dianggap sebagai sinyal terobosan tren menurun dan akan pergi pendek.

Setelah pergi panjang atau pendek, stop loss 1% dan take profit 2% ditetapkan. Hal ini memastikan rasio risiko imbalan tetap 2:1 untuk setiap perdagangan.

Keuntungan

Keuntungan terbesar dari strategi ini adalah dengan cepat menangkap titik pembalikan dari tren harga, sambil mengendalikan risiko dari setiap perdagangan tunggal.

  1. Perhitungan dinamis harga tertinggi dan terendah, pelacakan perubahan tren harga secara real time, yang dapat dengan cepat menangkap sinyal pembalikan harga.

  2. Mengambil metode break-out untuk entri meningkatkan kualitas entri.

  3. Menetapkan stop loss dan mengambil keuntungan untuk mengendalikan rasio risiko-manfaat dari perdagangan tunggal secara efektif mengelola risiko perdagangan.

  4. Logika sederhana dan mudah dimengerti, cocok untuk pemula kuantum.

  5. Kurang kode yang mudah untuk pengujian dan optimasi.

Risiko

Ada juga beberapa risiko dari strategi ini:

  1. Mengikuti tren untuk entri mungkin melewatkan titik balik terbaik dari pembalikan harga.

  2. Stop loss dan take profit tetap tidak dapat beradaptasi dengan perubahan pasar, dapat berhenti atau target keuntungan dini.

  3. Tidak ada logika piramida untuk entri tambahan di kemudian hari, tidak bisa terus mengikuti tren.

  4. Tidak mempertimbangkan siklus besar, mungkin bertentangan dengan tren besar menyebabkan kerugian.

  5. Tidak ada modul ukuran posisi, tidak dapat mengontrol manajemen posisi keseluruhan.

Arahan Optimasi

Masih ada ruang besar untuk optimasi, terutama di arah berikut:

  1. Tambahkan stop loss dinamis dan ambil keuntungan berdasarkan volatilitas pasar.

  2. Tambahkan filter arah tren berdasarkan rata-rata bergerak untuk menghindari konflik tren utama.

  3. Tambahkan indikator kekuatan tren untuk memastikan masuk hanya pada tren yang kuat.

  4. Tambahkan logika piramida untuk memaksimalkan keuntungan dengan terus mengikuti tren.

  5. Gabungkan dengan modul ukuran posisi untuk menyesuaikan ukuran posisi secara dinamis dan mengendalikan risiko keseluruhan.

  6. Optimalkan parameter untuk menemukan set parameter yang optimal.

Ringkasan

Singkatnya, strategi ini cocok untuk pemula kuant belajar dan berlatih secara keseluruhan. Keuntungannya terletak pada kesederhanaan dan mudah dipahami, juga dengan stop loss dan mengambil logika keuntungan untuk mengendalikan risiko. Tapi masih memiliki banyak aspek untuk dioptimalkan, dapat berfungsi sebagai kesempatan untuk pembelajaran lebih lanjut. Secara umum, strategi ini cocok untuk dikuasai dari prinsip hingga aplikasi untuk pemula.


/*backtest
start: 2023-11-28 00:00:00
end: 2023-12-28 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Trend Following Breakout Strategy with 2:1 RRR", overlay=true)

// 定义前高和前低的计算
length = input(20, minval=1, title="Length")
highestHigh = highest(high, length)
lowestLow = lowest(low, length)

// 定义买入和卖出的条件
longCondition = close > highestHigh[1] // 当前收盘价高于前一期的最高价
shortCondition = close < lowestLow[1] // 当前收盘价低于前一期的最低价

// 为了确保盈亏比为2:1,我们需要定义止损和目标价
stopLoss = input(1, title="Stop Loss %") / 100
takeProfit = stopLoss * 2

// 如果满足买入条件,进入多头
if (longCondition)
    strategy.entry("Long", strategy.long)
    strategy.exit("Long TP", "Long", profit=takeProfit * close, loss=stopLoss * close)

// 如果满足卖出条件,进入空头
if (shortCondition)
    strategy.entry("Short", strategy.short)
    strategy.exit("Short TP", "Short", profit=takeProfit * close, loss=stopLoss * close)

// 绘图显示前高和前低
plot(highestHigh, color=color.green, title="Previous High")
plot(lowestLow, color=color.red, title="Previous Low")


Lebih banyak