写了半天,还以为指标差不多写完了,谁知道,仔细一看,还有很多没见过的,或者没听过的指标。就今天要写的RVI,TB系统叫相对波动指标,百度叫相对活力指数指标,我是真没接触过。回想第一次做交易,也就只会看看移动均线跟MACD,没办法,这是每个图表一般都自带的,依据这两来来回回做了一年多,不亏不赢,把心里憋的难受。从那时起就研究各个指标了,但也没发现有这么多指标的,研究半天,交易结果也还是这样。最后没办法,听说程序化交易不错,又来这研究怎么做程序化,这才慢慢了解了什么是盈亏比,什么是成功率,还有什么风险的,发现了还是利用概率来比较适合我的操作风格。比如成功率25%,盈亏比1:3,结果就不错了。找到了适合自己的交易方法,这结果才慢慢好起来的。
算了,又墨迹半天,还是来说这RVI指标吧,这指标涉及两函数,一个是求标准差函数StandardDev,另一个是估计方差函数VariancePS。这两个在解说Bool时,都已详细解读过了,现在也不再重复了,我直接把代码附下面了。
第一个估计方差函数VariancePS,代码如下:
Params
NumericSeries Price(1);
Numeric Length(10);
Numeric DataType(1);
Vars
Numeric Divisor;
Numeric SumSqr(0);
Numeric Mean;
Numeric i;
Begin
Divisor = Length-1;
If(DataType==1)
Divisor = Length;
If(Divisor > 0)
{
Mean = Average(Price, Length);
for i = 0 to Length - 1
{
SumSqr = SumSqr + Sqr( Price[i] - Mean ) ;
}
Return SumSqr / Divisor ;
}Else
{
Return 0;
}
End
第二个求标准差函数StandardDev,代码如下:
Params
NumericSeries Price(1);
Numeric Length(10);
Numeric DataType(1);
Vars
Numeric VarPSValue;
Begin
VarPSValue = VariancePS(Price, Length, DataType);
If (VarPSValue > 0)
{
Return Sqrt(VarPSValue);
}Else
{
Return 0;
}
End
最后就是真正的RVI指标代码了,解读如下:
Params
Numeric StdLength(10);//声明数值参数StdLength,初值为10.//
Numeric Length(14); //声明数值参数Length,初值为14.//
Numeric MidLine(50);//声明数值参数MidLine,初值为50。//
Vars
Numeric StdValue;//声明数值变量StdValue。//
Numeric RVIUp;//声明数值变量,RVIUp。//
Numeric RVIDn;//声明数值变量RVIDn。//
Numeric RVIValue(50);//声明数值变量RVIValue,初值为50.//
Begin
StdValue = StandardDev(Close, StdLength);//把收盘价,参数StdLength返回求标准差函数StandardDev求值,所得值返回来赋值给变量StdValue。//
RVIUp = AverageFC(IIF(C>Close[1],StdValue,0),Length);//这先判断IIF里的,假如当前收盘价大于前一个k线收盘价成立,则取变量StdValue值,否则,取0。判断完这,再把值,跟参数Length值,返回求快速均值函数AverageFC求值,所得值就是变量RVIUp值了。//
RVIDn = AverageFC(IIF(C
If(RVIUp + RVIDn <> 0)//假如变量RVIUp + 变量RVIDn不等于0.//
RVIValue = RVIUp/(RVIUp + RVIDn) * 100 ;//把上面求得的值直接代入公式了,这就可以算出真正变量RVIValue值了。//
PlotNumeric("RVI",RVIValue);//画线RVI线,值为变量RVIValue值。//
PlotNumeric("中轴线",MidLine);//画中轴线,值为50了。//
End
百度了一下,相对活力指数RVI的研判方法:
1、当RVI大于50时,可以买入。
2、当RVI小于50时,可以卖出。
3、RVI指标一般作为辅助指标使用。
这指标都说是当成辅助指标使用了,辅助意思就是要有一个主系统,再用这指标辅助判断了。在这我也就不写什么程序化交易代码了,因为我基本不认识这个指标的,写出来也没什么意思的。