SuperTrend Multi Timeframe Backtest Strategi

Penulis:ChaoZhang, Tarikh: 2023-12-05 10:59:54
Tag:

img

Ringkasan

Idea utama strategi ini adalah untuk menjana isyarat dagangan menggunakan penunjuk Supertrend merentasi beberapa bingkai masa, dan menggabungkannya dengan penapis intraday untuk membandingkan kedudukan terbuka pada siang hari, untuk melaksanakan perdagangan pelbagai bingkai masa dan meningkatkan kualiti isyarat.

Logika Strategi

Strategi pertama memanggil fungsi supertrend, lulus dalam parameter mult dan len, untuk menjana garis Supertrend superTrend dan arah dir. Kemudian ia memetakan carta garis Supertrend. Parameter input intraday mengawal sama ada untuk membesarkan kedudukan terbuka intraday. Jika intraday benar, kedudukan terbuka intraday akan dibesarkan selepas 2:45 petang.

Peraturan penjanaan isyarat adalah: apabila harga penutupan berada di atas garis Supertrend, isyarat beli dihasilkan; apabila harga penutupan berada di bawah garis Supertrend, isyarat jual dihasilkan. Apabila isyarat beli diterima, pesanan beli akan dilaksanakan untuk membuka kedudukan panjang; apabila isyarat jual diterima, isyarat jual akan dilaksanakan untuk membuka kedudukan pendek. Jika intraday penapis intraday diaktifkan, iaitu ditetapkan menjadi benar, semua kedudukan panjang dan pendek terbuka akan ditutup selepas 2:45 petang setiap hari.

Analisis Kelebihan

Kelebihan terbesar strategi ini adalah bahawa ia menggunakan penunjuk Supertrend yang mudah tetapi praktikal untuk melaksanakan penjanaan isyarat perdagangan pelbagai jangka masa. Supertrend itu sendiri sudah mempunyai kadar kemenangan dan pulangan yang baik. Di samping itu, strategi ini termasuk penapis intraday untuk mengelakkan kerugian yang disebabkan oleh turun naik intraday yang sengit.

Di samping itu, strategi ini sangat ringkas, ia melaksanakan logik teras dengan kod yang sangat sedikit, yang mudah difahami, diubah suai dan diperluas.

Analisis Risiko

Risiko utama strategi ini adalah bahawa penunjuk Supertrend mempunyai beberapa kelewatan, yang boleh membawa kepada kerugian tambahan.

Untuk mengurangkan risiko ini, disyorkan untuk mengoptimumkan parameter Supertrend mult dan len untuk mencari kombinasi parameter yang optimum. Penunjuk lain juga boleh diuji untuk melengkapkan Supertrend dan menggunakan lebih banyak faktor untuk meningkatkan kestabilan strategi.

Arahan pengoptimuman

Arah pengoptimuman utama untuk strategi ini termasuk:

  1. Uji pelbagai set parameter Supertrend untuk mencari kombinasi parameter yang optimum.

  2. Tambah penunjuk teknikal lain seperti corak candlestick, purata bergerak dan lain-lain untuk menapis isyarat dengan lebih banyak faktor.

  3. Mengoptimumkan dan menyesuaikan secara dinamik masa penentuan suku-suku intraday tertentu untuk mengurangkan penentuan suku-suku awal.

  4. Tambahkan mekanisme stop loss seperti stop loss peratusan tetap atau ATR stop loss.

  5. Uji nisbah penggunaan modal yang sesuai dan strategi ukuran kedudukan.

  6. Backtest tempoh masa yang lebih lama untuk mengesahkan ketahanan parameter.

Kesimpulan

Ringkasnya, strategi backtest multi-frame Supertrend ini sangat praktikal. Ia melaksanakan perdagangan multi-frame dengan penunjuk Supertrend yang mudah dan mengawal kerugian dengan penapis intraday. Terdapat ruang yang besar untuk pengoptimuman dan pengguna boleh menyesuaikan parameter atau menggabungkan dengan penunjuk teknikal lain mengikut keperluan mereka. Prestasi backtest juga agak stabil dan boleh dipercayai. Secara keseluruhan, strategi ini sesuai untuk perdagangan trend jangka menengah dan panjang, dan juga baik untuk pemula untuk belajar dan mengamalkan pengubahsuaian.


/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-04 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

//@Gurjant_Singh IISMA-Indian Institute of stock Market Analysis 

strategy("SupterTrend ", overlay=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=300, calc_on_order_fills=false, calc_on_every_tick=false)




mult = input(type=input.float, defval=3)
len = input(type=input.integer, defval=5)
[superTrend, dir] = supertrend(mult, len)



plot(superTrend)

intrady = input(false, "Do you want to exit intrday position", type = input.bool)

IntraDay_SquareOff = minute >= 45 and hour >= 14



buy = close > superTrend

sell = close < superTrend

if buy
    strategy.entry("Buy", true)
    
if sell
    strategy.entry("sell", false)

if intrady and IntraDay_SquareOff
    strategy.close("buy")
    strategy.close("sell")






Lebih lanjut