Rust : 从事量化的生态现状与前景

Rust适不适合做量化工作?

一般地认为,目前大部分场景策略开发最佳是Python;策略交易和部署是C++。但还是有人会问,Rust呢?

这个问题不太靠谱!

适不适合做一件事情,本身就是一件主观的事。即使是一件确定的事呢,也会有不同的答案,因此不同的人,自然有不同的看法。

语言精通水平不同:有人出神入化,有人只懂皮毛,出活有快有慢,自然会得出不同的结论。

角色和场景不同:有人做策略开发,有人做策略部署,有人做全栈,有人做风控或绩效评估等;有人高频,有人低频;

有人只要日bar,有人必上tick,这又如何一样?

条件不同:有人机器要省之又省,有人机器带宽无限造。有人时间很宝贵,有人人力很便宜,因人而异结论自然不同。

因此,适不适合,本身就是一个伪命题,鞋子合不合脚,本身也不需要别人来评价。

尽管如此

尽管做适不适合的评价,有点不太靠谱的。但并不是说,做这样的评价完全没有价值。就象"黑神话:悟空",你在设计之前,不同的技术选型,也一定是结合自身的特点和工具、平台自身的优劣来得出来的,可能有一些无奈,可能也有一些经验。

一、评价维度

评价一个语言,往往可能有几个维度:易用、成熟度、 性能、安全、生态。放在这里,也是不错的几个维度。

1、易用性

学习资料(官方文档、书籍、博客)、国内baidu、stackoverflow;

学习上手所需时间;

代码简洁性;

2、性能

这个通过各种排名可以看到。

3、资源占用及安全性

GC和非GC,内存管理方式;

内存安全等;

内存和CPU占用;

4、语言自身成熟度

github star; 语言各种排名;

是否1.0?

异步和多线程:(JS和python:单线程,但均支持异步)

类型丰富、表现力强;

宏、类lammda(匿名函数)、

泛型;

FFI:ABI;

行业知名库的影响:

5、行业生态

使用普及性;

行业公司采用案例;

行业专业库广度和深度;

以上1-4仁者见仁,今天主要从第5项生态角度看,看看Rust在量化上是否有前景?

二、Rust行业量化生态评估

初步整理了Rust目前的生态,大家可以参考一下。参考时间是2024年9月初。

三、相关判断

Rust在机器学习库、基础库、文件IO上是比较强的;制图算不上强,但能满足正常需求。但有待提升;金融库和统计库相对较弱,但满足基本需求。

总体上,Rust在量化上的生态还是不错的。

回到最初的问题上:在策略开发上,是否适合,这个取决个人的水平,出活快就适合,出活快就算了;在策略交易和部署上,Rust其安全性、性能的保证可以成为除C++外的另外选择。如果从全栈开发角度,是一个不错的选项 。

仁者见仁,不争论。

相关推荐
何中应5 分钟前
Spring Boot中选择性加载Bean的几种方式
java·spring boot·后端
阿俊仔(摸鱼版)9 分钟前
Python 常用运维模块之OS模块篇
运维·开发语言·python·云服务器
军训猫猫头10 分钟前
56.命令绑定 C#例子 WPF例子
开发语言·c#·wpf
sunly_16 分钟前
Flutter:自定义Tab切换,订单列表页tab,tab吸顶
开发语言·javascript·flutter
远方 hi27 分钟前
linux虚拟机连接不上Xshell
开发语言·php·apache
涛ing36 分钟前
23. C语言 文件操作详解
java·linux·c语言·开发语言·c++·vscode·vim
NoneCoder37 分钟前
JavaScript系列(42)--路由系统实现详解
开发语言·javascript·网络
半桔40 分钟前
栈和队列(C语言)
c语言·开发语言·数据结构·c++·git
九离十1 小时前
C语言教程——文件处理(1)
c语言·开发语言
小高不明1 小时前
仿 RabbitMQ 的消息队列3(实战项目)
java·开发语言·spring·rabbitmq·mybatis