Strategi Penjejakan Trend Purata Bergerak Hull Berdasarkan TSI dan CCI
Gambaran Keseluruhan
Strategi ini menggabungkan tiga penunjuk: Indeks Kekuatan Relatif (TSI), Indeks Laluan Komoditi (CCI) dan Purata Bergerak Hull (Hull MA) untuk membentuk strategi perdagangan mengikut arah aliran. Ia boleh digunakan untuk perdagangan jangka panjang pada mana-mana pasangan dagangan dalam jangka masa 1 jam atau lebih tinggi.
Prinsip Strategi
Strategi ini terutamanya menggunakan penunjuk TSI dan CCI untuk menilai arah aliran pasaran serta keadaan terlebih beli/terlebih jual, dan Hull MA untuk menentukan arah aliran pertengahan harga. Ketiga-tiga penunjuk ini digabungkan sebagai syarat asas untuk membuka posisi.
Secara khususnya, apabila garis pantas TSI melintasi ke atas garis perlahan, dan penunjuk CCI melintasi ke atas +20 serta n1 meningkat, maka posisi beli dibuka; apabila garis pantas TSI melintasi ke bawah garis perlahan, dan penunjuk CCI melintasi ke bawah -20 serta n1 menurun, maka posisi jual dibuka. Hull MA digunakan untuk menapis arah aliran pertengahan – hanya apabila harga berada di bawah Hull MA, posisi beli dibuka; hanya apabila harga berada di atas Hull MA, posisi jual dibuka.
Melalui pengesahan pelbagai penunjuk kitaran masa yang berbeza, strategi ini dapat menapis penembusan palsu dengan berkesan dan mengikuti arah aliran jangka sederhana dan panjang.
Analisis Kelebihan
Strategi ini adalah strategi mengikut arah aliran yang agak stabil dan cekap, dengan kelebihan utama seperti berikut:
-
Penggunaan TSI untuk menilai arah aliran jangka panjang adalah lebih dipercayai, mengelakkan gangguan bunyi pasaran jangka pendek;
-
Penambahan penunjuk CCI membolehkan pengesahan keadaan terlebih beli/terlebih jual, menapis sebahagian isyarat palsu;
-
Penggunaan Hull MA menjadikan titik kemasukan lebih tepat, meningkatkan kebarangkalian keuntungan secara signifikan;
-
Integrasi pelbagai penunjuk dengan parameter berbeza meningkatkan kebolehpercayaan isyarat dan mengurangkan kebarangkalian gangguan;
-
Tetapan parameter strategi adalah fleksibel, membolehkan pengoptimuman untuk kitaran pasaran yang berbeza.
Analisis Risiko
Walaupun strategi ini agak stabil, masih terdapat risiko tertentu yang perlu diberi perhatian:
-
Keadaan pasaran mungkin berbalik secara mendadak, menyebabkan kerugian besar jika stop loss tidak dilaksanakan dengan cepat;
-
Kedua-dua TSIDiff dan penunjuk CCI mungkin menghasilkan isyarat palsu dan ketinggalan, menyebabkan kehilangan sebahagian titik kemasukan;
-
Tetapan parameter yang tidak sesuai juga boleh menyebabkan frekuensi dagangan terlalu tinggi atau kualiti isyarat menurun.
Langkah-langkah mengatasi:
-
Laraskan tahap stop loss dengan sewajarnya untuk mengawal kerugian setiap perdagangan;
-
Gunakan penunjuk lain untuk pengesahan tambahan mengikut keperluan bagi meningkatkan kadar ketepatan isyarat;
-
Laraskan parameter mengikut keadaan pasaran untuk memastikan kestabilan strategi.
Arah Pengoptimuman
Strategi ini boleh dioptimumkan lagi dari beberapa aspek berikut:
-
Cuba pelbagai kombinasi parameter penunjuk untuk mencari padanan penunjuk yang terbaik;
-
Menambah algoritma pembelajaran mesin untuk mencapai pengoptimuman parameter secara adaptif;
-
Menambah modul pengurusan modal untuk menjadikan keuntungan lebih stabil;
-
Menggabungkan lebih banyak penapis untuk meningkatkan kadar kemenangan strategi.
Ini akan menjadi fokus pengoptimuman pada masa hadapan.
Rumusan
Strategi ini menggunakan gabungan tiga penunjuk TSI, CCI dan Hull MA untuk membentuk strategi mengikut arah aliran yang agak stabil dan cekap. Ia berjaya memanfaatkan kelebihan penunjuk pelbagai jangka masa, meningkatkan kualiti isyarat. Langkah seterusnya akan meningkatkan kestabilan dan keuntungan strategi melalui pengoptimuman parameter, penambahan penapis, dan lain-lain.
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="TSI CCI Hull", shorttitle="TSICCIHULL", default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills= false, calc_on_every_tick=true, pyramiding=0)
long = input(title="Long Length", type=input.integer, defval=50)- 1

