有没有基于python pandas的回测框架

2024-05-05 21:19

1. 有没有基于python pandas的回测框架

Quantopian开源的zipline可以,但是本地的回测程序,做美股研究可以,但是A股不适合。
自己写个回测框架吧,模仿vn.py或者joinquant自己写个本地框架来也是可以的,如果想做的好看点学点数据库➕flask,可以做的好看些。

有没有基于python pandas的回测框架

2. 有没有基于python pandas的回测框架

关键词:开源、python/pandas、易学方便、可以并行、参数优化、事件驱动、亚ms速度、持续维护、支持股票/期货等
介绍:
在事件驱动的回测框架中,引擎逐个读取Bar或Tick并处理。数据采集模块生成市场数据事件,流经策略模块(Strategy类)产生交易信号,资产组合模块根据策略信号,并结合风险管理来判断是否委托下单,模拟的交易所根据滑点、手续费状况等返回成交结果。
使用XQuant后,大部分时候我们不需要关心底层是如何处理的,只需要在Strategy类中完成从数据到信号的处理即可,这有利于我们快速开发策略。
详细见Github,欢迎star、issue,PR。
【Update】结合其他回答有必要更新一下,供大家参考:
明晰两个问题:
1)事件驱动在大部分时候都是必须的,尽量去模拟真实交易过程中的数据播放过程,避免引入未来函数等,机器学习的feature之类可以预先算好存起来;
2)pandas用来I/O,内部的数据结构还是用python自带的,这样达到0.1ms/条的数据处理还是挺容易的,如果还是嫌速度慢,可以利用多核优势,并行运算。

3. 用Python怎么做量化投资

本文将会讲解量化投资过程中的基本流程,量化投资无非这几个流程,数据输入------策略书写------回测输出
其中策略书写部分还涉及到编程语言的选择,如果不想苦恼数据输入和回测输出的话,还要选择回测平台。
一、数据
首先,必须是数据,数据是量化投资的基础
如何得到数据?

Wind:数据来源的最全的还是Wind,但是要付费,学生可以有免费试用的机会,之后还会和大家分享一下怎样才Wind里摘取数据,Wind有很多软件的借口,Excel,Matlab,Python,C++。
预测者网:不经意间发现,一个免费提供股票数据网站 预测者网,下载的是CSV格式
TB交易开拓者:Tradeblazer,感谢@孙存浩提供数据源
TuShare:TuShare -财经数据接口包,基于Python的财经数据包,利用Python进行摘取
如何存储数据?
Mysql
如何预处理数据?

空值处理:利用DataFrame的fill.na()函数,将空值(Nan)替换成列的平均数、中位数或者众数
数据标准化
数据如何分类?
行情数据
财务数据
宏观数据
二、计算语言&软件

已经有很多人在网上询问过该选择什么语言?笔者一开始用的是matlab,但最终选择了python
python:库很多,只有你找不到的,没有你想不到,和量化这块结合比较紧密的有:
Numpy&Scipy:科学计算库,矩阵计算
Pandas:金融数据分析神器,原AQR资本员工写的一个库,处理时间序列的标配

Matplotlib:画图库
scikit-learn:机器学习库
statsmodels:统计分析模块
TuShare:免费、开源的python财经数据接口包

Zipline:回测系统
TaLib:技术指标库
matlab:主要是矩阵运算、科学运算这一块很强大,主要有优点是WorkSpace变量可视化

python的Numpy+Scipy两个库完全可以替代Matlab的矩阵运算
Matplotlib完克Matlab的画图功能
python还有很多其他的功能
pycharm(python的一款IDE)有很棒的调试功能,能代替Matlab的WorkSpace变量可视化
推荐的python学习文档和书籍
关于python的基础,建议廖雪峰Python 2.7教程,适合于没有程序基础的人来先看,涉及到python的基本数据类型、循环语句、条件语句、函数、类与对象、文件读写等很重要的基础知识。

涉及到数据运算的话,其实基础教程没什么应用,python各类包都帮你写好了,最好的学习资料还是它的官方文档,文档中的不仅有API,还会有写实例教程
pandas文档
statsmodels文档
scipy和numpy文档
matplotlib文档

TuShare文档
第二,推荐《利用Python进行数据分析》,pandas的开发初衷就是用来处理金融数据的
三、回测框架和网站
两个开源的回测框架
PyAlgoTrade - Algorithmic Trading

Zipline, a Pythonic Algorithmic Trading Library

用Python怎么做量化投资

4. python量化哪个平台可以回测模拟实盘还不要钱

Python量化投资框架:回测+模拟+实盘
Python量化投资 模拟交易 平台   1. 股票量化投资框架体系 1.1 回测 实盘交易前,必须对量化交易策略进行回测和模拟,以确定策略是否有效,并进行改进和优化。作为一般人而言,你能想到的,一般都有人做过了。回测框架也如此。当前小白看到的主要有如下五个回测框架: Zipline :事件驱动框架,国外很流行。缺陷是不适合国内市场。 PyAlgoTrade : 事件驱动框架,最新更新日期为16年8月17号。支持国内市场,应用python 2.7开发,最大的bug在于不支持3.5的版本,以及不支持强大的pandas。 pybacktest :以处理向量数据的方式进行回测,最新更新日期为2个月前,更新不稳定。 TradingWithPython:基于pybacktest,进行重构。参考资料较少。 ultra-finance:在github的项目两年前就停止更新了,最新的项目在谷歌平台,无奈打不开网址,感兴趣的话,请自行查看吧。 RQAlpha:事件驱动框架,适合A股市场,自带日线数据。是米筐的回测开源框架,相对而言,个人更喜欢这个平台。 2 模拟 模拟交易,同样是实盘交易前的重要一步。以防止类似于当前某券商的事件,半小时之内亏损上亿,对整个股市都产生了恶劣影响。模拟交易,重点考虑的是程序的交易逻辑是否可靠无误,数据传输的各种情况是否都考虑到。 当下,个人看到的,喜欢用的开源平台是雪球模拟交易,其次是wind提供的模拟交易接口。像优矿、米筐和聚宽提供的,由于只能在线上平台测试,不甚自由,并无太多感觉。 雪球模拟交易:在后续实盘交易模块,再进行重点介绍,主要应用的是一个开源的easytrader系列。 Wind模拟交易:若没有机构版的话,可以考虑应用学生免费版。具体模拟交易接口可参看如下链接:http://www.dajiangzhang.com/document 3 实盘 实盘,无疑是我们的终极目标。股票程序化交易,已经被限制。但对于万能的我们而言,总有解决的办法。当下最多的是破解券商网页版的交易接口,或者说应用爬虫爬去操作。对我而言,比较倾向于食灯鬼的easytrader系列的开源平台。对于机构用户而言,由于资金量较大,出于安全性和可靠性的考虑,并不建议应用。 easytrader系列当前主要有三个组成部分: easytrader:提供券商华泰/佣金宝/银河/广发/雪球的基金、股票自动程序化交易,量化交易组件 easyquotation : 实时获取新浪 / Leverfun 的免费股票以及 level2 十档行情 / 集思路的分级基金行情 easyhistory : 用于获取维护股票的历史数据 easyquant : 股票量化框架,支持行情获取以及交易 2. 期货量化投资框架体系 一直待在私募或者券商,做的是股票相关的内容,对期货这块不甚熟悉。就根据自己所了解的,简单总结一下。 2.1 回测 回测,貌似并没有非常流行的开源框架。可能的原因有二:期货相对股票而言,门槛较高,更多是机构交易,开源较少; 去年至今对期货监管控制比较严,至今未放开,只能做些CTA的策略,另许多人兴致泱泱吧。 就个人理解而言,可能wind的是一个相对合适的选择。 2.2 模拟 + 实盘 vn.py是国内最为流行的一个开源平台。起源于国内私募的自主交易系统,2015年初启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经一步步成长为一套全面的交易程序开发框架。如官网所说,该框架侧重的是交易模块,回测模块并未支持。 能力有限,如果对相关框架感兴趣的话,就详看相关的链接吧。个人期望的是以RQAlpha为主搭建回测框架,以雪球或wind为主搭建模拟框架,用easy系列进行交易。

5. 有没有基于python pandas的回测框架

本地运行:
Quantopian开源的zipline可以,但是本地的回测程序,做美股研究可以,但是A股不适合。

线上运行:
想线上回测美股可以使用Quantopian,不过有时链接不是很稳定;
因为A股独特的交易机制,使得没有一款本地可以运行回测的python包。一、你可以到JoinQuant聚宽量化交易平台,他们自己写的A股回测框架,还提供处理好的数据,这一点非常好,省去了自己数据清洗的过程。除了A股还有基金期货的数据,可以做个轮动,对冲等等。二、就是自己写回测框架,优点是灵活,自己随意改,缺点就是需要一定的编程基础。

总结:
JoinQuant和Quantopian数据都可以取到DataFrame格式的,并且都提供notebook以及回测模式,回测研究都可以在线完成。

有没有基于python pandas的回测框架

6. 有没有基于python pandas的回测框架

本地运行:
Quantopian开源的zipline可以,但是本地的回测程序,做美股研究可以,但是A股不适合。

线上运行:
想线上回测美股可以使用Quantopian,不过有时链接不是很稳定;
因为A股独特的交易机制,使得没有一款本地可以运行回测的python包。一、你可以到JoinQuant聚宽量化交易平台,他们自己写的A股回测框架,还提供处理好的数据,这一点非常好,省去了自己数据清洗的过程。除了A股还有基金期货的数据,可以做个轮动,对冲等等。二、就是自己写回测框架,优点是灵活,自己随意改,缺点就是需要一定的编程基础。

总结:
JoinQuant和Quantopian数据都可以取到DataFrame格式的,并且都提供notebook以及回测模式,回测研究都可以在线完成。

7. 有没有基于python pandas的回测框架

Quantopian开源的zipline可以,但是本地的回测程序,做美股研究可以,但是A股不适合。
自己写个回测框架吧,模仿vn.py或者joinquant自己写个本地框架来也是可以的,如果想做的好看点学点数据库➕flask,可以做的好看些。

有没有基于python pandas的回测框架

8. 用python的pandas能写出这样的表格么

应该可以吧,具体要去看pandas的教程