Strategi Tren Multi Timeframe

Penulis:ChaoZhang, Tanggal: 2023-12-28 11:57:00
Tag:

img

Gambaran umum

Strategi ini menggunakan 4 jangka waktu yang berbeda untuk menentukan arah tren, untuk menemukan tren jangka panjang sambil menggunakan jangka pendek sebagai peluang masuk. Ketika harga buka dari 4 jangka waktu (harian, mingguan, 15 hari, bulanan) semuanya lebih rendah dari harga penutupan, itu ditentukan sebagai tren bullish jangka panjang; ketika harga buka dari 4 jangka waktu semuanya lebih tinggi dari harga penutupan, itu ditentukan sebagai tren bearish jangka panjang. Strategi akan membuka posisi ketika konfirmasi tren jangka panjang dan sinyal jangka pendek dihasilkan.

Logika Strategi

Strategi ini menggunakan 4 kerangka waktu: harian, mingguan, 15 hari dan bulanan.

Ketika harga buka dari jangka waktu harian, mingguan, 15 hari dan bulanan semuanya lebih rendah dari harga penutupan, ini menunjukkan bahwa harga menunjukkan tren kenaikan di empat jangka waktu ini, sehingga ditentukan sebagai pasar bull dan bullish jangka panjang.

Sebaliknya, ketika harga buka dari empat kerangka waktu ini semuanya lebih tinggi dari harga penutupan, ini menunjukkan bahwa harga menunjukkan tren penurunan di empat kerangka waktu ini, sehingga ditentukan sebagai pasar bearish dan bearish jangka panjang.

Setelah menentukan arah tren jangka panjang, strategi akan membuka posisi ketika sinyal beli / jual dihasilkan pada jangka pendek. yaitu, strategi ini menggunakan jangka panjang untuk menentukan tren utama dan jangka pendek untuk memutuskan peluang masuk tertentu.

Analisis Keuntungan

Strategi ini memiliki keuntungan berikut:

  1. Penghakiman multi-frame waktu meningkatkan akurasi

    Menggunakan empat kerangka waktu yang berbeda untuk menilai secara komprehensif tren jangka panjang dapat meningkatkan keakuratan penilaian dan menghindari ditipu oleh kebisingan pasar jangka pendek.

  2. Kombinasi strategi jangka panjang dan jangka pendek yang fleksibel

    Menggunakan kerangka jangka panjang untuk menentukan arah utama dan jangka pendek untuk menghasilkan sinyal perdagangan, strategi ini fleksibel, yang dapat menangkap peluang jangka pendek tanpa menyimpang dari tren utama.

  3. Parameter sederhana, mudah diterapkan

    Indikator penilaian utama dari strategi ini hanyalah harga buka dan tutup dari 4 kerangka waktu.

Analisis Risiko

Ada juga beberapa risiko dalam strategi ini:

  1. Pembalikan tren jangka panjang

    Jika tren bullish jangka panjang berbalik menjadi bearish jangka panjang, strategi ini tidak dapat segera menilai, yang dapat menyebabkan kerugian yang lebih besar.

  2. Kinerja jangka pendek yang buruk

    Strategi ini terutama bergantung pada sinyal jangka pendek untuk menentukan peluang masuk tertentu. Jika kinerja jangka pendek buruk dan tidak dapat membuka posisi pada waktu yang tepat, itu akan mempengaruhi kinerja keseluruhan. Parameter jangka pendek dapat disesuaikan atau strategi jangka pendek dapat dioptimalkan dalam hal ini.

Arahan Optimasi

Ada ruang optimasi lebih lanjut untuk strategi ini:

  1. Tambahkan strategi stop loss

    Pindah atau perintah stop loss dapat diatur untuk mengontrol kerugian maksimum.

  2. Mengoptimalkan strategi jangka pendek

    Indikator jangka pendek yang berbeda dapat diuji untuk menemukan strategi jangka pendek yang lebih cocok dan meningkatkan kinerja masuk.

  3. Sesuaikan posisi secara dinamis

    Posisi dapat disesuaikan secara dinamis berdasarkan volatilitas pasar, meningkatkan posisi ketika tren menjadi lebih jelas.

  4. Menggabungkan pembelajaran mesin

    Sejumlah besar data dapat dikumpulkan dan metode pembelajaran mesin dapat digunakan untuk mengoptimalkan parameter dan aturan secara dinamis.

Kesimpulan

Strategi ini menentukan arah tren di beberapa kerangka waktu, mengadopsi gagasan menggabungkan jangka panjang dan jangka pendek, yang memastikan penilaian tren utama dan memanfaatkan peluang jangka pendek. Logika keseluruhan jelas dan wajar, sederhana untuk diterapkan, dan merupakan strategi trend berikut yang efektif. Dengan pengenalan teknik seperti stop loss dan manajemen posisi dinamis, strategi ini memiliki ruang yang besar untuk perbaikan dan layak dipraktekkan dan dioptimalkan.


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

//@version=2
strategy("[RichG] Easy MTF Strategy", overlay=false)

TF_1_time = input("D", "Timeframe 1")
TF_2_time = input("5D", "Timeframe 2")
TF_3_time = input("15D", "Timeframe 3")
TF_4_time = input("45D", "Timeframe 4")

transaction_size = input(1, "Contract/Share Amount")

src = close, len = 20
out = sma(src, len)
width = 5
upcolor = green
downcolor = red
neutralcolor = blue
linestyle = line

TF_1 = request.security(syminfo.tickerid, TF_1_time, open) < request.security(syminfo.tickerid, TF_1_time, close) ? true:false
TF_1_color = TF_1 ? upcolor:downcolor

TF_2 = request.security(syminfo.tickerid, TF_2_time, open) < request.security(syminfo.tickerid, TF_2_time, close) ? true:false
TF_2_color = TF_2 ? upcolor:downcolor

TF_3 = request.security(syminfo.tickerid, TF_3_time, open) < request.security(syminfo.tickerid, TF_3_time, close) ? true:false
TF_3_color = TF_3 ? upcolor:downcolor


TF_4 = request.security(syminfo.tickerid, TF_4_time, open) < request.security(syminfo.tickerid, TF_4_time, close) ? true:false
TF_4_color = TF_4 ? upcolor:downcolor

TF_global = TF_1 and TF_2 and TF_3 and TF_4 
TF_global_bear = TF_1 == false and TF_2 == false and TF_3 == false and TF_4 == false
TF_global_color = TF_global ? green : TF_global_bear ? red : white
TF_trigger_width = TF_global ? 6 : width

plot(1, style=linestyle, linewidth=width, color=TF_1_color)
plot(5, style=linestyle, linewidth=width, color=TF_2_color)
plot(10, style=linestyle, linewidth=width, color=TF_3_color)
plot(15, style=linestyle, linewidth=width, color=TF_4_color)
plot(25, style=linestyle, linewidth=4, color=TF_global_color)    

exitCondition_Long = TF_global_bear
exitCondition_Short = TF_global

longCondition = TF_global
if (longCondition)
    strategy.entry("MTF_Long", strategy.long, qty=transaction_size, when=strategy.position_size == 0)

shortCondition = TF_global_bear
if (shortCondition)
    strategy.entry("MTF_Short", strategy.short, qty=transaction_size, when=strategy.position_size == 0)
    
strategy.close("MTF_Long", when=exitCondition_Long)    
strategy.close("MTF_Short", when=exitCondition_Short)


Lebih banyak