首页
技术笔记
网址导航
Json在线解析
二维码
Ip地址查询
在线流程图
新用户注册
|
会员登录
在线工具
开发笔记
毒鸡汤
网址导航
免费在线流程图
4赞
593
当前位置:
开发笔记
>
编程语言
> 正文
R 和 Python 在金融界的发展前景怎样?
作者:Life一切安好 | 2021-09-08 09:07
特别是量化交易方面的用途
特别是量化交易方面的用途
回复内容:
国内不太清楚,只说美国。
R vs. SAS
美国大型金融机构几乎前篇一律的用SAS。最重要原因的在于用SAS省却了尽职调查。R作为一款免费软件,有大量第三方的library或者package。你说你用吧,挺方便,但是每用一次你就得给这个来一次尽职调查。不然银行内的model validation team,internal audit或者美联储都回来挑麻烦的。或者你不用,不过自己把所有需要的工具自己写一遍也够累的,何况自己写了也需要validate。而不管是对第三方code的尽职调查,还是对自己code的validation,都成本很高,牵扯很多部门,需要按照详细的流程走下来。(美联储的要求越来越严格了)
反观SAS,作为一个default工具,不管是用Base SAS还是SAS EG,交点钱就好了。对于这些机构来说,SAS真的不贵。我们最近在帮某大行Bulid model,team去了几十个人,客户也没在乎是不是每个人都需要,就给每人都配了Base SAS和SAS EG。
另外银行动辄上百个G大小的数据,R跑起来可能真的太吃力了。相反基于Server的SAS用起来非常流畅。
Python vs. C++
这个我了解不多。但是Python在machine learning上的应用越来越好,所以在量化交易上应该还是有前景的。而且Python和其他语言的对接做的很棒,也算是他的优势吧。另一方面Python真的很简洁,连我这种看见C++就头疼的人也能写一些simulation。如果要求不是很严格,很多人会非常乐于接受Python吧。 泻药!!好激动哇咔咔。。。
而且还没有人回答~~~ 那我先来冒充一下吧嘿嘿嘿。。。
====================================================================
我的观点是:在量化投资方面这两个语言很有用,但是还不够用。。。在金融界的其他场合,严重不够用。
先说量化投资,需要大量代码实践的地方主要是:模型开发、模型实践、模型修正
1. 量化的模型开发,主要包括参数确定、模型回测,以及前测
这部分工作需要做大量的统计工作,你想做个神经网络,或者SVM,或者贝叶斯学习等等,哪怕简单如线性回归,说到底都是统计工作,一个好的统计软件可以让你的生产力大大增加对不对?~~
作为统计软件,R的主要对手是:SAS, MATLAB, STATA, EVIEWS,还有OXmatrix等(我水平差,大概就知道这几种)。愚以为STATA, EVIEWS两个软件在统计能力方面已经追不上R了,前两者还少有一拼。。但是R免费啊~~这是多么难能可贵的品质!
回测的时候还会经常写一些脚本类的东西。这个时候python就会很好用啊~~R也可以,但相对来说,python方便一些。MATLAB也很好(我就是很喜欢这个软件),但是用正版贵啊(用盗版不值得提倡哈),python还是免费的。。但也和你的应用场景有关系。比如,如果你是在excel里建模的,那么VBA就会很好用,比python好用。所以说python还不够用。
不够用的另一个方面就是你还需要管理数据,所以你需要知道数据库的知识,和对应的语言。
模型前测的时候,大概就是“试运营”阶段吧。除了统计分析,你还要做一下交易记录等。如果做的是超高频交易,python绝对不够用。。如果不是,会点C++也没什么不好的对不对?……我在
http://
quantnet.com
上问过,除了高频交易,你们为什么那么强调速度?回答的那个人挺傲慢的,没说出什么特别的理由,只说:我就是想快点(他为什么这么吊)……尽管如此,好像“能快一点”是个挺重要的理由的。。
还有一个限制,就是你用R/python对应的数据量不要太大,数据量太大R容易hold 不住,主要原因是R的内存管理并不是最优秀的。但是大部分人其实并没有那么大的数据量……注意哈,是不够用,不是不能用哈~~
2. 模型实践,就是真刀真枪交易啦~~这部分参见前测。
3. 模型修正~~个人觉得和开发的工作内容差不多(水平太差,大家见谅),所以,参见第一部分。
=========================================================================
那么在金融界呢?
金融界嘛,是个挺大的范畴的。。你说在四大银行做后台管理,做账户信息管理的算不算?开发银行的APP的算不算,做网页管理的算不算?这些岗位嘛,其实我觉得不怎么用R python的……
当然,很多人问,这些不都是外包出去的吗?当然啦,银行会买很多专业的软件,但是银行也得养一批自己的技术人员。具体要干什么我也说不上来,但是我认识一个我们学校信息学院的计算机研究生学长,跟他聊天的时候他提到过,他的一些同学被中国银行招到后台了,平时要写挺多代码的……
好吧,我为自己的无知道歉哈~~但是R python严重不够用这个结论应该是对的。。
推荐阅读
程序员
如何在多列中使用groupby转换
如何解决《如何在多列中使用groupby转换》经验,为你挑选了1个好方法。 ...
[详细]
程序员
Laravel 5.1验证规则alpha不能占用空格
如何解决《Laravel5.1验证规则alpha不能占用空格》经验,为你挑选了2个好方法。 ...
[详细]
程序员
如何使对象仅在three.js场景中对一个摄像机可见
如何解决《如何使对象仅在three.js场景中对一个摄像机可见》经验,为你挑选了1个好方法。 ...
[详细]
程序员
使用VS2015 Update 1编译时表达式破坏代码
如何解决《使用VS2015Update1编译时表达式破坏代码》经验,为你挑选了0个好方法。 ...
[详细]
程序员
导入我的自定义模块/框架Xcode Swift
如何解决《导入我的自定义模块/框架XcodeSwift》经验,为你挑选了1个好方法。 ...
[详细]
程序员
TableView与协议UITableViewDataSource与Xib文件的冗余一致性
如何解决《TableView与协议UITableViewDataSource与Xib文件的冗余一致性》经验,为你挑选了1个好方法。 ...
[详细]
程序员
为什么Go函数字段设置器不保留功能?
如何解决《为什么Go函数字段设置器不保留功能?》经验,为你挑选了1个好方法。 ...
[详细]
程序员
选择器在jQuery中获得最佳性能?
如何解决《选择器在jQuery中获得最佳性能?》经验,为你挑选了2个好方法。 ...
[详细]
程序员
我如何获得一个函数来调用调用它的函数?
如何解决《我如何获得一个函数来调用调用它的函数?》经验,为你挑选了0个好方法。 ...
[详细]
程序员
Github创建空分支
如何解决《Github创建空分支》经验,为你挑选了1个好方法。 ...
[详细]
程序员
PhantomJS捕获移动浏览器的屏幕截图
如何解决《PhantomJS捕获移动浏览器的屏幕截图》经验,为你挑选了1个好方法。 ...
[详细]
程序员
如何为从pandas DataFrame创建的条形图设置x轴刻度位置?
如何解决《如何为从pandasDataFrame创建的条形图设置x轴刻度位置?》经验,为你挑选了1个好方法。 ...
[详细]
程序员
检查是否有东西增加了1
如何解决《检查是否有东西增加了1》经验,为你挑选了1个好方法。 ...
[详细]
程序员
动态编程(Codility Q:NumberSolitaire)
如何解决《动态编程(CodilityQ:NumberSolitaire)》经验,为你挑选了1个好方法。 ...
[详细]
程序员
Apache Thrift:在列表之前使用"可选"时,C++服务器似乎不能正确返回它
如何解决《ApacheThrift:在列表之前使用"可选"时,C++服务器似乎不能正确返回它》经验,为你挑选了1个好方法。 ...
[详细]
程序员
我在哪里可以看到路径中的文件getApplicationContext().getFilesDir()
如何解决《我在哪里可以看到路径中的文件getApplicationContext().getFilesDir()》经验,为你挑选了1个好方法。 ...
[详细]
程序员
tvOS如何识别Objective C的远程手势?
如何解决《tvOS如何识别ObjectiveC的远程手势?》经验,为你挑选了1个好方法。 ...
[详细]
程序员
Tomcat on VPS上缺少webapps
如何解决《TomcatonVPS上缺少webapps》经验,为你挑选了0个好方法。 ...
[详细]
程序员
如何在动画时使用UIButton
如何解决《如何在动画时使用UIButton》经验,为你挑选了1个好方法。 ...
[详细]
程序员
为什么在调用printf时会覆盖EDX的值?
如何解决《为什么在调用printf时会覆盖EDX的值?》经验,为你挑选了2个好方法。 ...
[详细]
吐了个 "CAO" !
吐个槽吧,看都看了
会员登录
|
用户注册
Life一切安好
这个屌丝很懒,什么也没留下!
关注作者
Tags | 热门标签
actionscrip
bash
c#
c++
c语言
erlang
flutter
go
golang
java
javascript
lua
node.js
perl
php
python
scala
typescript
RankList | 热门文章
1
Git/SourceTree - 远程无效的用户名或密码
2
为什么不允许在重写方法中使用参数类型(一个是原始的而另一个是包装器)的区别?
3
如何快速填充大量数据以利用熊猫fillna?
4
PHP:理解字符串类型杂耍
5
在Firebase中托管.NET Web Api
6
如何在Haskell中提取列表的所有唯一对?
7
SBT插件不使用自定义解析器
8
Android运行时执行与NetworkRequest
9
Ios Swift在非线性路径中为视图设置动画
10
如何将R脚本放入包中
11
什么是spark.streaming.receiver.maxRate?它如何与批处理间隔一起使用
12
如何在Grails中建模存储过程记录?
13
我的网站在移动设备上显示为桌面
14
if语句在for或while循环中
15
403 Forbidden Spring Boot Web Socket Call
16
R-根据因子水平分割直方图
17
Bot postMessage缺少图标和名称
18
如何在XQuery中创建没有else的if语句?
19
基于角度组件的方法并在Router中使用resolve
20
詹金斯的龙目岛
DevBox开发工具箱 | 专业的在线开发工具网站
京公网安备 11010802040832号
|
京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有