讨论Rust在量化领域的应用,将成为一种新趋势?

头像
王丹
127阅读5评论


今年,国内量化私募迎来了高光时刻。据私募排排网数据显示,截至目前,国内百亿私募扩容至95家,其中百亿量化私募由去年10家增至24家。

据中国证券投资基金业协会的数据显示,截至2021年8月,国内私募基金管理规模高达5.5万亿元,相较2020年底增幅达46.56%;其中,量化基金规模已突破1万亿元,成交额占比约为12%-15%。

在国内百亿私募阵营不断扩大的过程中,量化私募做出了巨大贡献。但相较欧美国家,国内量化策略的发展仍处于初级阶段,上升空间还很大。

一、Rust或将成为量化领域的新趋势

量化交易在中国的蓬勃发展,人工智能在投资领域的应用,以及交易工具的丰富,使得程序化交易在证券市场越来越受欢迎。程序化交易能够更快地、更有纪律性地执行策略,从而减少冲击成本、降低情绪影响。规模较大的私募,由于具有交易策略多样性、交易市场广泛性、交易品种复杂性等特点,对程序化交易的需求显得尤为迫切。

历史上曾发生过因软件Bug导致的亏损及个股闪崩等事件,这些风险事件大多是在程序化交易过程的关键点上没做好检查和风险控制所致。如果能从系统构建开始就有意识的做好防范,使用正确的编程方式,就可以在很大程度上避免风险事件的发生。

当前,国内量化交易领域已开始布局Rust方向的人才招聘,这是否意味着:在国内高频量化交易领域的应用,Rust将成为一种新趋势?先来看看他们怎么说的吧。

小王:就高频量化交易系统而言,Rust作为主要面向安全的高性能计算编程语言,比C++强,原因是Rust没有历史包袱,虽然追求性能,但没有C++用起来复杂,也不容易造成内存泄漏。

小张:Rust起步晚,应用到高频量化交易领域还需一个逐步完善生态的过程;不敢说Rust成为该领域的趋势,但至少会有部分场景的应用。

小刘:绝大部分的交易接口在未来很长时间里仍会以C++方式显现,用Rust调用C++写的接口可能比较麻烦,性能上是否有质的飞跃,还待考察。

小房:Rust很适合用在量化的交易或生产阶段,因为Rust可以很好地降低交易代码中潜在的Bug,也容易进行生产调试。

对于Rust在高频量化交易领域的应用,大家的看法各有不同,在未来既是机遇也是挑战。现阶段,非凸科技正基于Rust生态打造高效率、低延迟、高可靠全内存高频交易平台,持续为券商、量化私募等众多大型金融机构提供优质的算法服务。

二、Rust VS C,在编程效能上的优势

Rust是一门赋予每个人构建可靠且高效软件能力的语言。集表达力、高性能、内存安全于一身的Rust,在很多场景里都能大施拳脚,高频量化交易领域也不例外。

Rust足够底层,它可以像C一样进行优化,以实现最高性能。抽象层次越高,内存管理越方便,可用库越丰富,Rust程序代码就越多,做的事情也就越多。

除此之外,Rust程序的优化也很好,有时候比C还好,C适合在逐个字节、逐个指针的级别上编写最小的代码,而Rust具有强大的功能,能够有效地将多个函数甚至整个库组合在一起。

然而,最大的潜力是可以无畏地并行化大多数Rust 代码,即使等价的C代码并行化的风险非常高。在这方面,Rust是比C更为成熟的语言。

不如看一下,Rust与C在编程效能方面有什么不同?

代码行数

Rust的优势在于,作为一种具有高级语言的一些特征的语言,它既是函数式的,也是面向对象的,它可以开发出比C语言更紧凑、更容易解释的代码。代码量少的情况下,还有更强的可维护性。在优化过程中:

  1. C需要不断改变解决方案的逻辑才能更好地利用数据位置的优势,而Rust则更有效地管理了内存,优化过程中不需要对解决方案进行修改。

  2. Rust的迭代器可以通过更简单的方式生成并行代码,而C则需要对不同的OpenMP选项来实现适当并行化。

  3. Rust中添加外部库非常方便,比如数学优化库或rayon库,C则比较麻烦。

讨论话题:
工作&职场行业&时事
城市:
杭州成都深圳广州上海北京海外
收藏
举报
加载中…
精选评论
头像
等级0

rust的作用就是把安全约束融入到语法,适合我这种学不会C++的菜鸟

能学会Rust,也很厉害哦~有兴趣的话,可以关注我司rust招聘,一起成长

头像共建者
等级8

绝大部分的交易接口在未来很长时间里仍会以C++方式显现,用Rust调用C++写的接口可能比较麻烦,性能上是否有质的飞跃,还待考察。

这个人的观点还是很中肯的。

汽车/航空等倾向于软件稳定安全的领域,rust无疑会有无限可能,当然井底之蛙技术佬也有很多,你跟他讲rust在安全这块儿做的有效约束和努力,他老是跟你讲其他语言也可以,还是推广起来有太多阻力

头像
等级0

招聘:Rust开发工程师
薪资:提供有竞争力的薪资
福利:租房补贴;年终奖金;定期团建;五险一金
工作地点:北京、上海、成都
邮箱投递:recruit@ft.tech