
Strategi ini menggunakan kaedah terhad untuk mengira kadar turun naik statistik, yang juga dikenali sebagai kadar turun naik sejarah. Ia berdasarkan nilai tertinggi, harga terendah, harga penutupan, dengan faktor masa, untuk mengira kadar turun naik statistik. Kadar turun naik ini mencerminkan turun naik harga aset.
Mengira harga tertinggi, harga terendah, dan harga penutupan dalam tempoh masa tertentu
Menggunakan formula nilai ekstrem untuk mengira kadar turun naik statistik
SqrTime = sqrt(253 / Length)
Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5
Bandingkan kadar turun naik dengan paras yang ditetapkan untuk menghasilkan isyarat dagangan
pos = iff(nRes > TopBand, 1,
iff(nRes < LowBand, -1, nz(pos[1], 0)))
Melabur atau berkurangan mengikut isyarat dagangan
Kelebihan utama strategi ini ialah:
Risiko utama strategi ini ialah:
Kaedah pencegahan dan penyelesaian:
Kaedah untuk mengoptimumkan strategi ini:
Strategi ini menggunakan kaedah nilai ekstrem untuk mengira kadar turun naik statistik, menghasilkan isyarat perdagangan dengan menangkap pergerakan kadar turun naik. Ia lebih dapat mencerminkan turun naik pasaran, menangkap pembalikan berbanding dengan rata-rata bergerak sederhana. Pada masa yang sama, algoritma nilai ekstrem juga menjadikan hasilnya lebih stabil dan boleh dipercayai.
/*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")