1、指南针指标编写设计指南针指标编写设计(四) 4. 指标点评4.1. 、指标我们通过介绍、指标的实现代码,进一步说明赋值、条件跳转和循环三种基本语句的应用。指标的代码如下:指标名称: 指标注释:(空) 默认值:0输入参数:M 局部变量:V1, V2, V3, V4, V5, V6, , I参数指标:开盘价, 最高价, 最低价, 收盘价 结果指标:, , 指标文本:T1 = 0;T2 = 0;T3 = 0;T4 = 0;T5 = 0;T6 = 0;I = 0;( I = M ) ;T1 = T1 + I - I;T2 = T2 + I - I;( I 1 ) T3 = T3 + I - 1;( I
2、 1 ) T4 = T4 + I - 1; = (1 + 1) / 2;( I ) T5 = T5 + I - ;( I ) T6 = T6 + - I;I = I + 1; = T1 / T2; = T3 / T4; = T5 / T6;下面详细分析指标的代码段,文本的一开始是7条赋值语句,分别把7个局部初始化为0;T1 = 0; 赋值语句T2 = 0;T3 = 0;T4 = 0;T5 = 0;T6 = 0;I = 0;接下来是一个循环体: 循环开始,I是循环控制变量( I = M ) 条件跳转语句,控制循环结束 ; 结束循环的分支;I = I + 1; 赋值语句,循环控制变量赋值; 循环结
3、束联系前面的赋值语句0、循环中的赋值语句1以及控制循环的条件跳转语句可以发现,这是一个参数M次的循环,例如如果参数M为10时,这个循环需要执行10次。在循环体中有4条赋值语句和5条条件判断语句我们举例说明,T1 = T1 + I - I;意思是把当前天的前面第I天的最高价和开盘价的差值加到局部变量T1中;T2 = T2 + I - I;是说把当前天往前第I天的开盘价和最低价的差值加到局部变量T2中;( I 1 ) T3 = T3 + I - 1;如果当前天前面第I天的最高价大于第1天的收盘价,则把当前天往前第I天的最高价和第1天的收盘价的差值加到局部变量T3中; = (1 + 1) / 2;是
4、说把前天往前第1天的最高价和最低价的平均值赋给局部变量;最后是三句赋值语句,分别给三个结果返回指标赋值。 = T1 / T2; = T3 / T4; = T5 / T6;4.2. (动向速比率)指标(动向速比率)指标是一个经典指标,我们通过这个指标的实现代码,进一步说明指南针指标平台中函数的应用。指标名称: 指标注释:动向速比率 默认值:1.000输入参数:N 局部变量:参数指标:最高价, 最低价 结果指标:, , , , 指标文本:( (最高价 + 最低价) = (最高价1+最低价1) ) = 0; = ( (最高价 - 最高价1), (最低价 - 最低价1) ); = ( , 10 );
5、= ( , 10 );( ) = ( - ) / ;( = ) = 0; = ( - ) / ;( , , N, 1 );这里着重分析指标代码中的函数调用。在第一个条件跳转语句的分支是一个赋值语句: = ( (最高价 - 最高价1), (最低价 - 最低价1) );语句的含义是取相邻两天最高价差值的绝对值与最低价差值绝对值中较大的数值,赋给指标。从这里可以发现,指标平台支持多重函数调用,即函数中再套函数,这种调用的套用次数没有限制。代码的的最后是一个调用函数的赋值语句:( , , N, 1 );这个语句的含义是对指标作N日指数移动平均,平滑系数是1。注意,、这一类函数的第一个参数必须是结果返回指标,函数计算是会把结果直接赋给第一个参数,所以可以不写赋值部分,这条语句也可以这样写: = ( , , N, 1 );实际上这两种写法是完全等价的。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1