分类
用技术指标进行交易

完整的交易系统设计方案

完整的交易系统设计方案

伴随着我国社会经济的快速发展,期货交易市场总体规模与交易数量也出现了巨大的变化,传统的手工交易方式已经无法有效适应期货交易发展需求,于是期货程序化交易随之出现。虽然期货程序化交易在我国出现时间并不长,但其重要性已经被人们充分重视起来。期货程序化交易对于交易实时性要求比较高,同时对于策略本身也要求具备一定的灵活性。如果考虑到风险监控指标等因素,程序化交易系统的设计复杂度将大大提高。所以如何设计并开发出既满足程序化交易系统对交易、风控、策略的高度灵活性,同时又要保证程序化交易系统高度的稳定性,是目前建设程序化交易系统必须面对的问题。论文紧紧立足于期货市场的交易特点,同时结合市场上现有的程序化交易系统存在的缺陷,提出了一整套完整的期货程序化交易系统建设方案,其具有定制灵活及回测方便的特点。程序化交易系统分为交易子系统、风控子系统、策略子系统、数据库子系统四大子系统。交易子系统由交易初始化模块、数据上下场模块、核心交易模块三大部分组成;风控子系统由风控管理监控层、风控策略计量层、数据库层以及数据层组成;策略子系统由策略控制模块和策略运行模块组成;数据库子系统由Oracle数据库、Mongodb数据库、内存数据库组成。论文给出了各部分的设计方案及实现说明。论文在高速交易以及风险监控方面,进行了深入的研究。在高速交易方面,论文根据期货交易规则,设计出模块化的交易子系统,保证了系统具备高吞吐、低延迟的特性;子系统内部采用状态机的通讯设计模式,确保系统在正确状态间进行切换,保证了系统具备较高的可用性和稳定性。在风险监控方面,论文引入基于大数据计算的非关系型内存数据库Mongodb以及复杂事件处理(Complex Event Processing)技术。前者主要用于解决非结构化数据存储问题;后者解决风控的实时性要求。两者结合起来,较好的解决了目前金融行业对于多产品、多合约、跨市场以及分帐户的监管系统设计难题。最后,论文在程序化交易系统上实现了经典的R-Breaker策略,使用2010年至2012年两年的数据测试,取得总体收益188%最大回撤7%的成绩,验证了程序化交易系统业务逻辑的正确性;同时对交易系统的性能进行了压力测试,测试结果表明在4000用户同时登陆、每秒5000笔报单的环境下,程序化交易系统还是能够具备良好的稳定性以及可用性。总体测试结果表明,程序化交易系统达到了设计目标。本系统当前已经顺利完成设计与开发工作,并通过了系统测试,能够达成期货业务交易目标,并有效增强期货公司的程序化风险监控能力。