- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用Matlab进行国内期货交易
第一节 国内期货柜台系统介绍
综合交易平台CTP:
上海期货信息技术有限公司(上海期货交易所旗下子公司)开发的期货经纪业务管理系统。在API的设计、业务模式、开放性上都比国内其它系统走得更远,大部分期货公司都支持CTP,目前已经是国内期货程序化交易接入的事实标准。同时上期技术在证券API上也做了一定的工作,证券接口也已经发布。
金仕达:
市场占有率极高的柜台系统,最初仅有B2B网关,用户接入时必须同期货公司商谈,并在期货公司机房内网架设服务器。在2012年时发布了B2C版KSFT_API,与CTP接口相似,仅在一些开发细节上有所区别,直接减少了用户的迁移成本。目前大部分公司同时支持金仕达和CTP,不过存在的问题是出入金不便。CTP没有提供次席的快速出入金的方案,而金仕达方也不提供,最终在主席系统的选项上,期货公司必须得做出选择,目前有部分期货公司正酝酿将主席切换成CTP。
易胜:
由易胜信息技术有限公司(郑州商品交易所期下子公司)开发,提供了行情与交易接口,目前仅有部分期货公司部署了对应的程序化交易模块。易胜API最大的优点是提供了部分历史数据,这应当时是为了满足他们的程序化交易客户端所提供的功能,缺点是要开发时得申请授权认证码,这限制了不少开发者。
飞创信息X-Speed:
大连飞创信息技术有限公司(大连商品交易所旗下子公司)也提供了交易与行情的API,但目前成熟度不够,使用者少。
恒生:
专业的同时提供了证券、期货经纪业务解决方案的提供商,普及面也很广。基金公司等大型机构都有风险控制需求,而恒生在这方面做得不错,但目前没有推出面向普通客户的交易接口。
第二节 开发前准备
CTP_API官方下载地址为:21/api/
实际上此地址少有人维护,如想要最新版,还是得找CTP_API的官方QQ群,一般群共享有最新版的API及相关的文档,强烈建议提前将文档细读几遍。最关键的两个文档是《综合交易平台API技术开发指南》、《综合交易平台API特别说明》。
提供的CTP_API目前有三个版本:Linux x64、Windows x86、iOS。微软官方已经提到过,在64位进程中不能加载32位的dll,同理一个32位进程也不能加载一个64位dll。所以在Windows平台下采用一般的dll调用方式也就被限制在了主程序为32位程序。其实,分别使用32位和64位两个进程通讯的方式能解决这个问题。
在这,我们使用dll调用的方式。先确保自己安装的是32位的Matlab,如果你是在64位Windows上直接安装,默认是安装的64位系统,请进入到Matlab的安装目录,找到bin/win32下的setup.exe进行安装。
第三节 各种对接方式
MEX版接口
运行效率最高,但开发起来工作量大,要做大量的数据结构转换。目前已经有公司或个人推出了MEX版。
进程间通讯
这种方式比较灵活,对接64位平台或者跨操作系统、跨主机都是没有问题的,但在运行效率上略为逊色。已经有网友提供了通用版本接口,即可以Matlab调用,也可以R语言调用。
COM版接口
COM接口在Windows平台下还是有一定的使用范围的,Matlab、Excel等都可以对接COM接口,目前网上可以下载到上海汇朋提供的盈佳COM接口。网址:/
Java版接口
目前已经有少量网友开源了Java对接CTP的接口,但Matlab对接Java接口的还没有推出。同时转换的技术也有多种,如JNA、BridJ。
网址: /QuantBox/CTP/tree/master/Java-CTP,JNA版
/detail/vcfriend/5054163,BridJ版
NET版接口
NET版对接CTP的接口是百花齐放,版本比较多,网上目前比较知名的版本有
海风版:最早开源出来的C#版接口之一,P/Invoke封装
马不停蹄版:C++/CLI版封装
LumenXH版:/LumenXH/,P/Invoke封装
QuantBox版:/QuantBox/CTP,也是使用了P/Invoke封装,但对API做了自己的细节处理。
第四节 C#版对接原理
使用.NET版的好处就是省事,这么多款.NET版,选一款能对接Matlab,使用简单,自己能理解的代码库就成。
如何判断是否能对接Matlab呢?一般异步通知有两种方式:一种是偏底层的函数回调,一种是偏高层的事件通知。
函数回调。C#版接口不用修改,直接用P/Invoke的方式,将函数句柄直接通过赋值的方式传给最底层的C接口。可惜,实际测试行不通。表面上运行正常,能输出行情数据,但过不了十几秒Matlab就闪退。推断原因是回调函数被Matlab清理回收了,C层记录的函数据句柄在运行十几秒后就无效了。
事件通知。此方式也有必须注意的
您可能关注的文档
最近下载
- LNG储配站安全工作手册.pdf
- JJG 853—2013 低本底α、β测量仪.pdf
- 铁路临近既有线施工安全防护专项方案[001].docx VIP
- 破络预处理-中和沉淀工艺处理含铜电镀废水.pdf VIP
- 北京市房山区2023-2024学年小升初语文试卷(含答案).docx VIP
- 2025年美丽中国第六届全国国家版图知识竞赛测试题库(中小学组).docx VIP
- 2022年幼儿园道路交通安全工作总结(10篇).doc VIP
- 全国公立医院运营管理业财融合30个典型案例汇编.pdf VIP
- 新概念英语(青少年)Starter A 全册笔记.pdf VIP
- 国家开放大学电大《人力资源管理》机考9套题库及答案.doc
文档评论(0)