Strategi ini bertujuan untuk memprediksi volatilitas pasar VIX melalui rumus Williams VIX repair, yang digabungkan dengan Stochastic RSI dan indikator keseimbangan multi-kamera. Dengan menangkap perbedaan multi-kepala yang tersembunyi, posisi pasar terbawah, untuk menentukan posisi yang tepat untuk titik balik pasar.
Strategi ini didasarkan pada formula Williams VIX correction dan penggunaan kombinasi Stochastic RSI dengan indikator RSI.
Pertama, nilai VIX untuk periode saat ini dihitung dengan rumus Williams VIX Repair. Rumus ini mengukur volatilitas dan indeks kepanikan pasar dengan menghitung rasio harga tertinggi dan terendah. Di sini, kita mengatur lintasan atas dan bawah di Brin Belt, di mana ketika nilai VIX lebih tinggi dari lintasan atas, itu menunjukkan peningkatan volatilitas pasar dan panik investor.
Kedua, strategi ini menggunakan kombinasi Stochastic RSI dengan indikator RSI. RSI digunakan untuk menilai kondisi overbought, Stoch RSI menggabungkan garis K dan garis D untuk menilai titik balik indikator RSI.
Akhirnya, strategi ini menggabungkan keduanya, menggunakan sinyal overbought Stoch RSI sebagai basis jual, dan dengan nilai VIX di bawah Bollinger Bands sebagai basis beli, untuk menangkap titik balik pasar.
Keuntungan terbesar dari strategi ini adalah kemampuan untuk menggabungkan dan memanfaatkan dua indikator yang berbeda.
Formula Williams VIX perbaikan dapat secara efektif mencerminkan pasar panik, Brin Belt up-down tren dinamis penyesuaian dapat beradaptasi dengan siklus yang berbeda; Indikator RSI Stokastik melalui K, D garis silang untuk mencapai penilaian RSI titik balik, untuk menghindari kesalahan penilaian.
Keduanya digunakan dalam kombinasi, dapat lebih akurat menentukan titik balik pasar, dan dapat menggunakan Stoch RSI untuk menentukan titik masuk tertentu, menghindari kesalahan, sementara indeks panik pasar melepaskan sinyal jual.
Strategi ini juga memiliki beberapa risiko:
Rumus perbaikan Williams VIX tidak dapat sepenuhnya mencerminkan sentimen panik pasar, dan pengaturan parameter Brin yang tidak tepat dapat menyebabkan sinyal yang salah.
Stoch RSI reversal signal juga mungkin salah, perlu kombinasi dengan indikator lain untuk verifikasi.
Strategi yang lebih konservatif, jika tidak mengikuti perkembangan cepat dapat menyebabkan kehilangan kesempatan.
Strategi penarikan diri mungkin lebih besar, perlu hati-hati mengatur manajemen posisi.
Ini membutuhkan parameter yang masuk akal untuk digunakan dalam strategi ini, dengan verifikasi yang didukung oleh indikator lain, dan dengan kontrol yang baik terhadap skala posisi untuk menghindari risiko.
Strategi ini dapat dipertimbangkan untuk dioptimalkan dari beberapa aspek:
Optimalkan parameter Williams VIX formula sehingga dapat lebih akurat mencerminkan tingkat kepanikan pasar. Anda dapat mempertimbangkan untuk menggabungkan indikator seperti sistem kesetaraan.
Mengoptimalkan parameter Stoch RSI, mencari kombinasi siklus K, D line yang lebih cocok, dan meningkatkan akurasi pembalikan.
Menambahkan mekanisme manajemen posisi, seperti pengaturan stop loss, atau menyesuaikan posisi berdasarkan dinamika tingkat penarikan / profitabilitas.
Dalam kombinasi dengan indikator lain, seperti MACD, KD, dan lain-lain, untuk mencapai verifikasi multi-indikator, mengurangi risiko kesalahan penilaian.
Menambahkan algoritma pembelajaran mesin, memanfaatkan model pelatihan data besar, mengoptimalkan parameter secara otomatis, meningkatkan stabilitas strategi.
Dengan mengoptimalkan beberapa poin di atas, strategi ini dapat secara signifikan meningkatkan efektivitas dan stabilitas dalam pertempuran.
Williams VIX strategi perbaikan dengan menangkap pasar panik dan stabilitas konversi, dan menggunakan Stoch RSI untuk menilai kapan masuk tertentu, untuk mencapai posisi yang efektif terhadap dasar pasar. Keuntungan strategi terletak pada kombinasi indikator digunakan, tetapi ada juga risiko tertentu.
/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//Divergence and Hidden Divergence correlating with the Money Flow Index
strategy("Vix FIX / StochRSI Strategy", pyramiding=9, initial_capital=10000, default_qty_type=strategy.percent_of_equity,overlay=false)
///////////// Stochastic Slow
Stochlength = input(14, minval=1, title="lookback length of Stochastic")
StochOverBought = input(80, title="Stochastic overbought condition")
StochOverSold = input(20, title="Stochastic oversold condition")
smoothK = input(3, title="smoothing of Stochastic %K ")
smoothD = input(3, title="moving average of Stochastic %K")
k = sma(stoch(close, high, low, Stochlength), smoothK)
d = sma(k, smoothD)
///////////// RSI
RSIlength = input( 14, minval=1 , title="lookback length of RSI")
RSIOverBought = input( 70 , title="RSI overbought condition")
RSIOverSold = input( 30 , title="RSI oversold condition")
RSIprice = close
vrsi = rsi(RSIprice, RSIlength)
///////////// Double strategy: RSI strategy + Stochastic strategy
pd = input(22, title="LookBack Period Standard Deviation High")
bbl = input(20, title="Bolinger Band Length")
mult = input(2.0 , minval=1, maxval=5, title="Bollinger Band Standard Devaition Up")
lb = input(50 , title="Look Back Period Percentile High")
ph = input(.85, title="Highest Percentile - 0.90=90%, 0.95=95%, 0.99=99%")
new = input(false, title="-------Text Plots Below Use Original Criteria-------" )
sbc = input(false, title="Show Text Plot if WVF WAS True and IS Now False")
sbcc = input(false, title="Show Text Plot if WVF IS True")
new2 = input(false, title="-------Text Plots Below Use FILTERED Criteria-------" )
sbcFilt = input(true, title="Show Text Plot For Filtered Entry")
sbcAggr = input(true, title="Show Text Plot For AGGRESSIVE Filtered Entry")
ltLB = input(40, minval=25, maxval=99, title="Long-Term Look Back Current Bar Has To Close Below This Value OR Medium Term--Default=40")
mtLB = input(14, minval=10, maxval=20, title="Medium-Term Look Back Current Bar Has To Close Below This Value OR Long Term--Default=14")
str = input(3, minval=1, maxval=9, title="Entry Price Action Strength--Close > X Bars Back---Default=3")
//Alerts Instructions and Options Below...Inputs Tab
new4 = input(false, title="-------------------------Turn On/Off ALERTS Below---------------------" )
new5 = input(false, title="----To Activate Alerts You HAVE To Check The Boxes Below For Any Alert Criteria You Want----")
sa1 = input(false, title="Show Alert WVF = True?")
sa2 = input(false, title="Show Alert WVF Was True Now False?")
sa3 = input(false, title="Show Alert WVF Filtered?")
sa4 = input(false, title="Show Alert WVF AGGRESSIVE Filter?")
//Williams Vix Fix Formula
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
lowerBand = midLine - sDev
upperBand = midLine + sDev
rangeHigh = (highest(wvf, lb)) * ph
//Filtered Bar Criteria
upRange = low > low[1] and close > high[1]
upRange_Aggr = close > close[1] and close > open[1]
//Filtered Criteria
filtered = ((wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and (wvf < upperBand and wvf < rangeHigh))
filtered_Aggr = (wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and not (wvf < upperBand and wvf < rangeHigh)
//Alerts Criteria
alert1 = wvf >= upperBand or wvf >= rangeHigh ? 1 : 0
alert2 = (wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and (wvf < upperBand and wvf < rangeHigh) ? 1 : 0
alert3 = upRange and close > close[str] and (close < close[ltLB] or close < close[mtLB]) and filtered ? 1 : 0
alert4 = upRange_Aggr and close > close[str] and (close < close[ltLB] or close < close[mtLB]) and filtered_Aggr ? 1 : 0
//Coloring Criteria of Williams Vix Fix
col = wvf >= upperBand or wvf >= rangeHigh ? lime : gray
isOverBought = (crossover(k,d) and k > StochOverBought) ? 1 : 0
isOverBoughtv2 = k > StochOverBought ? 1 : 0
filteredAlert = alert3 ? 1 : 0
aggressiveAlert = alert4 ? 1 : 0
plot(isOverBought, "Overbought / Crossover", style=line, color=red)
plot(filteredAlert, "Filtered Alert", style=line, color=fuchsia)
plot(aggressiveAlert, "Aggressive Alert", style=line, color=orange)
if (filteredAlert or aggressiveAlert)
strategy.entry("Long", strategy.long)
if (isOverBought)
strategy.close("Long")