//------------------------------------------------------------------------
// 简称: SJ1
// 名称:
// 类别: 公式应用
// 类型: 用户应用
// 输出:
//------------------------------------------------------------------------
Params
Numeric Length(14);
Numeric SlowLength(3);
Numeric SmoothLength(3);
Vars
Series<Numeric> HighestValue;
Series<Numeric> LowestValue;
Series<Numeric> KValue;
Series<Numeric> JValue;
Numeric SumHLValue;
Numeric SumCLValue;
Numeric DValue;
Events
OnReady()
{
SetBackBarMaxCount(1+Max(Max(Length,SlowLength),SmoothLength));
}
OnBar(ArrayRef<Integer> indexs)
{
//kdj指标
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);
JValue = 3*KValue - 2*DValue;
/*
PlotNumeric(K,KValue);
PlotNumeric(D,DValue);
PlotNumeric(J,JValue);
PlotNumeric(Ref1,20);
PlotNumeric(Ref2,80);
*/
}
//J线上穿K线,金叉做多
If(MarketPosition !=1 and JValue[2] <= KValue[2] and JValue[1] > KValue[1])
{
Buy(1,Open);
}
//J线下穿K线,死叉做空
If(MarketPosition ==1 and JValue[2] >= KValue[2] and JValue[1] < KValue[1])
{
SellShort(1,Open);
}
}
//------------------------------------------------------------------------
// 编译版本 GS2015.12.25
// 用户版本 2019/11/26 14:37:17
// 版权所有 taiyueyh04
// 更改声明 TradeBlazer Software保留对TradeBlazer平台
// 每一版本的TradeBlazer公式修改和重写的权利
//------------------------------------------------------------------------