首页 > 股票软件 > 大智慧软件 > 大智慧扩展函数库

大智慧扩展函数库

资料语言:简体中文

下载次数:

资料类别:大智慧软件

资料大小:171.48 KB

更新时间:2019-05-03 22:02:08

相关内容:

  • 软件介绍

  • 网友评论
  • 下载地址

AEX.dll文件主要用于对大智慧无法实现或者实现不方便的功能加以扩充,目前提供ASTK、ASAVE、ABLK、ADIR、AMEMBLK、AMEMDATA1(AMEM1)、AMEMDTAT2(AMEM2)函数。使用时需要先将AEX.dll复制到大智慧软件目录。

函数AEX@ASTK

ASTK函数的功能主要用来实现入池价和入池天数的存取,同时也包含存取自己想存取的数据功能。

函数在大智慧中的调用示例:”AEX@ASTK”(参数1,参数2,参数3,参数4);(参数3参数4可省略)。

一、数据存储

参数1值为1时,表示用来存储数据。此时如果参数2的值为0,表示覆盖原有的数据;参数2值为1时,表示保留原始第一次存储的数据;参数3:如果没有省略此参数,并且参数值<>0,则存储参数3的数据;参数4:在参数3没有省略并且参数4没有省略,并且参数4的值<>0时,存储参数4的数据。

示例:

1、”AEX@ASTK”(1,0);{存储入池股票的入池日期、入池价等相关数据,如果原来已经存储,则覆盖原有的数据}

2、”AEX@ASTK”(1,1);{存储入池股票的入池日期、入池价等相关数据,如果原来已经存储,则不改变原有数据}

3、”AEX@ASTK”(1,1,15.0);{存储数据15至入池股票,如果原数据存在但与此参数3写入数据的数据不同,则存储参数3的值15至原有数据}

4、”AEX@ASTK”(1,1,15.0,8);{存储数据15和数据8至入池股票,如果原数据存在但与此参数3写入数据的数据不同,则存储参数3的值15至原有数据,如果原数据存在但与此参数4写入数据的数据不同,则存储参数4的值8至原有数据。注:参数3参数4是两个不同的数据,函数会分别处理}

二、数据读取

参数1值为2时,表示用来读取存储的数据。此时如果参数2的值为1,获取已经存储过的入池股票的入池天数;参数2值为2时,表示获取已经存储过的入池股票的入池价;参数2值为3时,表示获取已经存储过的入池股票存储的参数3的值;参数2值为4时,表示获取已经存储过的入池股票存储的参数4的值。参数2值为5时,表示获取入池股票是否已经存储过,已存储返回值1否则返值0。参数2值为6时,表示获取已经存储过的入池股票的总数量,如果有参数3,则获取已经存储有参数3数据的总数量。

示例:

1、”AEX@ASTK”(2,1);{获取已经存储过的入池股票的入池天数}

2、”AEX@ASTK”(2,2);{获取已经存储过的入池股票的入池价格}

3、”AEX@ASTK”(2,3);{获取已经存储过的入池股票存储的参数3的值}

4、”AEX@ASTK”(2,4);{获取已经存储过的入池股票存储的参数4的值}

5、”AEX@ASTK”(2,5);{获取已经入池股票是否已经存储}

6、”AEX@ASTK”(2,6);{获取已经存储过的入池股票总数量}

7、”AEX@ASTK”(2,6,1);{获取已经存储过参数3为1的的入池股票总数量}

三、数据删除

参数1值为0时,表示用来删除已经存储的入池股票数据。此时如果参数2的值为0,表示清空所有已经存储的入池股票;参数2值为1时,从存储过的入池股票如果包含此时入池股票,则从存储的股票数据中删除该入池股票。

示例:

1、”AEX@ASTK”(0,0);{清空存储过的所有入池股票数据}

2、”AEX@ASTK”(0,1);{删除入池股票中已经存储过的入池股票的数据}

:本函数最大存储5000个数据,如果需要更多数据存储,可以把AEX.dll复制多个不同的副本,比如AEX1.dll,在股池代码中调用形如”AEX1@ASTK”(…)

函数 AEX@ASAVE

函数解释:保存自定义数据函数 此函数可以在大智慧存储你想存的数据

此函数可以有4个参数,最少要填写2个参数,使用参数4,必须要有参数3。

参数1      存储在自定义数据的序号XXXX可以取值范围为大于0的整数 大智慧对应的自定义数据名称应为axx

参数2      你想存的数据 取值范围 实数。注:如果此参数2填写值为8888,则表明是获取该自定义数据最后一个数据,如无数据则返回-1(见调用示例)

参数3      此参数可省略,如省略则覆盖写数据,如填写大于0的数值则按添加方式写数据

参数4      此参数可省略,如参数3省略,此参数无效。参数填0或者9有效(0代表大盘指数,9代表版块指数),指明该写入是指数数据。仅支持上海和深圳指数

函数示例:

ASAVE1:=“AEX@ASAVE”(1,50*监控存储数据50到名称为a1的自定义数据中 覆盖原数据

ASAVE1:=“AEX@ASAVE”(1,C*监控)   存储收盘价到名称为a1的自定义数据中 覆盖原数据

ASAVE1:=“AEX@ASAVE”(1,C*监控,1)  存储收盘价到名称为a1的自定义数据中 在原数据后追加

ASAVE1:=“AEX@ASAVE”(1,C*监控,0,0) 存储收盘价到名称为a1的自定义数据中 覆盖原数据,且写入的为指数数据

Adata1:=“AEX@ASAVE”(1,8888)或者Adata1:=“AEX@ASAVE”(1,8888*监控获取自定义数据a1的最后一个数据给变量Adata1

Adata7:=AEX@ASAVE(7,8888)或者Adata1:=AEX@ASAVE(7,8888*监控获取自定义数据a7的最后一个数据给变量Adata7

函数AEX@ABLK

函数解释:删除、添加到大智慧自选股、获取板块中股票个数。

函数参数3个。(3个参数随便填写一个数值,表示操作自定义自选板块。参数3的加入为了支持大智慧最新升级版不能操作自选股的问题,改用自定义自选板块来实现和自选股相同的功能。自选板块命名约定示例:我的自选1”我的自选2”....以此类推) ,大智慧自定义板块建立方法在本节说明后面。

参数1      0 从自选股中删除 1 添加至自选股 2 返回该版块中的股票品种总数 3清空该自选股的所有股票 6返回股票在该自选股中是否存在(返回值1存在,0不存在)

参数2      自选股序号 增删自选股1,此参数值为1*条件

参数3      如果填写此参数,表示操作用户自定义自选板块。此参数省略,则默认操作自选股。

函数示例:

假设我们的条件变量 预警 为真

if  预警 then

begin

  d2:=“AEX@ABLK”(1,2*预警);{将符合 预警 条件的股票添加至自选股2}

end;

if  预警 then

begin

  d2:=“AEX@ABLK”(1,2*预警,1);{将符合 预警 条件的股票添加至我的自选2”}

 {本行调用包含参数3,表示操作用户自定义自选板块 其它示例中加上此参数表示意义相同}

end;

if  预警 then

begin

  d3:=“AEX@ABLK”(0,1*预警);{将符合 预警 条件的股票从自选股1中删除}

end;

if  预警 then

begin

  d3:=“AEX@ABLK”(2,1*预警);{得到自选股1中的股票品种数,如自选股1中有16个股票,返回值为16}

end;

{清空自选股1中的所有股票}

方法1

    del1:=“AEX@ABLK”(3,1);

方法2

    if  预警 then

    begin

      del1:=“AEX@ABLK”(3,1*预警);

    end;

{股票在该自选股中是否存在}

方法1

   IN5:=“AEX@ABLK”(6,5);{返回某股票是否存在自选股5中,返回值1存在0不存在}

方法2

    if  预警 then

    begin

   IN5:=“AEX@ABLK”(6,5*预警);{返回某股票是否存在自选股5中,返回值1存在0不存在}

  end;

函数 AEX@ADIR

函数解释 文件操作函数,可以实现往目录里添加、删除股票,判断某个股票是否在某个目录,判断该目录中股票数量等功能

参数2

参数1:对哪个以数字命名的目录进行操作

参数2:要实现的功能参数值

  0 从某个目录中删除股票

  1 往某个目录中添加股票

  2 返回某个目录中的股票数

  3 清空某个目录的股票

  6 某个股票是否在某个文夹中

函数读写目录结构 大智慧文件夹UserDateAdata

示例:

AA:C>10 and C<10.5;

if AA>0 then

begin

  adddir1:=“AEX@ADIR”(1,1*AA);{把符合条件的股票代码写到目录1}

  deldir1:=“AEX@ADIR”(1,0*AA);{把符合条件的股票代码从目录1里删除}

  indir1:=“AEX@ADIR”(1,6*AA);{符合条件的股票是否在目录1}

  cleardir1:=“AEX@ADIR”(1,3*AA);{清除目录1中的所有股票代码}

  dirn:=“AEX@ADIR”(1,2*AA);{返回目录1中的股票数量}

end;

函数 AEX@AMEMBLK

函数解释 在股池中调用此函数,可以在内存中定义全局变量来实现自选股读写等功能,比文件读写型的自选股读写功能速度快,可以用来代替文件操作型的自选股读写。也可以只用来做全局变量来使用。内存变量名称以数字命名,比如你可以定义一个内存全局变量1 可以对变量1进行读写操作,来实现你现要的功能。数字命名的变量名也可以称为内存序号。

本函数需要2或者4个参数,

参数1:要实现的功能序号(1:内存增加股票 0:从内存中删除股票 2:某只股票是否在某个内存段里  3:获取某个内存段里的股票数量 4:返回所有用此函数存储的股票数量 5:清除所有用此函数存储的股票) 6:求交集(参数2和参数3为内存序号范围)

参数2:内存变量序号 

参数3:当参数16时需要设置此参数

函数调用示例:

示例1:往内存中写股票代码(返回值:1成功 0失败 1出错)

AA:C>10 and C<10.2;

if AA>0 then

begin

  ADDMEM:=“AEX@AMEMBLK”(1,1*AA);{将符合条件的股票代码写到内存变量序号为1的内存变量里面}

  ADDMEM2:=“AEX@AMEMBLK”(1,2*AA);{将符合条件的股票代码写到内存变量序号为2的内存变量里面}

end;

示例2:从内存中删除股票代码(返回值:1成功 0失败 1出错)

AA:C>10 and C<10.2;

if AA>0 then

begin

  DelMEM1:=“AEX@AMEMBLK”(0,1*AA);{将符合条件的股票代码从内存变量序号为1的内存变量中删除}

end;

示例3:该股票是否在相应的内存里(返回值:1成功 0失败 1出错)

  Ok:=“AEX@AMEMBLK”(2,1);{返回该股票是否在内存序号为1的内存段里,返回值1为存在}

示例4:某内存序号内存段里存储的股票数量(返回值:1出错)

  NUM:=“AEX@AMEMBLK”(3,1);{返回在内存序号1里的内存里存储的股票数量}

示例5:返回所有的用此函数存储的股票数量(返回值:1出错)

  TNUM:=“AEX@AMEMBLK”(4,0);{返回所有用此函数存储的股票总数量}

示例6:清除所有用此函数存储的股票,清空内存段(返回值:1成功 0失败 1出错)

  DELALL:=“AEX@AMEMBLK”(5,0);{ }

示例7:求内存序号范围内交集(返回值:1存在 0不存在 1出错)

 AA:”AEX@AMEMBLK”(6,1,5)>0;{求内存序号15中都存在的股票}

示例8:求内存序号范围内交集(如果包含参数4,则表示求满足多个内存)返回值同上

 AA:”AEX@AMEMBLK”(6,1,5,3)>0;{求内存序号15中存在3个的股票的交集}

函数 AEX@AMEM1

函数解释 :在股池中调用此函数,可以在内存中定义全局变量来实现单值数据读写等功能,也可以只用来做全局变量来使用。内存变量名称以数定命名,比如你可以定义一个内存全局变量1 可以对变量1进行读写操作,来实现你现要的功能。变量的命名以数字命名,也可以称为内存序号。

本函数个参数3个,当写数据时必须3个参数,第3个参数为写入的值,读数据只需要2个参数,第3个参数不要填写。本函数最多支持2000个数据读写。

参数1:为1时表示存数据,不为1时表示读数据。

参数2:内存序号。

参数3:需要存储的数据(存储数据时必须有此参数)

函数调用示例
        

示例一:存储单值数据

AA:C>10 and C<10.2; (返回值:1成功 0失败 1出错)

if AA>0 then

begin

  data1:=“AEX@AMEM1”(1,11,C*AA);{把数据写到内存序号为11的内存段里}

end;

示例二:读取单值数据(返回值:相应序号里的存储值 1出错)

Data11:=“AEX@AMEM1”(2,11);{读取存储在内存序号11里的数据}

函数:AEX@AMEM2

函数解释 :在股池中调用此函数,可以在内存中定义全局变量来实现股票相关数据读写等功能,也可以只用来做全局变量来使用。内存变量名称以数定命名,比如你可以定义一个内存全局变量1 可以对变量1进行读写操作,来实现你现要的功能。变量的命名以数字命名,也可以称为内存序号。

内存数据包含代码和您存储的相应的数据。

本函数个参数3个,当写数据时必须3个参数,第3个参数为写入的值,读数据和其它功能操作时只需要2个参数,第3个参数不需填写。

函数调用示例:

示例一:存储股票相关数据

AA:c>10 and c<10.2; (返回值:1成功 0失败 1出错)

if AA>0 then

begin

  SAVE2:=“AEX@AMEM2”(1,2,c*AA);{把数据C写入到内存序号为2的相应内存段,并且对应股票代码}

end;

示例2:读取存储在相应内存段且股名符合的数据(返回值:存储的数据 1出错)

Data1:=“AEX@AMEM2”(2,1);{从内存序号1 里读取相应股名的数据}

示例3:删除存储在相应内存段且股名符合的数据(返回值:1成功 0失败 1出错)

AA:C>10.15;

if AA>0 then

begin

  del3:=“AEX@AMEM2”(3,1*AA);{从内存序号1里删除相应的数据}

end;

示例4:删除存储在相应内存段的所有数据(返回值:1成功 0失败 1出错)

Del1:=“AEX@AMEM2”(4,1);{删除所有存储在内存序号1 里的股票相关值数据}

示例5:删除所有用此函数存储的数据(返回值:1成功 0失败 1出错)

DelAll:=“AEX@AMEM2”(5,0);{删除所有用此函数存储的股票相关值数据}

注:使用前请先把AEX.dll复制到您使用的大智慧文件夹(不支持64W大智慧软件),函数经过测试调用完全可以正常使用,可能部分用户在逻辑方面考虑不够全面,而引起调用不符合自己想法,建议多做测试,以达到自己的需求为目的。


相关资料
  • 大智慧扩展函数库  下载地址

猜你喜欢
  • 热门标签