1. 首页 > 基金定投

股票编程入门(股票编码课程日记)

股票编码课程日记本第1课

第三节 20个公式函数讲解

第01讲:MA简单移动平均数函数讲解

一、引用函数

1、MA(X,N)):简单移动平均数;

·2、REF(X,A)):向前引用,引用若干周期前的数据;

·3、HHV (XN):求最高值;

·4、LLV(N):求最低值:

·5、HHVBARS(X,N):求上一高点到当前的周期数;

·6、LLVBARS(X,N):求上低点到当前的周期数;

·7、COUNT(X,N):统计满足条件的周期数;

·8、SUM(X,N):求和:

·9、FILTER(X,N):连续出现的信号:

二、数学、逻辑、算术函数

10、(A,B):求最大的:MAX(A,B)

11、MIN(A,B):求最小值:

12、ABS(X):求绝对值:

13、BETWEEN(A,B,C):介于两个数之间的函数:。

11、CROSS(A,B):交义函数;.

615、IF(X,A,B):条件函数:

16、EVERY(X,N):直存在;。

17、NOT():求逻辑非;

三、形态函数

·18、COST(X):成本分布;

·19、WINNER (CLOSE):获利盘比例:

四、财务函数

·20、CAPITAL:流通盘大小;

1、MA(X,N):简单移动平均数

·函数算法:(X1+X2+X3+...+Xn)/N

·函数用法:MA(X,N),求X的N个周期移动平均值。

·函数实际应用举例:

5日均价线:MA(CLOSE,5),表示求5日均价:

5日均量线:MA(VOL,5),表示求5日均量。

实例1:名称: 均线指标(查询字母jx) 画线方式:画图叠加

MA(C,5);

MA(C,10);

MA(C,20);

MA(C,60);

测试通过! 代码长度:41,输出线个数:4

实例2

MA5:MA(C,5);

MA10:MA(C,10);

MA20:MA(C,20);

MA60:MA(C,60);

测试通过! 代码长度:60,输出线个数:4

实例3量能指标(LNZ)

V5:MA(V,5);

V10:MA(V,10);

测试通过! 代码长度:26,输出线个数:2

实例4:

V,VOLSTICK;

V5:MA(V,5);

V10:MA(V,10);

测试通过! 代码长度:39,输出线个数:3

实例5

V,VOLSTICK;

V5:MA(V,5),COLORYELLOW;

V10:MA(V,10),COLORMAGENTA;

测试通过! 代码长度:66,输出线个数:3

第2课

第02讲:REF向前引用函数讲解.

2、REF(X,A):向前引用,引用若干周期前的数据

·函数用法:REF(X,A),引用A周期前的X值。

·函数实际应用举例:

REF(CLOSE,1)表示引用上一周期的收盘价,在日线上就是昨天收盘价。

REF(MA(CLOSE,60),1)表示引用上一周期的60均线数值。

MA(CLOSE,60)>REF(MA(CLOSE,60),1)表示60均线本周期大于上一周期,即均线向上运行。

实例1:昨天收盘价(zt)

REF(C,1),

实例2:昨天收盘价(zt)

c;

REF(C,1),

实例3:昨天收盘价(zt)

c>REF(C,1)

实例4:昨天收盘价(zt)c>REF(C,1)

昨60:RLF(MA(C,60)1);

今60:MA(C,60);

昨60<今60;

第3课

3、HHV(X,N):求最高值

·函数用法:HHV(X,N),求N周期内X最高值,n=0则从第一个0=N有效值开始。

·函数实际应用举例:

HHV(HIGH,30)表示求30周期内最高价的最高值;

HHV(VOL,10)表示求10周期内成交量的最高值。

实例1

HHV(N, 30)

实例2

创新高:=hhv(n,n);

H=创新高;

实例3

创新高:=HHV(N,N);

N>REF(创新高,1);

实例4

创新高:=HHV(N,N);

c>REF(创新高,1);

实例5

量创新高:=HHV( V ,N);

V=量创新高;

第4课

4、LLV(X,N):求最低值

·函数用法:LLV(X,N),求N周期内X最低值,则从第一个0=N有效值开始。

·函数实际应用举例:

LLV(LOW,30)表示求30周期内最低价的最低值;

LLV(VOL,10)表示求10周期内成交量的最低值。

第5课

5、HHVBARS(X,N):求上一高点到当前的周期数。

·函数用法:求N周期内X最高值到当前周期数,表示从第0=N一个有效值开始统计。

·函数实际应用举例:

HHVBARS(HIGH,N),求N周期内最高价的最高点到当前的周期数;

HHVBARS (VOL,N),求N周期内成交量的高大量到当前的周期数;

第6课

6、LLVBARS(X,N):求上一低点到当前的周期数

·函数用法:求N周期内X最低值到当前周期数,表示从第0=N一个有效值开始统计。

·函数实际应用举例:

LLVBARS(LOW,N),求N周期内最低价的最低点到当前的周期数;

LLVBARS(VOL,N),求N周期内成交量的最小量到当前的周期数。

第7课

7、COUNT(X,N):统计满足条件的周期数

·函数用法:统计N周期中满足X条件的周期数,若N=0则从第3一个有效值开始。

·函数实际应用举例:

COUNT(C>O,N),统计N周期内收阳线的周期数;

COUNT(C<O,N),统计N周期内收阴线的周期数:

COUNT(V<MA(VOL,5),N),统计N周期内成交量小于5周期均量线的周期数。

8、SUM(X,N):求和

·函数用法:SUM(X,N),统计N周期中X的总和,N=0则从第一个有效值开始。

·函数实际应用举例:

SUM(C,N)/N,用SUM函数可以替代MA简单移动平均数函数编写均线指标;

SUM(V,N),表示统计N周期中成交量的总和,用SUM求和函数,可以编写N周期内阳量之和大于阴量之和的公式。

9、FILTER(X,N):过滤连续信号

·函数用法:FILTER(X,N):条件X满足后,删除其后N周期内的数据置为0。

·函数实际应用举例:

FILTER(C>REF(C,1)*1.05,10),过滤出涨幅大于5%的K线信号后,其后10日内涨幅大于5%的K线信号不再显示;

FILTER(CROSS(MA(C,5),MA(C,10)),30),过滤出5日均线金义10日均线的信号后,其后30日内再次满足该条件的信号不再显示:

FILTER(V>REF(V,1)*2,10),过滤出成交量为倍量的信号后,其后10日内再次满足倍量的信号不再显示。

10、MAX(A,B):求较大值 HHV(X,N)

·函数用法:MAX(A,B):返回A和B中的较大值。

·函数实际应用举例:

MAX(C,0),求收盘价和开盘价的较大值,即求K线实体的高点;在此基础上,编写当天的收盘价大于昨天K线实体高点的公式,C>REF(MAX(C,O),1);

(H-MA-MAX(C,O))/(H-L)>0.6>0.667,长上影线公式;

MAX(MA(C,5),MA(C,10)),求5日均线和10日均线的较大值;

11、MIN(A,B):求较小值 LLV(X,N)

求最低值

·函数用法:MIN(A,B):返回A和DB中的较小值。

·函数实际应用举例:

MIN(C,O),求收盘价和开盘价较小值,即求K线实体低点:

C<REF(MIN(C,0),1),即当天的收盘价小于昨天的K线实体低点;

(MIN(C,O)-L)/(H-L)>0.667667,长下影线公式;

MIN(MA(C,5),MA(C,10)),求5日均线和10日均较小值。

12、ABS(X):求绝对值

·函数用法:ABS(X):求绝对值。

·函数实际应用举例:

ABS((-10)),求-10的绝对值,结果为10;

ABS(C-0),求收盘价与开盘价差的绝对值,即K线实体的长度;

ABS(C-REF(H,1)),求当日收盘价与上一交易的最高价差的绝对值:

ABS(C-MA(C,5)),求收盘价与5日均线差的绝对值。

13、BETWEEN(A,B,C)函数 介于函数

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

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

函数实战应用举例:

通常很多个股在突破之前股价都是介于60日和20日均线之间。股价通常会在这两条线直线进行波动形成三角形或者箱型等

形态等待突破。我们通常可以利用该函数找出位于这两条线之间的个股进行分析,找到那些即将突破形态的个股。

14、CROSS(A,B)函数 上穿函数

两条线交叉.

函数用法:

CROSS(A,B)表示当A从下方向上穿过B时返回1,否则返回0

例如:CROSS(MA(CLOSE,5),MA(CLOSE,10))表示5日均线与10日均线交金叉

CROSS实战的应用:

(1)金叉

(2)死叉

15、IF(X,A,B)函数 条件函数

根据条件求不同的值.

函数用法:

IF(X,A,B)若X不为0则返回A,否则返回B

函数举例:

例如:IF(CLOSE>OPEN,HIGH,LOW)表示该周期收阳则返回最高值,否则返回最低值

函数实战应用:

条件判断函数可以通过指定一个特定条件进行方向性的选择,帮助投资者更直观去判断市场。

16、EVERY(X,N)函数 存在函数

一直存在.

函数用法:EVERY(X,N),在N周期内X成立返回1,否则返回0。

>OPENN,10)例如:EVERY(CLOSE>OPE

表示前10日内一直阳线。

函数实战应用:可以利用存在函数对某些特定的状态进行限定。也就是说在某个特定的状态情况下,在某个环境之下执行其他条件。

17、NOT(X)求逻辑非函数

求逻辑非.

函数用法:

NOT(X)返回非X,即当X=0时返回1,否则返回0

例如:NOT(ISUP)表示平盘或收阴

ISUP=当日收阳ISDOWN=当日收阴

函数实战举例:

可以应用逻辑非函数将比较特殊的或者比较极端的状态除去,保留符合大范围的状态。例如,剔除所有大幅度跳空高开的状态。

NOT(OPEN>REF(HIGH,1))

18、COST(N)成本分布函数

成本分布算法和换手率移动平均基本原理是一样的,主要差别就在于它计算的不是一个而是一组数值,即当日成本不是收盘价,而是从最低价到最高价之间的一组数据。

函数用法:COST(N)

函数反映成本分布的情况。

表示当日N%获利盘的价格是多少,即有N%的持仓成本在该价格以下,其余(100-N)%的持仓成本在该价格以上,是套牢盘。使用限制:仅在日线分析周期有效

参数:N:常量,取值范围0-100

举例:COST(10),表示10%获利盘的价格是多少,即有10%的持仓量在该价格以下,其余90%在该价格以上为套牢盘。

19、WINNER(A) 获利盘比例函数

WINNER (A)获利盘比例:表示以A价格卖出时获利盘比例是多少,返回0.1表示10%获利盘。

使用限制:仅在日线分析周期有效。

A:常量或变量

例:WINNER(10.5)表示10.5元

价格的获利盘比例

WINNER(CLOSE)表示以当前收市价卖出获利盘的比例,WINNER与COST是正好相反的两个函数,前者由价格求获利盘比例,而后者由获利盘比例求得价格,灵活应用这两个函数,可以定量地进行成本分析计算。

20、CAPITAL当前流通股本

CAPITAL:返回流通盘大小,单位为手;

对于A股得到流通A股,B股得到B股总股本,指数为0

注意:该函数返回常数

举例:通过当天成交量的状态,做成换手率指标。VOL/CAPITAL*100

做成活跃度指标

SUM(VOL/CAPITAL*100,3)

做成价量指标

DMA(CLOSE,VOL/CAPITAL)

表示求以换手率作平滑因子的平均价。

1、选股公式编写

选股公式编写要点:

(1)只有一条输出语句;

(2)确定要输出的语句

(3)提取判断语句

(4)输出测试

21、选股公式编写

案例一:买点考虑指标:

启动线:SUM(EMA((C+L)/2,2),5)/10.158,COLORRED;

平衡线:LLV(SUM(EMA((C+L)/2,2),5)/10.158,4),COLORFF0OFF;

平台线:LLV(SUM(EMA((C+L)/2,2),5)/10.158,10),COLORFFFFFF;

强弱线:EMA(启动线,21),COLORYELLOW;

STICKLINE(平台线<启动线,启动线,平台线,0.1,0),COLORFFCCAA;

STICKLINE(平衡线<启动线,启动线,平衡线,0.1,0),COLORRED;

VAR1:=2*MA(LLV((C+L)/2,8)*1.:3)-/2,8)*1.1,13)-EMA((C+L)EMA((C+L)/2,3)-((C+L)/2)*0.1;

VAR2:=IF((EMA((C+L)/2,3)-VAR1)*5>0,PO/2,3)-VAR1)*5>0(EMA((C+L)/2,3)-VAR1)*5,2)/

10,

1*POW((EMA((C+L)/2,3((C+L)/2,3)-VAR1)*5,210);)-VAR1)*5,2)/10

VAVAR2>0,VAR2-0,0)AR3:=IF(VAR2>

STICKLINE(VAR3>0 AND REF(VAR3,13,1)=0 AND(C+L)/2>MA((C+L)/2,8),,强

弱线,强弱线+0.2,4,0),COLORFFAACC;

DRAWTEXT(VAR3>0 AND REF(VAR3,1)=0 AND,1)=0 AND(C+L)/2>MA((C+L)/2,8)

强弱线+0.35,'买点考虑'),LINETHICK3,COLORFFAACC;

22、如何实现指标公式编写

设计中间语句:

一个语句将显示一条指标线,一个复杂的公式往往有很多语句,而且有些语句没必要显示出来。这时我们可以把不需要显示语句定义为中间语句,中间语句的写法只需在一般语句的名称与语句之间的冒号后加个等号,即“:=”即可。例如,语句“上日收盘价:=REF(close,1)”就表示该语句为中间语句。重复使用的语句也可以定义成中间语句。

设计其他公式语句:

其他类型的公式显示的不是指标线,而是相应的操作,如条件选股公式显示的是选股结果,交易系统公式显示的是交易指示,五彩K线公式显示的是K线颜色。这些公式需要有一条或几条逻辑表达式表示这些操作的语句,当语句返回0时表示不需要进行相应的操作,当返回非0时表示需要进行相应的操作。

23、如何实现指标公式编写(二)

公式管理器编写的指标可以分为副图和主图两种。而主图指标又可以分为叠加和替换两种。

下面通过两个案例的学习,学会如何编写主图和副图指标。

主图案例1:编写一个会变色的K线。

要求:

(1)5日均线上穿10日均线后K线用黄色连续表示

(2)5日均线上穿22日均线后K线用红色连续表示

(3)5日均线下穿10日均线后K线用蓝色表示

(4)5日均线下穿22日均线后K线用绿色表示

五日是一周,十日是半个月,22日是一个月

24、交易系统的编写

交易系统的特征

(1)最多有四条输出语句

(2)可以对单一个股或者全部市场进行测试

(3)通常应用于日线周期进行测试

(4)可以优化参数

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ15101117,本站将立刻清除。

联系我们

在线咨询:点击这里给我发消息

微信号:666666