首页 > EA > EA编程

【外汇EA编程学习】影响自动交易系统运行速度因素?

小明学外汇 EA编程 2019-09-09 23:03:32 Fx263.com 外汇EA编程   自动交易系统
是什么影响了自动交易系统的运行速度?除了系统交易模型本身的效率之外,我们能够在哪些客观环境进行提高?
 
  程序语言以及代码的效率
  自动交易系统的实现语言和编译器是影响到系统的速度至关重要的因素,因为不同语言的编译器效率不一样,所以他们之间有快慢之分。例如用EXCEL实现的系统就会有很大的麻烦,即使是使用DDE(Dynamic Data Exchange)技术,也会在数据交换和处理上遇到瓶颈。一般而言,实现系统更常见的程序语言会在C++,VB.Net(C#)以及Java之间选择。这三者分别代表了:效率,快速开发以及运行坏境通用性。



  传统上,C++是高效率程序语言的代名词:灵活的指针,简洁的系统类库,高效的内存运用等等带来的时间空间效率,都是C++为什么被选择作为正规系统开发语言的原因。
  VB.Net(C#)与C++相比而言,这些建立在.Net平台上,拥有庞大、成熟、易用的系统共通类库和高效的开发IDE,从而能够进行快速原型开发是他们的优势所在。对于小团队进行自动交易系统研究和开发而言,无疑是一个很好的选择。
  Java在三者之中稍处劣势:如果考虑开发一个既能在Windows上运行,又希望将来以最小代价向Linux平台移植的话,可以考虑一下Java与平台无关的亮点。司空金融网(skjrw.com)$ z, F7 l; K; ?& T) d不过说到底,程序语言只是一个工具,代码的质量和效率才是系统运行速度的真正的决定性因素。良好系统架构,清晰的代码结构以及高效的算法,这些都比其他提高系统运行速度的手段来得直接彻底。
  2.数据存储技术
  数据存储方法也是提高系统速度值得考虑的一个方面。
  独立文件存储是一般产品开发的选择。自定义格式不仅能够带来高效的存储和读取可能,同时也增强了产品数据协议的保密性和完整性。
  如果仅是考虑易用性和维护性的话,成熟的数据库系统是数据存储的首选,无论是Oracle,DB2和SqlServer,或是MySQL以及PostgreSQL这些免费的数据库产品都是很好的存储手段。
  同时,因为我们更多考虑的是自动交易系统的实时速度,所以在市场开放的时间段里,利用空间换取时间,把需要处理的数据尽可能地放到内存空间里显得更加明智。
  3.计算机硬件环境
  在代价允许的范围内我们还可以在硬件环境上提高:诸如计算机CPU,内存容量,硬盘转速,网络等等基本的硬件结构,以及多处理器,集群技术等。
  4.交易商
  自动交易系统说到底还是一个进行交易的工具,这就不可避免的要跟交易商打交道。交易商的网路接入速度,服务器性能,客户数量,数据提供的速度,数据接口的易用性、冗余性都是另一个限制系统速度的因素。所以交易商的选择也是一个值得考虑的因素。
  以上便是我们在自动交易系统开发之前,需要认真考虑的四个影响交易系统运行速度的主要因素

全球外汇中文网Fx263.com  ,阅读更多请登录www.Fx263.com

【版权声明】

本文仅代表作者观点,不代表本站立场。Fx263.com对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证,且不构成任何投资建议,请读者仅作参考,并自行承担全部风险与责任。Fx263.com作为信息内容发布平台,页面展示内容的目的在于传播更多信息,不代表Fx263.com立场;本站会员及自媒体人所发的稿件所载明的信息与本网无关,如文章涉及版权,请联系本站处理。

【风险提示】

请通过正规渠道参与外汇保证金交易。目前通过网络平台提供、参与外汇保证金交易均属非法。请提高意识,谨防损失!外汇、贵金属和差价合约(OTC场外交易)是杠杆产品,存在较高的风险,可能会导致亏损您的投资本金,请理性投资。

 

Fx263.com - 全球外汇中文网

本站为国际华语金融资讯网站。

重要声明 | 本站部分内容不适用于中国大陆地区访客。

Powered By Fx263.com - 版权所有

大中华地区全球外汇中文网

本站新注册用户请扫二维码

本站内容仅供参考盈亏自负