Strategi ini dinamakan
Strategi ini menggunakan kedua-dua penunjuk pusaran berganda dan indeks kekuatan sebenar (TSI). Penunjuk pusaran berganda terdiri daripada VI + dan VI- garis, yang mencerminkan besar momentum ke atas dan ke bawah masing-masing. TSI mempunyai garis merah dan biru mengukur kekuatan dan arah perubahan harga.
Apabila VI + meningkat dan VI- jatuh, yang menunjukkan penguatan momentum aliran naik dan melemahkan momentum aliran turun, penunjuk pusing ganda menghasilkan isyarat panjang. Jika pada masa yang sama, garis biru TSI melintasi di atas garis merah, TSI juga mengeluarkan isyarat panjang. Strategi akan membuka kedudukan panjang apabila kedua-dua penunjuk memberikan isyarat panjang secara serentak.
Sebaliknya, apabila VI + jatuh dan VI- meningkat, menandakan momentum menaik dan menguatkan momentum menurun, pusing ganda memberikan isyarat pendek. Jika garis biru TSI melintasi di bawah garis merah juga, TSI juga menghasilkan isyarat pendek. Strategi kemudian membuka kedudukan pendek apabila menerima isyarat pendek yang sejajar.
Dengan menggabungkan isyarat dari kedua-dua penunjuk dengan cara ini, strategi ini dapat mengenal pasti dan mengesan trend jangka menengah hingga panjang yang baru lahir. Isyarat keluar dihasilkan apabila trend berakhir. Oleh itu, strategi ini dapat menangkap pergerakan trend yang besar di pasaran.
Kelebihan utama strategi ini termasuk:
Terdapat juga beberapa risiko:
Beberapa cara untuk mengoptimumkan strategi termasuk:
Ringkasnya, strategi ini adalah pendekatan trend berikut jangka menengah hingga panjang yang sangat baik. Dengan memanfaatkan teknik penunjuk pusing ganda dan TSI, ia dapat mengenali trend jangka menengah hingga panjang yang muncul dengan boleh dipercayai. Dengan penyesuaian parameter yang betul, risiko setiap perdagangan dapat dikendalikan. Pengoptimuman lanjut dengan menggabungkan lebih banyak indikator dan teknik kawalan risiko akan membawa kepada prestasi yang lebih baik. Ia sesuai untuk pelabur yang berminat dalam perdagangan trend jangka menengah hingga panjang.
/*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")