KDJ算法 [开拓者 TB]
-
咨询内容:
书上的KDJ算法是需要算RSV的,但是我看TB的公式,好像没有算RSV,直接把RSV值当K值了,有人碰到过这样的问题么?
下面是TB的算法:
Params
Numeric Length(14);
Numeric SlowLength(3);
Numeric SmoothLength(3);
Vars
NumericSeries HighestValue;
NumericSeries LowestValue;
NumericSeries KValue;
Numeric SumHLValue;
Numeric SumCLValue;
Numeric DValue;
Begin
HighestValue = HighestFC(High, Length);
LowestValue = LowestFC(Low, Length);
SumHLValue = SummationFC(HighestValue-LowestValue,SlowLength);
SumCLValue = SummationFC(Close - LowestValue,SlowLength);
If(SumHLValue <> 0)
{
KValue = SumCLValue/SumHLValue*100;
}Else
{
KValue = 0;
}
DValue = AverageFC(KValue,SmoothLength);
。。。。。。
下面是我认为的算法:
Vars
//此处添加变量
NumericSeries HighestValue;
NumericSeries LowestValue;
NumericSeries KValue;
NumericSeries DValue;
NumericSeries JValue;
NumericSeries RsvValue;
Numeric SumHLValue;
Numeric SumCLValue;
String LogPath( "c:\\tmp\\KDJ_S3.txt");
Begin
HighestValue = HighestFC(High, Length);
LowestValue = LowestFC(Low, Length);
SumHLValue = SummationFC(HighestValue-LowestValue,SlowLength);
SumCLValue = SummationFC(Close - LowestValue,SlowLength);
If(SumHLValue <> 0)
{
RsvValue = SumCLValue/SumHLValue*100;
}Else
{
RsvValue = 0;
}
//当日K值=2/3×前一日K值+1/3×当日RSV
//当日D值=2/3×前一日D值+1/3×当日K值
KValue = 2.0/3.0*KValue[1] + 1.0/3.0*RsvValue;
DValue = 2.0/3.0*DValue[1] + 1.0/3.0*KValue ;
。。。。。。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容