选股策略回测用 Matlab 好还是用 Python 好

2024-05-14 06:42

1. 选股策略回测用 Matlab 好还是用 Python 好

首先十年的日级别数据量的确不大,使用Python来说的话不应该出现memoryerror,应该是在编程方面需要再多留意,我们在Ricequant上使用的分钟数据大概是200-300个GB左右,也是Python和Java共同合作完成的。

语言只是一个语言,兴许会有各种语法的不同,但是在谈语言的时候我们需要了解背后的工具箱和社区,以及它为什么处理一些事情比另外的一些语言要好。

本
身Python初期用来做金融回测等是应该被放弃的,用来开发策略也应该是被放弃的,因为相比matlab的矩阵运算来做开发,实在是太方便了。只不过后
来Python推出了series、pandas等一系列的强悍library,pandas的语法基本在“无耻”地模仿matlab和R,而
pandas的开发者正是美国大名鼎鼎的对冲基金AQR,因此使data 
crunching和对数据的一些操作大大便利,此外,又包装了海量的开源社区的数学和科学计算库,也能处理各种的machin  
learning等等的问题。

从科学计算的语言的发展来看,从最初的人们对浮点数计算的需求加入了fortran,再一路进行,让工具更加的让科学计算容易再容易(Python也封装了大量早期的数学家们用fortran写的数学计算基础库,这些经历了几十年的考验、加速等等):


我们来看下python目前的科学技术栈:

numpy: basic array manipulation - 基础的数组处理
scipy: scientific computing in python, including signal processing and optimization - 科学计算,包括信号处理和优化等
matplotlib: visualization and plotting - 几行代码就可以做图形化显示了
IPython: write and run python code interactively in a shell or a notebook - 互动式编程环境,这是能将来替代掉matlab的一个必备,即在一行一行代码的输入、显示过程中学习、改进
pandas: data manipulation - 最重要的矩阵运算等
scikit-learn: machine learning - 机器学习

但
是随着以后的发展Python的开源属性就会体现的越来越强大,可以让更多的人享受到其便利和贡献进来,包括Quantopian也放出了zipline
的python回测框架,只需要引入yahoo数据即可进行回测,并且Python的速度由于跟C的很好的结合可以达到非常快的速度,而且可以将来和其他
系统很容易整合对接实盘交易接口。

由于欧美已经有很多的投行和对冲基金在往Python的技术栈靠拢,因此选择了Python即掌握了一门重要的工具,并且无需跟一家私有化公司进行捆绑。

当然,最后的最后,所有的python回测你都可以来Ricequant - Beta上完成,我们支持海量的市场、财务数据,还有不断加入的和大数据公司合作的舆情数据等等,同时策略回测完还可以做实时模拟交易,享受到实时数据的计算。在云平台上已经支持了几乎所有的Python科学计算库,无需花时间安装、测试等等。

选股策略回测用 Matlab 好还是用 Python 好

2. 选股策略回测用 Matlab 好还是用 Python 好

语言就是用来干活的,中间文件用HDF5或者csv转存,需要时间序列分析的时候上R.毕竟Python的sm库还是很烂的,但是PCA和大量的多因子计算,Python R MATLAB都差不多。 

回测讲究并发效率和一些多参数回测的参数调优以及一些MC方法的估计时,py运行效率(相对于MATLAB)会高一些

总体来说,别太把语言当回事,就跟吃饭用筷子还是勺子还是叉子,要根据食材来

3. 选股策略回测用 Matlab 好还是用 Python 好

用Matlab吧,我用了matlab16年了,python用了几个月,还是觉得matlab好用

选股策略回测用 Matlab 好还是用 Python 好

4. 量化选股策略的创建和回测哪个工具好?

策略的最大资金容量和量化策略的回测收益、波动等数据没有太直接的关系。策略的最大资金容量如何确定是个偏实际应用的问题,一般的策略最大资金容量你很难说出一个具体的准确的数字是多少。
在考虑策略最大资金容量时,可能考虑到的因素有1策略本身的逻辑,2策略交易频率,3策略交易品种的日内总成交量和总持仓量,4策略交易品种的瞬时挂单量,5资金的风险偏好,6市场上同类型策略的资金容量等等。
今天有空接着之前的继续写
一个完整的策略在交易时可以分为以下三步:
1建仓入场
2持有
3平仓出场
1、3这两个过程,持续的时间越长,交易品种的总成交量越大,那么策略在交易时的冲击成本就越少,容量也就越大。
所以高频交易容量<期货趋势类策略容量<股票类策略容量。特别是到高频交易这个级别,需要观察瞬时的挂单量来确定有多少交易可以执行,而进一步确定容量有多大。
在2这个过程中,由于价格的波动会出现账面上的获利和亏损。这就引出来了第二个总要因素,资金的风险偏好。一般来说,越大的资金对风险的厌恶程度就越高。
所以期货趋势类策略容量<期货品种间套利策略容量<Alpha类股票策略
但成交量在决定资金上限时更重要,所以虽然期货品种间套利策略风险低于纯股票策略,但纯股票策略的资金容量更大的原因。
市场常见的策略类型及其资金容量:
高频交易 100万——1000万
期货趋势策略 100万——数千万
期货品种间套利策略 1000万——数亿
纯股票策略 数千万——数百亿
Alpha类股票策略 数千万——数十亿

5. 选股策略回测用matlab好还是用python好

我没钱,支持免费开源

抛开版权不说,初期入手策略测试、数据分析用matlab非常方便
但是策略测试方法、框架弄清楚后,要做正规的回测,还是Python方便,这里的正规是指严格的事件流驱动,虽然速度慢,但是避免未来函数影响、接近实盘的逻辑。
Python在这方面已经有很多库了,quantopian的zipline应该算鼻祖了,国内的优矿网和ricequant都跟zipline很像,另外还有知乎大神的zn.py,PyAlgoTrade等

选股策略回测用matlab好还是用python好

6. 选股策略回测用matlab好还是用python好

我没钱,支持免费开源

抛开版权不说,初期入手策略测试、数据分析用matlab非常方便
但是策略测试方法、框架弄清楚后,要做正规的回测,还是Python方便,这里的正规是指严格的事件流驱动,虽然速度慢,但是避免未来函数影响、接近实盘的逻辑。
Python在这方面已经有很多库了,quantopian的zipline应该算鼻祖了,国内的优矿网和ricequant都跟zipline很像,另外还有知乎大神的zn.py,PyAlgoTrade等

7. python 回测用什么包

初期入手策略测试、数据分析用matlab非常方便 但是策略测试方法、框架弄清楚后,要做正规的回测,还是Python方便,这里的正规是指严格的事件流驱动,虽然速度慢,但是避免未来函数影响、接近实盘的逻辑!

python 回测用什么包

8. python 回测用什么包

支持免费开源 抛开版权不说,初期入手策略测试、数据分析用matlab非常方便 但是策略测试方法、框架弄清楚后,要做正规的回测,还是Python方便,这里的正规是指严格的事件流驱动,虽然速度慢,但是避免未来函数影响、接近实盘的逻辑