编程思路破译
赋值: 1日前的收盘价
RSI1赋值:收盘价-LC和0的较大值的6日[1日权重]移动平均/收盘价-LC的绝对值的6日[1日权重]移动平均*100
RSI2赋值:收盘价-LC和0的较大值的12日[1日权重]移动平均/收盘价-LC的绝对值的12日[1日权重]移动平均*100
RSI3赋值:收盘价-LC和0的较大值的24日[1日权重]移动平均/收盘价-LC的绝对值的24日[1日权重]移动平均*100
输出RSI:RSI1-RSI3, ,线宽为0
GA2赋值:上次1日前的"KDJ的K"(9,3,3)上穿"KDJ的D"(9,3,3)距今天数
GB2赋值:GA2+1日前的收盘价>收盘价 AND GA2+1日前的"KDJ的K"(9,3,3)收盘价 AND GA3+1日前的"RSI.RSI1"(6,12,24)0,返回1,否则返回0,画红色,
输出RSI底背离:如果GB3>0,返回1,否则返回0,画黄色,
输出KDJ顶背离:如果GD2>0,返回0.1,否则返回0,画蓝色,
输出RSI顶背离:如果GD3>0,返回0.1,否则返回0,画绿色,
当满足条件GB2>0时,在-25和0位置之间画柱状线,宽度为5,0不为0则画空心柱.,画红色
当满足条件GB3>0时,在-25和0位置之间画柱状线,宽度为5,0不为0则画空心柱.,画黄色
当满足条件GD2>0时,在25和0位置之间画柱状线,宽度为5,0不为0则画空心柱.,画蓝色
当满足条件GD3>0时,在25和0位置之间画柱状线,宽度为5,0不为0则画空心柱.,画绿色
程序源码
LC := REF(C,1);
RSI1:=SMA(MAX(C-LC,0),6,1)/SMA(ABS(C-LC),6,1)*100;
RSI2:=SMA(MAX(C-LC,0),12,1)/SMA(ABS(C-LC),12,1)*100;
RSI3:=SMA(MAX(C-LC,0),24,1)/SMA(ABS(C-LC),24,1)*100;
RSI:RSI1-RSI3, ,;
GA2:=(REF(CROSS("KDJ.K"(9,3,3),"KDJ.D"(9,3,3)),1));
GB2:=REF(C,GA2+1)>C AND REF("KDJ.K"(9,3,3),GA2+1)C AND REF("RSI.RSI1"(6,12,24),GA3+1)0,1,0),,;
RSI底背离:IF(GB3>0,1,0),,;
KDJ顶背离:IF(GD2>0,0.1,0),,;
RSI顶背离:IF(GD3>0,0.1,0),,;
(GB2>0,-25,0,5,0),;
(GB3>0,-25,0,5,0),;
(GD2>0,25,0,5,0),;
(GD3>0,25,0,5,0),;
注:
馆内各种公式为学习编程而保存,实战使用前一定要看其中是否有未来函数并自己亲自测试成功率,决不能依据公式名称的描述和形容去投资,据此入市造成投资损失由投资者自己承担。
发文不易,如获益,欢迎赞赏,赞赏必复!
有话要说...