量化QQ交流群:371474481
aHR0cDovL3dlaXhpbi5xcS5jb20vZy9BZkF6dEl4eUhJTk1UVlhV (二维码自动识别)
关于python的优势就不说再多了,地球人都知道,还不知道的去面壁思过。因为不想当韭菜,所以还是自己老老实实写代码吧。
记录些常用的内容,以便自己回头复习。
常用的函数有:numpy 处理向量矩阵
scipy 数据统计优化处理
pandas 金融数据分析
matplotlib 画图
tushare 财经数据
Zipline 回测平台
TaLib 技术指标
——介绍
Numpy
Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。其实,list已经提供了类似于矩阵的表示形式,不过numpy为我们提供了更多的函数。如果接触过matlab、scilab,那么numpy很好入手。
Scipy
SciPy函数库在NumPy库的基础上增加了众多的数学、科学以及工程计算中常用的库函数。例如线性代数、常微分方程数值求解、信号处理、图像处理、稀疏矩阵等等。由于其涉及的领域众多、本书没有能力对其一一的进行介绍。作为入门介绍,让我们看看如何用SciPy进行插值处理、信号滤波以及用C语言加速计算。
Pandas
Pandas 是基于 Numpy 构建的含有更高级数据结构和工具的数据分析包,类似于 Numpy 的核心是 ndarray,pandas 也是围绕着 Series 和 DataFrame 两个核心数据结构展开的 。Series 和 DataFrame 分别对应于一维的序列和二维的表结构。
Matplotlib
matplotlib是基于numpy的一套Python工具包。这个包提供了丰富的数据绘图工具,主要用于绘制一些统计图形。
TuShare
TuShare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到Python pandas包在金融量化分析中体现出的优势,TuShare返回的绝大部分的数据格式都是pandas DataFrame类型,非常便于用pandas/NumPy/Matplotlib进行数据分析和可视化。当然,如果您习惯了用Excel或者关系型数据库做分析,您也可以通过TuShare的数据存储功能,将数据全部保存到本地后进行分析。应一些用户的请求,从0.2.5版本开始,TuShare同时兼容Python 2.x和Python 3.x,对部分代码进行了重构,并优化了一些算法,确保数据获取的高效和稳定。
Zipline
Zipline是一个交易算法库,该系统是对现场交易系统如何运转的一个近似,可以对历史数据进行投资算法的回溯检验。Zipline目前作为Quantopian的回溯检验引擎。
TaLib
Talib是金融软件中应用广泛的专门用来计算技术指标的开源库,涵盖了200多种市场常见的技术指标运算。它支持java,C,C++,Perl,Python等多种语言。Ricequant的java平台上也同样引入了这个库。在各种语言中,Ta-lib的python wrapper是最简洁优美的,语法几乎不需要解释就能完全看懂。
下一节把常用的模型码下。