Strategi ini menggunakan metode nilai ekstrim untuk menghitung volatilitas statistik, juga dikenal sebagai volatilitas historis. Ini mengukur volatilitas berdasarkan nilai ekstrim harga tertinggi, harga terendah dan harga dekat, dikombinasikan dengan faktor waktu. Volatilitas mencerminkan fluktuasi harga aset. Strategi akan membuat perdagangan panjang atau pendek yang sesuai ketika volatilitas lebih tinggi atau lebih rendah dari ambang batas.
SqrTime = sqrt(253 / Length)
Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5
pos = iff(nRes > TopBand, 1,
iff(nRes < LowBand, -1, nz(pos[1], 0)))
Keuntungan utama dari strategi ini adalah:
Risiko utama dari strategi ini adalah:
Tindakan dan solusi:
Arah optimasi untuk strategi ini:
Strategi ini menggunakan metode nilai ekstrim untuk menghitung volatilitas statistik, dan menghasilkan sinyal perdagangan dengan menangkap anomali volatilitas. Dibandingkan dengan indikator sederhana seperti garis rata-rata bergerak, ini lebih mencerminkan volatilitas pasar dan menangkap pembalikan. Sementara itu, algoritma metode nilai ekstrim juga membuat hasilnya lebih stabil dan dapat diandalkan. Melalui penyesuaian parameter dan optimalisasi, strategi ini dapat beradaptasi dengan kondisi pasar yang berbeda, dan logika perdagangan dan indikator volatilitas statistiknya layak penelitian dan aplikasi lebih lanjut.
/*backtest start: 2022-12-19 00:00:00 end: 2023-12-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 22/11/2014 // This indicator used to calculate the statistical volatility, sometime // called historical volatility, based on the Extreme Value Method. // Please use this link to get more information about Volatility. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Statistical Volatility - Extreme Value Method ", shorttitle="Statistical Volatility Backtest") Length = input(30, minval=1) TopBand = input(0.005, step=0.001) LowBand = input(0.0016, step=0.001) reverse = input(false, title="Trade reverse") hline(TopBand, color=red, linestyle=line) hline(LowBand, color=green, linestyle=line) xMaxC = highest(close, Length) xMaxH = highest(high, Length) xMinC = lowest(close, Length) xMinL = lowest(low, Length) SqrTime = sqrt(253 / Length) Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5 nRes = iff(Vol < 0, 0, iff(Vol > 2.99, 2.99, Vol)) pos = iff(nRes > TopBand, 1, iff(nRes < LowBand, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=blue, title="Statistical Volatility")