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++外的另外选择。如果从全栈开发角度,是一个不错的选项 。

仁者见仁,不争论。

相关推荐
无敌最俊朗@1 小时前
C++ 序列容器深度解析:vector、deque 与 list
开发语言·数据结构·数据库·c++·qt·list
Da Da 泓1 小时前
LinkedList模拟实现
java·开发语言·数据结构·学习·算法
Humbunklung2 小时前
VC++ 使用OpenSSL创建RSA密钥PEM文件
开发语言·c++·openssl
Humbunklung2 小时前
填坑:VC++ 采用OpenSSL 3.0接口方式生成RSA密钥
开发语言·c++·rsa·openssl 3.0
zl21878654483 小时前
Playwright同步、异步、并行、串行执行效率比较
开发语言·python·测试工具
Tony Bai4 小时前
【Go开发者的数据库设计之道】05 落地篇:Go 语言四种数据访问方案深度对比
开发语言·数据库·后端·golang
gopyer4 小时前
180课时吃透Go语言游戏后端开发3:Go语言中其他常用的数据类型
开发语言·游戏·golang·游戏后端开发
come112344 小时前
Go vs. PHP:核心优势劣势对比
开发语言·golang·php
eqwaak04 小时前
Flask实战指南:从基础到高阶的完整开发流程
开发语言·后端·python·学习·flask
笨蛋不要掉眼泪5 小时前
SpringBoot项目Excel成绩录入功能详解:从文件上传到数据入库的全流程解析
java·vue.js·spring boot·后端·spring·excel