KDJ中为何有SummationFC函数? [开拓者 TB]
-
咨询内容:
//------------------------------------------------------------------------
// 简称: KDJ
// 名称: 快速随机指数
// 类别: 公式应用
// 类型: 内建应用
//------------------------------------------------------------------------
Params
Numeric Length(14);
Numeric SlowLength(3);
Numeric SmoothLength(3);
Vars
Series<Numeric> HighestValue;
Series<Numeric> LowestValue;
Series<Numeric> KValue;
Numeric SumHLValue;
Numeric SumCLValue;
Numeric DValue;
Events
OnBar(ArrayRef<Integer> indexs)
{
Range[0:DataSourceSize() - 1]
{
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);
PlotNumeric("K",KValue);
PlotNumeric("D",DValue);
PlotNumeric("J",3*KValue - 2*DValue);
PlotNumeric("Ref1",20);
PlotNumeric("Ref2",80);
}
}
//------------------------------------------------------------------------
// 编译版本 GS2010.12.08
// 版权所有 TradeBlazer Software 2003-2025
// 更改声明 TradeBlazer Software保留对TradeBlazer平
// 台每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------我理解的KDJ意思是,先求出最高值,再求出最低值,就可以计算RSV(t)=100*(C(t)-L(t))/(H(t)-L(t))。
K(t)=(RSV(t)*SlowLength+RSV(t-1)(1-SlowLength))/SlowLength,也就是用了SMA,
但公式里为何有求和的计算?公式如下
SumHLValue = SummationFC(HighestValue-LowestValue,SlowLength);
SumCLValue = SummationFC(Close - LowestValue,SlowLength);意思是求出最近SlowLength天的C-L,H-L,然后分别求和,再相除得到的K?不理解公式里的含义。
来源:CXH99.COM
-
TBQuant技术回复:
TB的KDJ公式和其他软件有点不一样,但总体结果相差不大。如果您觉得其他软件的计算公式更好,可以照着TB KDJ的样子改写一个。
有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友
可联系技术人员 QQ: 262069696 或微信号:cxh99cxh99 进行 有偿收费 编写!
(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)
相关文章
-
没有相关内容