金字塔决策交易系统—高级教程(2016修订版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016
金字塔决策交易系统
高级教程
上海金之塔信息技术有限公司
本教程主要介绍金字塔的后台程序化交易,VBA、C++二次开发的编程。
目录
目录 (2)
第一章金字塔的后台程序化交易 (1)
1.1后台程序化工作机理 (1)
1.2 后台程序化交易函数 (1)
1.3 后台套利模型例 (5)
1.4 后台程序化的启用 (7)
1.5 后台程序化的调试 (8)
1.6 后台程序化注意事项 (10)
第二章图表交易和后台交易的主要区别和联系 (12)
2.1 图表、交易函数的区别 (12)
2.11 图表交易函数 (12)
2.12 后台交易函数 (12)
2.3图表交易和后台交易的主要区别 (13)
第三章基于VBA的二次开发 (14)
3.1金字塔VBA与OFFICE VBA区别和联系 (14)
3.2 VBA 原理的隐喻 (14)
3.3 VBA 简介 (15)
3.3.1VBA 及其IDE 初步 (15)
3.3.2模块、函数和过程 (18)
3.3.3数据类型和变量 (20)
3.3.4VBA 语言基础 (23)
3.3.5用户窗体 (29)
3.4金字塔的对象模型 (33)
3.4.1Application 对象 (34)
3.4.2Order 对象 (36)
3.4.3MarketData 对象 (44)
3.4.4 ReportData对象 (49)
3.4.5 HistoryData 对象 (50)
3.4.6 Document对象 (52)
3.4.7 Frame 对象 (54)
3.4.8 Grid对象 (56)
3.4.9 Formula 对象 (62)
3.4.10 NetWork 对象 (63)
3.4.11 TestReport 对象 (65)
第四章 VBA实用例 (75)
4.1 跨期套利交易例 (75)
4.2 金字塔VBA指标调用数据库教程 (77)
4.2.1数据库的准备工作(vba使用数据库首先我们需要连接数据库) (77)
4.2.2 数据库操作方法(具体代码和注释<使用时选取需要的代码只要稍许修改>) (77)
第五章基于C++二次开发 (86)
5.1使用金字塔C++ API开发策略的优势 (86)
5.2金字塔的C++ API与主程序的组织结构 (87)
5.3金字塔的接口例下载与简要说明 (87)
5.3.1 API接口报价行情订阅 (87)
5.3.2报价行情变化通知 (88)
5.3.3获取指定市场全部合约报价 (88)
5.3.4历史数据的获取 (88)
5.3.5下单委托指令 (89)
5.3.6订单状态推送回报 (89)
5.3.7策略编写调试与跟踪 (90)
5.3.8API接口更多功能信息 (91)
第六章自定义PEL函数 (91)
6.1 使用VBA自定义PEL函数 (91)
6.1.1自定义函数的格式 (92)
6.1.2自定义函数的两种工作模式 (93)
6.2 使用C++DLL扩展函数程序调用 (95)
第一章金字塔的后台程序化交易
金字塔提供功能性和扩展性更为强大的基于后台预警模式的程序化交易模式(后台程序化),可以在不影响用户前台图形操作的情况下,高效地与预警系统一起工作,实现自动交易。由于该模式运行在后台,不需要打开图表占用过多的资源,且只需最后一个周期的信号,所以原则上公式不做多余计算,效率高,便于对多个品种同一个策略进行轮循监控。
从某种意义讲,后台程序化属于图表程序的深化,它的优点是更注重于策略的高效执行,更完美地实现策略的设计初衷。虽然后台程序化的功能强大,但用户切忌直接使用后台策略,而跳过学习图表程序化的过程。原因是在后台程序化中用户无法直接在图表上看到信号的整个出现过程,因此对用户的公式编写水平有一定的要求。其次,用户需要对金字塔的后台交易系统工作机理有比较深的了解,并且要对自己的公式系统有清晰的认识,这样一旦遇到问题也能及时找到原因。后台交易过程中,一旦遇到问题,需要客户掌握第八章后台程序化交易调试的技巧。以我们多年的经验来看,用户先将策略经测评、优化、图表实盘上运行后,再转化成后台策略,会取得非常好的效果。
1.1后台程序化工作机理
在初级教程中,我们介绍了基于虚拟数据技术的图表程序化交易。想必经过一段时间的学习,大家已将图表程序化运用的相当纯熟。不过当你进行实盘的时候,是否发现在某些情况下,例如碰到未成交单、未完全成交单、需要进行追撤单等更精细的下单操作时,图表程序化就束手无策了。这是由于图表基于虚拟数据的特性,无法与真实账户进行交互,虚拟数据的成交并不考虑实盘的的流动性情况,只要价格达到即成交。而实际情况可能并不是这样。
另一方面,当图表程序化碰上多品种、多策略、或者较复杂的策略时,有时系统会显得相对较慢、不流畅。这是由于图表需要计算大量以往的历史数据进行判断操作,并在图表上进行输出。这消耗了相当多的资源。但实盘并不需要考虑历史曾经如何,实时交易需要考虑的是如何高效的执行,其实只需根据最后一根K线上的数据,来确定开平仓的动作。这也就是例如DYNAINFO等这些常数函数无法进行测评而实盘的公式确可以用的主要原因,因为DYNAINFO只有最新的一笔行情数据,而没有历史的序列数据。金字塔后台程序化也是这个道理,因为金字塔的后台程序化只注重交易,因此无法用来测评。
总结一下,金字塔的后台程序化交易是金字塔很大的特色。从工作机制的角度看,后台程序化在沿用PEL 语言体系的情况下,为用户创造了近似VB、C++才能达到的精细化、高效快捷程序化下单模式。因此它特别适合那些多周期、多策略、多品种的组合交易以及对效率要求较高的套利交易,为您的交易带来无与伦比的便捷。
1.2 后台程序化交易函数
金字塔的后台程序化交易只能在专业版及更高级的版本中使用,它可以运行在序列和逐K线两种模式,但