内容提要
随着区块链行情热度增加与玩家增多,Cefi系统构建面临新机遇与挑战。本文提供在亚马逊云科技上构建Cefi高频交易系统的优化思路与硬件选择参考。
延伸解读
超线程对高频交易的影响
文章指出,在启用超线程的CPU中,每个物理核对应两个vCPU,但L1、L2缓存为物理核独享。即使将进程绑定到vCPU,也可能因共享物理核资源而产生竞争。因此,对于时间敏感的进程,建议关闭超线程,将Threads per core设为1,以减少CPU切换,保证缓存命中率和计算效率。
EC2机型选型的关键权衡
高频交易需兼顾CPU计算能力和网络性能。文章推荐C7i、C6in和C7gn三款机型:C7i采用第四代Intel至强,计算性能强但暂无网络增强;C6in为第三代Intel至强并附带网络增强;C7gn采用Graviton3 ARM CPU,无超线程且价格约为同规格Intel的80%。选择时需根据业务对适配性、计算和网络的需求排序。
实例大小与网络带宽的关系
EC2实例从8xlarge开始提供固定网络带宽,更小规格则标注“up to”表示带宽非固定。高频交易建议使用8xlarge以上机型以保证稳定高带宽。此外,大机型可提高行情利用率,减少重复获取,提升单核性价比,并支持更多网卡和IP,便于多账号交易。
内核旁路技术的适用性与局限
DPDK通过轮询模式绕过内核协议栈,减少CPU中断和上下文切换,但需独占一个CPU核心,且配置开发复杂,优化效果为微秒级。文章认为其优先级可降低,但若采用,需结合绑核操作,并推荐使用更大机型以提供独占核心。
Q&A
高频交易系统在Cefi中面临哪些挑战?
高频交易系统在Cefi中面临盈利机制单一的挑战,需要更好利用云架构以保证收益稳定。
如何选择适合高频交易的EC2实例型号?
建议优先选择C7i、C6in和C7gn型号,考虑CPU计算能力和网络性能。
在高频交易中,为什么要关闭超线程?
关闭超线程可以减少资源竞争,提高策略计算时的缓存命中率和计算效率。
使用DPDK有什么优势?
DPDK可以绕过内核协议栈处理数据包,减少CPU中断带来的性能影响,提高数据处理效率。
高频交易中如何优化网络性能?
可以启用ENA以获得额外的网络性能指标监控,及时发现网络瓶颈。
高频交易中如何处理多IP限制?
可以通过Amazon EC2的多网卡多IP功能,避免触发单个IP限制。