Trend Penembusan Dinamik Mengikut Strategi

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

img

Ringkasan

Ini adalah trend dinamik yang mengikuti strategi pecah. Ia mengesan harga saham tertinggi dan terendah dalam masa nyata. Apabila harga memecahkan harga tertinggi dalam tempoh baru-baru ini, ia akan menjadi panjang. Apabila harga memecahkan harga terendah dalam tempoh baru-baru ini, ia akan menjadi pendek. Sementara itu, hentikan kerugian dan ambil keuntungan ditetapkan untuk mengawal risiko dan memastikan nisbah ganjaran risiko tetap.

Logika Strategi

Logik teras strategi ini adalah untuk mengesan dan memperdagangkan titik-titik penembusan trend harga. Khususnya, strategi ini mengira tertinggi tertinggi dan terendah terendah dalam 20 hari kebelakangan ini. Apabila harga penutupan hari ini menembusi tertinggi semalam, ia dianggap sebagai isyarat penutupan trend menaik dan akan pergi lama. Apabila harga penutupan hari ini menembusi terendah semalam, ia dianggap sebagai isyarat penutupan trend menurun dan akan pergi pendek.

Selepas pergi panjang atau pendek, stop loss 1% dan mengambil keuntungan 2% ditetapkan. Ini memastikan nisbah ganjaran risiko tetap 2: 1 untuk setiap perdagangan. Ia berkesan mengawal risiko perdagangan tunggal.

Kelebihan

Kelebihan terbesar strategi ini adalah dengan cepat menangkap titik pembalikan trend harga, sambil mengawal risiko setiap perdagangan tunggal.

  1. Pengiraan dinamik harga tertinggi dan terendah, pengesanan perubahan trend harga masa nyata, yang dapat menangkap isyarat pembalikan harga dengan cepat.

  2. Mengambil kaedah pecah untuk entri meningkatkan kualiti entri.

  3. Menetapkan stop loss dan mengambil keuntungan untuk mengawal nisbah ganjaran risiko perdagangan tunggal secara berkesan menguruskan risiko perdagangan.

  4. Logik yang mudah dan mudah difahami, sesuai untuk pemula kuantum.

  5. Kurang kod yang mudah untuk ujian dan pengoptimuman.

Risiko

Terdapat juga beberapa risiko strategi ini:

  1. Mengikuti trend untuk kemasukan mungkin terlepas titik perubahan harga terbaik.

  2. Stop loss tetap dan mengambil keuntungan tidak dapat menyesuaikan diri dengan perubahan pasaran, boleh berhenti atau sasaran keuntungan lebih awal.

  3. Tidak ada logik piramid untuk entri tambahan kemudian, tidak boleh terus mengikuti trend.

  4. Tiada pertimbangan kitaran besar, mungkin bertentangan dengan trend utama menyebabkan kerugian.

  5. Tiada modul pengukuran kedudukan, tidak boleh mengawal pengurusan kedudukan keseluruhan.

Arahan pengoptimuman

Masih ada ruang yang besar untuk pengoptimuman, terutamanya dalam arah di bawah:

  1. Tambahkan stop loss dinamik dan ambil keuntungan berdasarkan turun naik pasaran.

  2. Tambah penapis arah trend berdasarkan purata bergerak untuk mengelakkan konflik trend utama.

  3. Tambah penunjuk kekuatan trend untuk memastikan hanya memasuki trend yang kuat.

  4. Tambah logik piramid untuk memaksimumkan keuntungan dengan terus mengikuti trend.

  5. Gabungkan dengan modul saiz kedudukan untuk menyesuaikan saiz kedudukan secara dinamik dan mengawal risiko keseluruhan.

  6. Mengoptimumkan parameter untuk mencari set parameter optimum.

Ringkasan

Ringkasnya, strategi ini sesuai untuk pemula kuant belajar dan berlatih secara keseluruhan. Kelebihannya terletak pada kesederhanaan dan mudah difahami, juga dengan stop loss dan mengambil keuntungan logik untuk mengawal risiko. Tetapi masih mempunyai banyak aspek untuk mengoptimumkan, boleh berfungsi sebagai peluang untuk pembelajaran lanjut. Secara umum, strategi ini sesuai untuk menguasai dari prinsip untuk 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 lanjut