大智慧c语言dll,调用大智慧dll,简单支持大智慧公式dll接口

网上看到一个分享贴,说可以调用大智慧公式,只是我没有看懂要如何使用。

请问类似这样的调用是要写到哪里,自己的dll里面还是大智慧里面?

XDll_Free(Dll相对路径文件名);//释放动态链接库

XDll_Load(Dll相对路径文件名);//加载动态链接库

次源自客户定制需要,考虑再三,决定支持大智慧公式dll接口

大智慧公式dll语言规约和分析家一样.

算是给大家的节礼物

调用大智慧/分析家公式dll接口函数

在调用函数之前要创建缓冲区,并从对应历史数据接口填充k线数据

这个与历史数据接口对应的缓冲区,数据长度固定为480,配有10个输入输出缓冲区,

用作调用dll具体公式函数是时输入输出缓冲区

XDll_Free(Dll相对路径文件名);//释放动态链接库

XDll_Load(Dll相对路径文件名);//加载动态链接库

功能:释放或加载动态链接库

参数:Dll相对路径文件名

例如:XDll_Load("autop\qml\xxxxx.dll");

XDll_Exec(Dll相对路径文件名,

函数名,K线缓冲区序号,输出缓冲区序号,

参数1有效位置,参数1,参数2,参数3,参数4);//调用库函数

功能:调用库函数

参数:

1.Dll相对路径文件名

2.函数名(dll完全出口函数名,例如在大智慧中是macd,一般完全函数名是_macd)

3.K线缓冲区序号 指的是与历史数据库接口相对应k线数据缓冲区的序号0,1,2

4.输出缓冲区序号(可省) 指定调用库函数的输出缓冲区的序号,为0--9(可以是10个输入输出缓冲区中的任何一个)

默认为0

5.参数1有效位置(可省) 当有参数1时设定参数1的性质,<0时指定参数1是常数输入,这时参数1就是输入数据

当其>=0时,参数1就是选定做输入缓冲区的输入输出缓冲区序号,在库函数调用前一定要设置好预定数据

本参数值指定该系列输入数据的有效起始位置

6.参数1  输入参数,当其明确输入时,与上一参数配合,省略时,库函数调用输入参数为空

6.参数2,参数3,参数4 输入参数,当其明确输入时,将作为库函数调用参数,省略时,库函数对应调用参数为空

例如:XDll_Exec("autop\qml\xxxxx.dll","_kxian",0,0);//调用库函数

XDll_DBufDelete();//删除历史数据接口对应k线数据缓冲区

XDll_DBufCreate(开始位置,结束位置);//创建历史数据接口对应k线数据缓冲区,并调入数据

XDll_GetKXData(数据索引,k线数据编号0.t.1.o.2.h.3.l.4.c.5.v);//获取历史数据接口对应k线数据缓冲区

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DZH/FXJ引用外部数据的DLL公式FMLDATA.DLL(DZH/FXJ引用外部数据的DLL公式)免费下载 一、DLL主要功能: 适用平台: 大智慧新一代V2.0(仅支持以分析家为内核的DZH版本,不支持DZH经典版本)、分析家(在V6.0上测试通过,在其它版本用应该也没问题) ,以下简称DZH。 主要功能: 1)在DZH公式中读取外部数据(这里称为FMLDATA文件数据,该数据文件格式见下文)。例如,要在DZH公式中读入第三方的数据并与DZH其它数据一起进行分析,我们可以首先将数据写入FMLDATA文件,然后在DZH公式中象引用DZH本身直接引用。 2)将DZH序列数据写入外部文件。例如,我们要将DZH现有数据或者自己编写的公式的计算结果导出来,在EXCEL等外部软件进一步处理。(与FinDataTools工具的区别是:FMLDATA.DLL导出的是DZH原始数据或公式计算结果,而FinDataTools直接从DZH/FXJ读取数据。) 适用对象:需要读取自己定制的外部数据而又不想自己用C/C++写接口的DZH/FXJ用户。 声明:本DLL不含任何恶意代码,但使用风险自担。 二、下载:点击这里下载(近100KB)。 三、安装方法: 1、下载后用WINRAR解压得到FMLDATA.DLL和FMLDATA.TXT两个文件。 2、将FMLDATA.DLL复制到DZH2安装目录,一般为c:\dzh2。如果是FXJ一般为c:\superstk等. 3、在DZH安装目录下建立一个名为FMLDATA的文件夹,如c:\dzh2\fmldata(这一步是必须的,否则无法使用)。DLL公式读取或写入的数据都在这个文件夹。 至此,安装完成,下面就是如何使用了。 四、使用方法: FMLDATA.DLL提供了两个公式/函数,一个用于写数据,一个用于读数据。 (一)写数据: 写数据的公式为: "FMLDATA@WRITE"(X,N) 第一个参数X是个序列(指标),可以是CLOSE、OPEN等,也可以是公式中的中间计算结果,要求序列值在浮点型值范围之内,一般在正负20亿之间,如果不在该范围之内,建议改变单位;第二个参数N是个数值,表示序列编号,例如我们把CLOSE保存为第4个序列,N为4。 将数据保存为外部文件时,根据当前股票代码、序列编号、分析周期这三个信息在fmldata文件夹生成形式为“XXXXXX.N.YYY”的文件。其中, XXXXXX为股票代码,如深发展为000001等,由于沪市指数代码与深市股票代码重复,所以沪市指数代码在原代码前加1,例如上证综指为000001,则这里的XXXXXX为1000001(7位);N是编号,由用户自己指定,应为大于0的整数;YYY为分析周期,如果是日线数据,则YYY=DAY,分笔、1分钟、5分钟、15分钟、30分钟、60分钟、周、月、多日、季度、半年、年的值分别为TICK、MIN1、MIN5、MIN15、MIN30、MIN60、WEEK、MONTH、NDAYS、QUARTER、SEMIYEAR、YEAR。 举例: 例1、将收盘价写入到外部文件 新建一公式,设名为TESTW,输入 V1:"FMLDATA@WRITE"(C,4); ,在深发展(000001)日K线状态下,键入TESTW,在指标区查看公式TESTW结果的同时,将在FMLDATA目录生成一个名为000001.4.DAY的二进制文件(这个文件如何在其它软件中使用见下文),如果同名文件已经存在,将覆盖。如果我们键入000002,切换到万科日K线,将生成名为000002.4.DAY的文件;如果切换到上证指数,则生成1000001.4.DAY文件。 注意:如果是DZH,写数据时请将光标移至最后一根K线,否则只保存光标之前的数据,FXJ好象没有这个问题。光标一动,数据就重新写入一次。 例2、将收益率保存到外部文件 建一公式: A:=C/REF(C,1)-1; B:"FMLDATA@WRITE"(A,101); 请在还权状态下使用该公式。如果处于000001的日K线图,则生成000001.101.DAY。 例3、将周收益率保存到外部文件在例2基础上,将“分析周期”改为“周线图”,则周收益率保存到000001.101.WEEK文件。 例4、将沪市A股所有股票的收盘价、成交量保存到外部文件 建一名为TESTCV公式: A:"FMLDATA@WRITE"(C,4); B:"FMLDATA@WRITE"(V/10000,5); 保存后。选择“条件选股”,选股指标选择“TESTCV”,分析周期选“日线”,选中“使用除权后数据”,指标线选“B”,条件选“大于0”,选股范围选择“上证A股”,执行选股,将生成600000.4.DAY、60

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值