通达信自定义数据(2)-自定义序列数据(日期,数值)

Published

     摘要:通达信自定义数据分为两大类:

第一类叫“外部数据(字符串,数值)”;

第二类叫“序列数据(日期,数值)”。

两类数据需用不同的函数来读取。
     EXTERNSTR,EXTERNVALUE两个引用都是针对外部数据而言。SIGNALS_USER的用法对应的是序列数据。

     这篇描述的是通达信自定义数据中的“序列数据(日期,数值)”的用法.包括以下内容:

自定义序列数据文件存放位置。

自定义序列数据文件的格式及字段解释。

自定义序列数据文件的导入。

自定义序列数据的显示。

 

 

1.通达信自用的自定义序列数据文件存放位置

数据导入后,通达信生成自定义序列数据二进制文件,按市场-股票号码.dat的方式命名。通达信要显示的自定义数据从这些文件中读取。

F:\Thirdprogram\new_tdx\T0002\signals\signals_user_2

2.首先要准备一份自定义序列数据导入文件

要导入自定义数据,需按约定的数据格式准备.txt文本文件,如下:

1|603005|20181120|1000.000
1|603005|20181121|900.000
1|603005|20181122|1000.000
1|603005|20181123|900.000
1|603297|20181122|1000.000
1|603297|20181123|900.000

p | 股票代码code | 日期D | 数值val

3.其次要在通达信中导入文本数据。操作过程记录

step 1:打开“自定义数据管理器”

 

 

 

3.最后,将自定义序列数据在K线图显示出来

step 1:打开公式管理器

step 2:新建一个公式指标

step 3:   编写公式内容

step 4:启用公式指标

在日K线主图,点击鼠标右键,会弹出菜单框。选叠加其他指标,选中刚编写的公式指标。

新建一个公式指标

编写公式内容

 

3.1 用DRAWNUMBER 直接写数字

通达信DRAWNUMBER画出数字函数更新时间:2018-10-01.

通达信DRAWNUMBER画出数字函数用法:

DRAWNUMBER(COND,PRICE,NUMBER),当COND条件满足时,在PRICE位置书写数字NUMBER.

DRAWNUMBER(CLOSE/OPEN>1.08,LOW,C)表示当日实体阳线大于8%时在最低价位置显示收盘价.

step 1:在每根K线的最低价写个数字

DRAWNUMBER(1,LOW,1000);

step 2:把1000换成自定义序列数据

当前个股在当前K线日期D下,读取由日期D和索引号i标识的数值val。2为索引号,0为自定义数据,1为系统数据。

Z1:=SIGNALS_USER(2,0);

DRAWNUMBER(1,LOW,Z1);

备注:自定义序列数据值得用SIGNALS_USER(2,0);读取,2表示数据索引号,0表示自定义数据

3.2 用DRAWTEXT 输出文本内容

step 1:在每根K线的最低价写几个字

DRAWTEXT(CLOSE/OPEN>1.08,LOW,'大阳线')

表示在K线的最低价处,增幅大于8%时,写“大阳线”几个字。

step 2:把条件改一下,不判断条件

DRAWTEXT(1,HIGH,'大阳线');

step 3: 把大阳线改为我们想要的值

{--显示自定义外部数据 START--}

{--取自定义序列数据,索引号为2--}
Z1:=SIGNALS_USER(2,0);

{--将数字转换为字符串--}
Z2:=VAR2STR(Z1,0);

{--在每根K线的最高处画出字符串的值--}
DRAWTEXT(1,HIGH,Z2);

{--显示自定义外部数据 END--}

 

显示结果如下图: