西南航空 行李托运:指标编写小常识,小技巧--金死叉之间的最大值求法
来源:百度文库 编辑:九乡新闻网 时间:2024/05/05 12:33:12
金死叉之间的最大值求法:
A1:=CROSS("MACD.MACD",0);
A2:=BARSLAST(A1);
A3:=HHVBARS("MACD.MACD" ,A2+1);
A4:=BACKSET(REF(A3>=1,1) AND "MACD.MACD"<0,A3);
A5:=BACKSET(REF(A4=0,1) AND A4=1,2);
高值:IF(FILTER(A5,2),"MACD.MACD",0);
DRAWICON(高值>0,高值,4);
金死叉之间的最小值求法:
B1:=CROSS(0,"MACD.MACD");
B2:=BARSLAST(B1);
B3:=LLVBARS("MACD.MACD" ,B2+1);
B4:=BACKSET(REF(B3>=1,1) AND "MACD.MACD">0,B3);
B5:=BACKSET(REF(B4=0,1) AND B4=1,2);
低值:IF(FILTER(B5,2),"MACD.MACD",0);
DRAWICON(低值<0,低值,5);
时间周期线(主图叠加)
INPUT:N(5,5,100);//参数定义
ZIG(1,N);//高点
FF:=PEAKBARS(1,N,1);
FF:=IF(FF<6,PEAKBARS(1,N,2),FF);
BARST:=SYSPARAM(1);
VARIABLE:ZQ[序列数据量/2]:=1.236;
ZQ[2]:=1.309;
ZQ[3]:=1382;
ZQ[4]:=1.5;
ZQ[5]:=1.618;
ZQ[6]:=1.746;
ZQ[7]:=2;
ZQ[8]:=2.618;
ZQ[9]:=3;
ZQ[10]:=3.236;
ZQ[11]:=4.236;
ZQ[12]:=5.236;//周期线间隔比例,可另行定义
TJ:=FF[BARST]=BARST-BARPOS;
FOR I=1 TO 12 DO TJ:=TJ OR BARPOS-BARST=ROUND((ZQ-1)*FF[BARST]+0.5);
VERTLINE(TJ),POINTDOT,COLORMAGENTA;
必须打开十字光标才可以正常使用。自动寻找高点,可另加参数,改成高低点两用。
公式含义:当K线与高点的时间间隔为十字光标与高点的时间间隔的等于指定比例时,显示竖线。即所谓的时间预测,如果您有好的测试方法,可以仿此代码编制。
这段代码,进行适当的改造,可以向未来延伸,有兴趣的可以自行研究(提示:使用SHIFT函数)。
向前赋值函数的高级用法
问题:如何在最后一根K线的前第6天,作上标记?
1、先建立一个名为BACKSET-TEST的公式,代码如下:
ISLASTBAR{该周期是否最后一个周期。最后一个周期返回值为1,其余为0}
观察指标线的图形,正如注释所述,最后一天显示为1,这个1我们可理解为信号(条件)成立。其余时间,指标的数值为0,可理解为信号(条件)不成立。
2、巧用BACKSET()函数:
1BACDSET(X,N)注释:向前赋值,若X非0则把当前周期及前N-1周期的数值设置为1;
2示例:把信号向前移。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:BACKSET(TJ1,6);
观察TJ2指标线图,发现最后6天的TJ2信号都是1,即一个高度为1的矩形。公式中,还无法判断哪天是倒数第6天。
3、显然倒数第6天,是上面矩形的前沿,如何在公式中,表达这个矩形的前沿?
容易想到的办法:
1倒数第6天的当天,TJ2为1,更早的1天TJ2=0,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2 AND REF(TJ2,1)=0;
2倒数第6天的当天,TJ2为1,更早的1天TJ2=0,即当天TJ2比早一天的TJ2更大,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2>REF(TJ2,1);
3倒数第6天的当天,TJ2为1,更早的1天TJ2=0,可以想像为TJ2指标线上穿了一条高度为0.5的水平线,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:CROSS(TJ2,0.5);
4巧用FILTER()过滤函数,FILTER(X,N),若X非0,可以让X保持当天的值不变,且过滤其后N个周期使之数值为0。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:FILTER(TJ2,5);{第1次的TJ2保持为1不变,其后的5个周期过滤为0}
这样就初步找到了4种方法,可以标记倒数第6天,若想用图标来标记的话,代码例举如下:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:=TJ2>REF(TJ2,1);
DRAWICON(TJ3,L,1);
A1:=CROSS("MACD.MACD",0);
A2:=BARSLAST(A1);
A3:=HHVBARS("MACD.MACD" ,A2+1);
A4:=BACKSET(REF(A3>=1,1) AND "MACD.MACD"<0,A3);
A5:=BACKSET(REF(A4=0,1) AND A4=1,2);
高值:IF(FILTER(A5,2),"MACD.MACD",0);
DRAWICON(高值>0,高值,4);
金死叉之间的最小值求法:
B1:=CROSS(0,"MACD.MACD");
B2:=BARSLAST(B1);
B3:=LLVBARS("MACD.MACD" ,B2+1);
B4:=BACKSET(REF(B3>=1,1) AND "MACD.MACD">0,B3);
B5:=BACKSET(REF(B4=0,1) AND B4=1,2);
低值:IF(FILTER(B5,2),"MACD.MACD",0);
DRAWICON(低值<0,低值,5);
时间周期线(主图叠加)
INPUT:N(5,5,100);//参数定义
ZIG(1,N);//高点
FF:=PEAKBARS(1,N,1);
FF:=IF(FF<6,PEAKBARS(1,N,2),FF);
BARST:=SYSPARAM(1);
VARIABLE:ZQ[序列数据量/2]:=1.236;
ZQ[2]:=1.309;
ZQ[3]:=1382;
ZQ[4]:=1.5;
ZQ[5]:=1.618;
ZQ[6]:=1.746;
ZQ[7]:=2;
ZQ[8]:=2.618;
ZQ[9]:=3;
ZQ[10]:=3.236;
ZQ[11]:=4.236;
ZQ[12]:=5.236;//周期线间隔比例,可另行定义
TJ:=FF[BARST]=BARST-BARPOS;
FOR I=1 TO 12 DO TJ:=TJ OR BARPOS-BARST=ROUND((ZQ-1)*FF[BARST]+0.5);
VERTLINE(TJ),POINTDOT,COLORMAGENTA;
必须打开十字光标才可以正常使用。自动寻找高点,可另加参数,改成高低点两用。
公式含义:当K线与高点的时间间隔为十字光标与高点的时间间隔的等于指定比例时,显示竖线。即所谓的时间预测,如果您有好的测试方法,可以仿此代码编制。
这段代码,进行适当的改造,可以向未来延伸,有兴趣的可以自行研究(提示:使用SHIFT函数)。
向前赋值函数的高级用法
问题:如何在最后一根K线的前第6天,作上标记?
1、先建立一个名为BACKSET-TEST的公式,代码如下:
ISLASTBAR{该周期是否最后一个周期。最后一个周期返回值为1,其余为0}
观察指标线的图形,正如注释所述,最后一天显示为1,这个1我们可理解为信号(条件)成立。其余时间,指标的数值为0,可理解为信号(条件)不成立。
2、巧用BACKSET()函数:
1BACDSET(X,N)注释:向前赋值,若X非0则把当前周期及前N-1周期的数值设置为1;
2示例:把信号向前移。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:BACKSET(TJ1,6);
观察TJ2指标线图,发现最后6天的TJ2信号都是1,即一个高度为1的矩形。公式中,还无法判断哪天是倒数第6天。
3、显然倒数第6天,是上面矩形的前沿,如何在公式中,表达这个矩形的前沿?
容易想到的办法:
1倒数第6天的当天,TJ2为1,更早的1天TJ2=0,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2 AND REF(TJ2,1)=0;
2倒数第6天的当天,TJ2为1,更早的1天TJ2=0,即当天TJ2比早一天的TJ2更大,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:TJ2>REF(TJ2,1);
3倒数第6天的当天,TJ2为1,更早的1天TJ2=0,可以想像为TJ2指标线上穿了一条高度为0.5的水平线,因此可以编出如下代码:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:CROSS(TJ2,0.5);
4巧用FILTER()过滤函数,FILTER(X,N),若X非0,可以让X保持当天的值不变,且过滤其后N个周期使之数值为0。
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:FILTER(TJ2,5);{第1次的TJ2保持为1不变,其后的5个周期过滤为0}
这样就初步找到了4种方法,可以标记倒数第6天,若想用图标来标记的话,代码例举如下:
TJ1:=ISLASTBAR;{最后一天的条件}
TJ2:=BACKSET(TJ1,6);
TJ3:=TJ2>REF(TJ2,1);
DRAWICON(TJ3,L,1);
指标编写小常识,小技巧--金死叉之间的最大值求法
指标编写小常识,小技巧
指标编写小常识,小技巧 常用语句
指标编写小常识,小技巧--主图显示证券代码及所属板块
指标编写小常识,小技巧。也 -股票之家1
指标小常识,小技巧。也是大家经常问的问题。 - 互助答疑交流区 - - 理想论坛 - ...
小常识---技巧
做菜技巧小常识
KDJ指标应用小技巧
编写指标公式技巧全集
显示器调节技巧小常识
指标的编写,
常用的小常识
生活的小常识
有意思的小常识
各方面的小常识
日常生活的小常识
实用的小常识
《通达信指标公式基础讲座》第四讲 编写指标公式的基本技巧
电脑操作小技巧使用小常识大全 - 傲雪寒梅的日志 - 网易博客
编写指标公式技巧全集1
指标公式编写技巧精讲
(转) 编写指标公式技巧全集(一)
编写指标公式技巧全集(一)