
Strategi ini dinamakan sebagai strategi pengesanan trend yang menggabungkan indikator kekuatan sebenar dengan indikator kekuatan sebenar. Strategi ini dilakukan dengan menggunakan indikator kekuatan sebenar dan indikator kekuatan sebenar secara serentak, melakukan shorting tambahan ketika mereka mengeluarkan isyarat beli dan jual, dan keluar dari kedudukan rata selepas jangka masa tertentu untuk menangkap trend garis tengah.
Strategi ini menggunakan kedua-dua penunjuk binari dan penunjuk kekuatan sebenar. Penunjuk binari terdiri daripada dua garis VI + dan VI - yang mencerminkan kekuatan kenaikan dan penurunan harga. Penunjuk kekuatan sebenar terdiri daripada garis merah TSI dan garis biru TSI, yang mengukur kekuatan dan arah perubahan harga.
Apabila VI+ meningkat dan VI- menurun, indikator biner akan mengeluarkan banyak isyarat. Pada masa ini, jika garis biru TSI juga melintasi garis merah, maka indikator kekuatan sebenar juga akan mengeluarkan banyak isyarat. Apabila kedua-dua indikator mengeluarkan banyak isyarat pada masa yang sama, ia akan membuka banyak kedudukan.
Sebaliknya, apabila VI + uptrend melemah dan VI - downtrend menguat, penunjuk biner akan mengeluarkan isyarat kosong. Pada masa ini jika garis biru TSI juga turun melalui garis merah, maka penunjuk kekuatan sebenar akan mengeluarkan isyarat kosong. Apabila kedua-dua penunjuk mengeluarkan isyarat kosong pada masa yang sama, ia akan membuka kedudukan kosong.
Dengan kombinasi seperti itu, anda boleh membuka kedudukan apabila trend garis tengah panjang mula terbentuk dan menjejaki trend tersebut. Apabila trend berakhir, penunjuk juga akan mengeluarkan isyarat kedudukan kosong. Oleh itu, strategi ini dapat menangkap dengan berkesan pergerakan trend garis tengah panjang harga.
Strategi ini mempunyai beberapa kelebihan:
Penapisan dua arah dapat meningkatkan kebolehpercayaan isyarat dan mengelakkan isyarat palsu.
Menggunakan indikator garis panjang dan tengah, anda boleh mengikuti trend yang lebih besar. Indikator garis pendek mudah terganggu oleh bunyi pasaran dan terlepas trend besar.
Dengan penyesuaian parameter, anda boleh menyesuaikan tempoh pegangan strategi secara fleksibel. Anda boleh membiarkan strategi mengikuti trend sambil mengawal kerugian tunggal.
Mengambil kira trend dan mengawal risiko. Penunjuk boleh mengenal pasti trend dengan berkesan, dan mengawal risiko dengan menetapkan keluar dari band.
Strategi ini mempunyai beberapa risiko:
Garis panjang tengah memegang kedudukan, mudah mengalami kemusnahan pergerakan gegaran. Anda boleh memendekkan kawasan keluar dengan sewajarnya, atau menyesuaikan kemusnahan untuk bertindak balas.
Kombinasi dua indikator adalah kemungkinan terdapat isyarat palsu. Indikator lain boleh diperkenalkan untuk pengesahan, atau menyesuaikan parameter.
Kelemahan yang rendah, wang digunakan semasa memegang kedudukan panjang dan sederhana. Anda boleh menyesuaikan saiz kedudukan dengan sewajarnya untuk mengoptimumkan kecekapan penggunaan wang.
Bergantung pada trend. Dalam keadaan yang bergolak, anda harus mengurangkan saiz kedudukan anda untuk mengelakkan kerugian yang tidak perlu.
Strategi ini juga boleh dioptimumkan dalam beberapa aspek:
Menambah kombinasi penunjuk lain, membentuk penapis pelbagai penunjuk, dapat meningkatkan kualiti isyarat lebih lanjut.
Pengaturan parameter yang dioptimumkan supaya parameter penunjuk lebih sesuai dengan ciri-ciri pelbagai jenis.
Menambah mekanisme pengurusan kedudukan dinamik, meningkatkan kedudukan dalam keadaan trend, mengurangkan kedudukan dalam keadaan gegaran.
Meningkatkan strategi penutupan kerugian, mengawal risiko dengan cara seperti penutupan bergerak, penutupan skala.
Menggabungkan teori gelombang, mengenal pasti arah trend berpotensi pada tahap yang lebih besar sebagai syarat penapisan arah.
Menggunakan kaedah pembelajaran mesin untuk mengoptimumkan parameter dan peraturan perdagangan secara automatik, menjadikan strategi lebih mudah disesuaikan.
Strategi ini secara keseluruhan merupakan strategi pengesanan trend garis tengah yang sangat baik. Ia menggunakan indikator binari dan indikator kekuatan sebenar untuk memainkan kelebihan teknikal masing-masing, saling mengesahkan isyarat, dan dapat mengenal pasti pembentukan trend garis tengah harga dengan berkesan. Dengan penyesuaian parameter yang sesuai, risiko perdagangan tunggal dapat dikendalikan.
/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © hydrelev
//@version=4
strategy("Vortex TSI strategy", overlay=false)
///////////////////INDICATOR TSI
long = input(title="Long Length", type=input.integer, defval=25)
short = input(title="Short Length", type=input.integer, defval=13)
signal = input(title="Signal Length", type=input.integer, defval=13)
price = close
double_smooth(src, long, short) =>
fist_smooth = ema(src, long)
ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_blue = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi_red = ema(tsi_blue, signal)
// plot(tsi_blue, color=#3BB3E4)
// plot(tsi_red, color=#FF006E)
// hline(0, title="Zero")
/////////////////INDICATOR VI
period_ = input(14, title="Period", minval=2)
VMP = sum( abs( high - low[1]), period_ )
VMM = sum( abs( low - high[1]), period_ )
STR = sum( atr(1), period_ )
VIP_blue = VMP / STR
VIM_red = VMM / STR
// plot(VIP_blue, title="VI +", color=#3BB3E4)
// plot(VIM_red, title="VI -", color=#FF006E)
////////////////////STRATEGY
bar=input(1, title="Close after x bar", minval=1, maxval=50)
tsi_long = crossover(tsi_blue, tsi_red)
tsi_short = crossunder(tsi_blue, tsi_red)
vi_long = crossover(VIP_blue, VIM_red)
vi_short = crossunder(VIP_blue, VIM_red)
LongConditionOpen = tsi_long and vi_long ? true : false
LongConditionClose = tsi_long[bar] and vi_long[bar] ? true : false
ShortConditionOpen = tsi_short and vi_short ? true : false
ShortConditionClose = tsi_short[bar] and vi_short[bar] ? true : false
if (LongConditionOpen)
strategy.entry("Long Entry", strategy.long)
if (LongConditionClose)
strategy.close("Long Entry")
if (ShortConditionOpen)
strategy.entry("Short Entry", strategy.short)
if (ShortConditionClose)
strategy.close("Short Entry")