从三个方面展聊聊 1.稳定 听说有些同学使用自己家里的电脑跑量化交易,而且币圈交易所基本都是需要科学上网才能访问,包括api访问,这时候也还是有办法的,加上一层vpn,确实这样的确阻挡不了用家用电脑跑量化交易,交易可以进行。但小编非常不建议这样做,一个是家用电脑本身稳定性问题,家用电脑即使配置很高,但可能你会跑量化的时候看个小电影,听听歌,打打游戏或者使用一些其他应用软件,这些都是潜在不稳定因素,都有可能会造成电脑卡顿的问题;另一个是家用网络稳定性问题,访问普通web应用我们自己没什么感知确实没什么问题,但家用网络避免不了网络抖动、断网等意外问题,这对量化交易来说也许会是一次致命黑天鹅。 既然这里提到了通过vpn访问交易所,顺便插一句,其实不需要vpn,可以直接配置hosts访问,币安、火币、okex都是可以的。说下操作办法,如果你有可以访问交易所的服务器,直接在服务器上ping对应的域名,然后将返回的IP配置到hosts文件就行;如果没有可以直接访问交易所的服务器,可以通过ipip.net网站上面的ping工具找到主机对应的IP,同样配置到hosts文件就行。
2.延迟 看到一篇文章“为了0.07毫秒的比拼,竟然花费了1400万美金”的文章,我没有那么多钱,如果有那么多钱,我就不做量化交易了…,说回币圈,有些交易所提供Colocation服务,如果能使用他们的这个服务,那应该是目前最好的选择吧,但…还是没钱,这个门槛很高,对于我等韭菜来说这个可望不可即,没那么多本金,也做不到那么大流水。Colocation简单解释下就是服务器托管,把量化交易程序部署到交易所同机房的服务器上,以达到更低的延迟。量化交易做到极致比拼的是速度,别人比你早下单1毫秒,他就更有机会拿到他想要的价格。既然没钱没流水,那只能跟大多数人站在同一起跑线上,想办法找到更低延迟的服务器来跑我们的交易程序。 首先需要确定交易所服务器所使用的云服务器厂商,例如币安使用的是亚马逊,服务器部署在日本,okex使用的是阿里云,服务器部署在香港,通常交易所API文档里面会说明服务器部署所使用的服务器厂商以及地区,如果确实没有,也是有办法可以找到,就是麻烦些,这里就不提了。尽量使用同一厂商,同一地区,同一机房的服务器,这样可以最大限度的降低延迟,启动服务器后,可以使用ping命令来检查响应耗时,目前小编所使用的交易服务器ping交易所api域名响应耗时基本上在1毫秒左右。
3.性能 服务器主要涉及到CPU、内存、硬盘、还有带宽了,CPU首先是要满足需求,选择单核还是多核,其次再从服务器厂商文档里面对比下各自型号的区别,从成本以及适用性上选择合适的CPU;内存满足需求就行;硬盘一般都有云盘或者本地盘、SSD或者普通盘,主要根据磁盘IO情况确定,当然一般情况选择本地SSD应该是更好的选择;带宽也不能忽视,一般所说的带宽指的是出带宽,也就是服务器向外发送数据。程序正常运行后,可以配合监控查看服务器运行状态,包括CPU使用率,内存使用率,服务器负载、磁盘IO、出入带宽等等指标,如果有异常再对应解决。
另外,服务器操作系统的选择问题,小编除了测试需要使用windows系统外,线上环境非必要小编是不会使用windows系统的。不管从操作上、系统稳定性还是资源占用情况来说,linux都比windows强太多。