大家是否了解过通达信dll接口也是可以用来传输自己的需求策略,其实是可以在接口修改本身的dll来调用,实现程序化交易。那么,在众多的量化投资领域方面,我们需要的是不断提高自己的技巧水平,才能掌握通达信dll接口的调用方法,更加方便我们操作,那么具体通达信dll接口怎么调用api来实现程序化交易的?
例如可以从api调用方面来考虑,不管是对于那个都能用这些开发文档实现api的调用:
名称 |
功能 |
|
基本函数 |
Init |
|
Deinit |
||
Logon |
||
Logoff |
||
QueryData |
||
QueryHistoryData |
||
SendOrder |
||
CancelOrder |
||
GetQuote |
||
Repay |
||
GetExpireDate |
||
单账户批量函数 |
QueryDatas |
|
SendOrders |
||
CancelOrders |
||
GetQuotes |
||
多账户批量函数 |
QueryMultiAccountsDatas |
|
SendMultiAccountsOrders |
||
CancelMultiAccountsOrders |
||
GetMultiAccountsQuotes |
处理的调用对应结果:
相关函数 |
调用结果 |
Deinit Logoff |
无 |
Init |
返回值为 授权成功的交易账户数量 返回值 < 1 时, 无需调用 Deinit 接口, 也不能调用其它接口, 否则会出错! |
Logon |
调用成功: 返回值为 客户端 Id 调用失败: 返回值 <= 0 |
参数 ErrorInfo 保存错误信息, 需要分配 256 字节的空间 |
|
GetExpireDate |
返回值为 API 授权到期日期 |
格式为 yyyymmdd 整数, 如 2018 年 5 月 1 日为 20180501 |
|
单项操作 |
调用成功: ErrorInfo 为空字符串 |
QueryData |
调用失败: ErrorInfo 为错误信息 |
QueryHistoryData |
参数 Result 保存操作结果, 需要分配 1024*1024 字节的空间 |
SendOrder |
Result 格式为表格数据, 每一行通过换行符\n 分割,每一列通过制表符\t 分割 |
CancelOrder |
例子: |
GetQuote |
股东代码\t 股东名称\t 帐号类别\t 保留信息\n |
Repay |
12345678\t\t0\t 信息 1\n |
87654321\t\t2\t 信息 2 |
|
注: 不同券商返回的字段会有所不同 |
|
参数 ErrorInfo 保存错误信息, 需要分配 256 字节的空间 |
|
批量操作 |
批量操作的参数通过数组方式传入, 用下标区分每项操作 |
QueryDatas |
第 i 项操作调用成功: ErrorInfo[i]为空字符串 |
SendOrders |
第 i 项操作调用失败: ErrorInfo[i]为错误信息 |
CancelOrders |
参数 Result[]保存批量操作结果, Result[i]保存第 i 项操作结果 |
GetQuotes |
每项操作结果需要分配 1024*1024 字节的空间 |
QueryMultiAccountsDatas |
每项操作结果的格式可参阅[Result 格式] |
SendMultiAccountsOrders |
参数 ErrorInfo[]保存批量错误信息, ErrorInfo[i]保存第 i 项错误信息 |
CancelMultiAccountsOrders |
每项错误信息需要分配 256 字节的空间 |
GetMultiAccountsQuotes |
|
其实,也不难发现,通达信dll接口怎么调用的api的方法就是为了进行程序化交易的实现结果,这前后存在很大的关系,如果大家想知道如何去定义通达信接口就可以从开发文档着手,看看适合自己的策略能不能满足,一般只要在通达信接口上直接调用api来挖掘行情数据,那很快就能执行到下一步输入自己的策略了。
例如获取api函数的使用方法可以是这些方面:
1.调用 LoadLibrary 加载 MetaTrade.dll 实例;
2.调用 GetProcAddress 获取 API 函数地址;
3.调用 Init 接口进行 API 初始化;
4.调用 Logon 接口登录券商账户并获得与之对应的 ClientId, 一个应用程序实例可以同时登录多个账户;
5.通过 ClientId 调用其它 API 接口进行查询或委托下单;
6.调用 Logoff 接口登出券商账户;
7.调用 Deinit 接口进行 API 清理;
也就是说,通达信交易dll接口实现调用的参数功能能够将精准的执行交易者的量化策略,及时的自定委托下单,实现程序化交易已经很普遍了,有意向的投资者可以尝试着去操作,借助这些系统辅助交易,可以节省更多宝贵的时间。