您现在的位置:程序化交易>> 股票公式>> 同花顺>> 同花顺公式>>正文内容

公式编写基础3[同花顺公式]

相关标签: 同花顺公式编写 、 同花顺指标公式 、 同花顺公式 、 同花顺选股公式大全 、 同花顺公式大全 、 同花顺指标公式源码 、 同花顺指标公式大全 、 同花顺必涨选股公式 、 同花顺公式密码破解 、

 

 

三,公式函数的活用

剔除选定股票,选股时剔除ST股票
STRFIND(STRLEFT(STKNAME,2),'ST')=0; 字符串函数,符合条件时返回为0。 //本文来至CXH99.COM//

获得成交笔数
MAX(0,SUBSAMEDAY(&VOLAMOUNT))

获得“是否最后周期”ISLATBAR
FILTER(条件1 AND 条件2,COUNT(条件1 AND 条件2,0))

变色柱线(在个股于指数之间画不同颜色的柱线)
STICKLINE(个股>指数,个股,指数,4,0),color6666ff;
STICKLINE(个股<指数,个股,指数,4,1),color66bb66; //文章来至程序化交易网 cxh99.com//

变色曲线(符合条件时改变颜色,下为用于KDJ公式)
k:PARTLINE(k,k>d,RGB(255,0,0),k<d,RGB(00,255,0));
[ 此文章的编辑者为: BCXYMMLL, 2007-03-17 15:26 ] //本文来至程序化交易网 cxh99.com//

公式中引用其他公式

A2:=BARSLAST(ref(CROSS(KDJ.k,KDJ.d),1));引用KDJ公式的K,D并金叉
B2:=ref(C,A2+1)>C AND ref(KDJ.k,A2+1)<KDJ.k AND CROSS(KDJ.k,KDJ.d);
DRAWTEXT(FILTER(B2>0,5),L+0.39,'KDJ底背'),coloryelLOW; //本文来至程序化交易网 cxh99.com//

语言规范://本文 来源:程序化交易网 // //本文来至程序化交易网 cxh99.com//

在自定义公式里面的各种符号(如,“;” )只能用半角不能用全角。 //本文来至程序化交易网 cxh99.com//

关键字 if else while break continue return (无大小写之分) //本文来至程序化交易网 cxh99.com//

常数 浮点数、整数、字符串 //本文来至程序化交易网 cxh99.com//

分隔符 “ ” ‘ ’ ( ) ; // // 注释

标识符 由字母和数字组成,由字母开头,不分大小写 //内容来至程序化交易网 CXH99.COM//

运算符(优先级从高到低排列,同级同行)
* /

+ -

!= > < >= <= //本文来至程序化交易网 cxh99.com//

And

Or //文章来至程序化交易网 cxh99.com//

语句赋值 a = b

条件 IF (a==b) c=d; //内容来至程序化交易网 CXH99.COM//

循环 while a==b c=d;

函数调用 func(a,b)


赋值语句:

其一般形式为: //本文来至CXH99.COM//

a=b; 含义为将b的值付给a。 //文章来至程序化交易网 cxh99.com//

几个运算符“=”赋值、 “:=” 赋值“:”赋值并输出数值或字符串“:>”赋值并输出图形。

注意:“=”和“:=”两个运算符的意义、用法完全相同。这样做主要是为了更好地兼容市场上目前的各种带有公式编辑功能的分析软件。


同花顺公式函数注释(常用部分)

逻辑函数:

1、条件函数:根据条件求不同的值。

用法:IF(X,A,B)若X不为0则返回A,否则返回B。例如:(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值。 //文章来至程序化交易网 cxh99.com//

引用函数:

1、满足条件的周期数:统计满足条件的周期数。 //本文来至CXH99.COM//

用法:COUNT(X,N),统计N周期中满足X条件的周期数,若N=0则从第一个有效值开始。例如:COUNT(CLOSE>OPEN,20)表示统计20周期内收阳的周期数。 //文章来至程序化交易网 cxh99.com//

2、第一个条件成立到当前的周期数:统计第一个条件成立到当前的周期数。

用法:BARSSINCE(X):第一次X不为0到现在的天数。例如:BARSSINCE(HIGH>10)表示股价超过10元时到当前的周期数。

3、上一次条件成立到当前的周期数:上一次条件成立到当前的周期数。 //本文来至CXH99.COM//

用法:BARSLAST(X),上一次X不为0到现在的天数。例如:BARSLAST(CLOSE/ref(CLOSE,1)>=1,1)表示上一个涨停板到当前的周期数。 //文章来至程序化交易网 cxh99.com//

4、有效周期数:求总的周期数。//本文 来源:程序化交易网 //

用法:BARSCOUNT(X),第一个有效数据到当前的天数。 //文章来至程序化交易网 cxh99.com//

5、向前赋值:将当前位置到若干周期前的数据设为1。 //内容来至程序化交易网 CXH99.COM//

用法:BACKSET(X,N),若X非0,则将当前位置到N周期前的数值设为1。例如:BACKSET(CLOSE>OPEN,2)若收阳则将该周期及前一周期数值设为1,否则为0。 //本文来至程序化交易网 cxh99.com//

6、求和:求总和。 //文章来至程序化交易网 cxh99.com//

用法:SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始。例如:SUM(VOL,5)周期设为日线时,表示最近5个交易日的成交量之和。SUM(VOL,0)表示从传数据过来第一天起的成交量总和,具体如在区间统计里统计“总手” SUM(VOL,0)即是指全区间的成交量之和。

7、移动平均:求移动平均。

用法:SMA(X,N,M),求X的N日移动平均,M为权重。算法: 若Y=SMA(X,N,M)则 Y=[M*X+(N-M)*Y']/N,其中Y'表示上一周期Y值,N必须大于M。例如:SMA(CLOSE,30,1)表示求30日移动平均价。 //文章来至程序化交易网 cxh99.com//

8、向前引用:引用若干周期前的数据。 //文章来至程序化交易网 cxh99.com//

用法:ref(X,A),引用A周期前的X值。例如:ref(CLOSE,1)表示上一周期的收盘价,在日线上就是昨收。 //本文来至CXH99.COM//

9、简单移动平均:求简单移动平均。 //文章来至程序化交易网 cxh99.com//

用法:MA(X,N),求X的N日移动平均值。算法:(X1+X2+X3+,,,+Xn)/N。例如:MA(CLOSE,10)表示求10日均价。

10、最低值:求最低值。 //本文来至CXH99.COM//

用法:LLV(X,N),求N周期内X最低值,N=0则从第一个有效值开始。例如:LLV(LOW,0)表示求历史最低价。 //内容来至程序化交易网 CXH99.COM//

11、最高值:求最高值。 //本文来至程序化交易网 cxh99.com//

用法:HHV(X,N),求N周期内X最高值,N=0则从第一个有效值开始。例如:HHV(HIGH,30)表示求30日最高价。

12、指数平滑移动平均:求指数平滑移动平均。

用法:EMA(X,N),求X的N日指数平滑移动平均。算法:若Y=EMA(X,N)则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值。例如:EMA(CLOSE,30)表示求30日指数平滑均价。

13、动态移动平均:求动态移动平均。//本文 来源:程序化交易网 //

用法:DMA(X,A),求X的动态移动平均。算法: 若Y=DMA(X,A)则 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必须小于1。例如:DMA(CLOSE,VOL/CAPITAL)表示求以换手率作平滑因子的平均价。 //本文来至CXH99.COM//

14、最高值周期数:求上一高点到当前的周期数。 //本文来至程序化交易网 cxh99.com//

用法:HHVBARS(X,N):求N周期内X最高值到当前周期数,N=0表示从第一个有效值开始统计。例如:HHVBARS(HIGH,0)求得历史新高到到当前的周期数。

15、最低值周期数:求上一低点到当前的周期数。 //本文来至CXH99.COM//

用法:LLVBARS(X,N):求N周期内X最低值到当前周期数,N=0表示从第一个有效值开始统计。例如:LLVBARS(HIGH,10)求得10日最低点到当前的周期数。 //本文来至CXH99.COM//

16、加权移动平均:求加权移动平均。 //内容来至程序化交易网 CXH99.COM//

用法:WMA(X,A),求X的加权移动平均。
算法:若Y=WMA(X,A) 则Y=(N*X0+(N-1)*X1+(N-2)*X2)+...+1*XN)/(N+(N-1)+(N-2)+...+1) X0表示本周期值,X1表示上一周期值...。
例如:WMA(CLOSE,20)表示求20日加权均价。

17、求和:向前累加到指定值到现在的周期数。

用法:SUMBARS(X,A):将X向前累加直到大于等于A,返回这个区间的周期数。例如:SUMBARS(VOL,CAPITAL)求完全换手到现在的周期数。 //文章来至程序化交易网 cxh99.com//

时间函数: //本文来至CXH99.COM//

1、总开盘分钟:求当前代码类型的开市交易时间。 //本文来至程序化交易网 cxh99.com//

用法:TRADETIME。返回交易时间,单位为分钟。目前一般市场都返回242,与日期或具体的股票无关。 //文章来至程序化交易网 cxh99.com//

2、距开盘分钟:求当前时刻距开盘有多长时间。 //本文来至程序化交易网 cxh99.com//

用法:FROMOPEN。返回当前时刻距开盘有多长时间,单位为分钟。例如:当前时刻为早上十点,则返回31。 //内容来至程序化交易网 CXH99.COM//

3、距午夜秒:求当前时刻距开盘有多长时间。 //文章来至程序化交易网 cxh99.com//

用法:FROMNIGHT。返回当前时刻距午夜有多长时间,单位为秒。例如:当前时刻为早上十点,则返回36000。 //文章来至程序化交易网 cxh99.com//

4、时间格式:转换时间格式。//本文 来源:程序化交易网 //

用法:FORMATTIME(N)。目前只支持 N=1 把当前时间转换成距开盘分钟数返回。例如:分时中的量比曲线公式:(VOL*(TRADETIME+1)*5)/(FORMATTIME(1)*FIVEDAYVOL)。

5、时间差:计算两个时间之间的差。 //本文来至程序化交易网 cxh99.com//

用法:COUNTTIME(N,L,K)。N、L为时间,其格式为YYYYMMDD。K为1、2或者3。当K为1时返回第二个之间比第一个时间晚多少年。当K为2时返回第二个之间比第一个时间晚多少月。当K为3时返回第二个之间比第一个时间晚多少日。例如:COUNTTIME(20000808,19990606,2)其返回值为-2。注意:这里返回值有正负号。

算术函数:

1、绝对值:求绝对值。 //本文来至程序化交易网 cxh99.com//

用法:ABS(X)返回X的绝对值。例如:ABS(-34)返回34。

2、介于:介于两个数之间。 //内容来至程序化交易网 CXH99.COM//

用法:BETWEEN(A,B,C)表示A处于B和C之间时返回1,否则返回0

例如:BETWEEN(CLOSE,MA(CLOSE,10),MA(CLOSE,5))表示收盘价介于5日均线和10日均线之间。

3、最大值:求最大值。

用法:MAX(A,B)返回A和B中的较大值。例如:MAX(CLOSE-OPEN,0)表示若收盘价大于开盘价返回它们的差值,否则返回0。

4、最小值:求最小值。 //本文来至程序化交易网 cxh99.com//

用法:MIN(A,B)返回A和B中的较小值。例如:MIN(CLOSE,OPEN)返回开盘价和收盘价中的较小值。

5、求模运算:求模运算。 //内容来至程序化交易网 CXH99.COM//

用法:MOD(A,B)返回A对B求模。例如:MOD(26,10)返回6。

6、求逻辑非:求逻辑非。//本文 来源:程序化交易网 // //文章来至程序化交易网 cxh99.com//

用法:NOT(X)返回非X,即当X=0时返回1,否则返回0。例如:NOT(5>3)返回0。 //本文来至程序化交易网 cxh99.com//

7、范围:介于某个范围之间。

用法:RANGE(A,B,C)表示A大于B同时小于C时返回1,否则返回0。例如:RANGE(CLOSE,MA(CLOSE,5),MA(CLOSE,10))表示收盘价大于5日均线并且小于10日均线。

8、求相反数:求相反数。

用法:REVERSE(X)返回-X。 例如REVERSE(CLOSE)返回-CLOSE。

9、余弦值:求余弦值。 //本文来至程序化交易网 cxh99.com//

用法:COS(X)返回X的余弦值。

10、正弦值:求正弦值。 //本文来至程序化交易网 cxh99.com//

用法:SIN(X)返回X的正弦值。

11、平方根:开平方。

用法:SQRT(X)为X的平方根。例如:SQRT(CLOSE)收盘价的平方根。

12、上穿:两条线交叉。 //本文来至程序化交易网 cxh99.com//

用法:CROSS(A,B)表示当A从下方向上穿过B时返回1,否则返回0。例如:CROSS(MA(CLOSE,5),MA(CLOSE,10))表示5日均线与10日均线交金叉。 //本文来至程序化交易网 cxh99.com//

13、维持:两条线维持一定周期后交叉。

用法:LONGCROSS(A,B,N)表示A在N周期内都小于B,本周期从下方向上穿过B时返回1,否则返回0。例如:LONGCROSS(MA(CLOSE,5),MA(CLOSE,10),5)表示5日均线维持5周期后与10日均线交金叉。

14、空:判断是否为空。 //本文来至CXH99.COM//

用法:ISNULL(A)表示如果A为空(即没有数据)则返回1,否则返回0。 //本文来至CXH99.COM//

15、幂:求幂。

用法:POW(X,Y)。求X的Y次幂。例如:POW(2,3)为8。

 

 

//本文来至CXH99.COM//

 

(责任编辑:程序化交易网整理)

 

 

 

如果以上指标公式不适用于您常用的行情软件

或者您想改编成选股公式,以便快速选出某种形态个股的话,

可以联系我们相关技术人员 QQ: 262069696  点击在线交流进行 有偿 改编!

 


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容