网站首页 > 文章中心 > 其它

python量化回测函数_python量化选股策略代码

作者:小编 更新时间:2023-09-04 16:26:28 浏览量:185人看过

python回测系统 模拟回测 最简单量化回测系统有哪些?支持期货和股票

github上有一个jdhc简单回测 是用python写的比较简单,需要设置些参数.

怎么学习python量化交易?

下面教你八步写个量化交易策略——单股票均线策略

①. 确定策略内容与框架

只操作一只股票,很简单对吧,但怎么用代码说给计算机听呢?

想想人是怎么操作的,应该包括这样两个部分

python量化回测函数_python量化选股策略代码-图1

既然是单股票策略,事先决定好交易哪一个股票.

对应代码也是这两个部分

def?initialize(context):

用来写最开始要做什么的地方

def?handle_data(context,data):

用来写每天循环要做什么的地方

首先,获取昨日股票的收盘价

python量化回测函数_python量化选股策略代码-图2

#?用法:变量?=?data[股票代码].close

last_price?=?data[g.security].close#?取得最这段时间收盘价,命名为last_price

然后,获取近二十日股票收盘价的平均价

#?用法:变量?=?data[股票代码].mavg(天数,'close')

#?获取近二十日股票收盘价的平均价,命名为average_price

数据都获取完,该做买卖判断了

#?如果昨日收盘价高出二十日平均价,?则买入,否则卖出

if?last_price?average_price:

买入

elif?last_price?average_price:

卖出

问题来了,现在该写买卖下单了,但是拿多少钱去买我们还没有告诉计算机,所以每天还要获取账户里现金量.

#?用法:变量?=?context.portfolio.cash

cash?=?context.portfolio.cash#?取得当前的现金量,命名为cash

#?用法:order_value(要买入股票股票的股票代码,要多少钱去买)

order_value(g.security,?cash)#?用当前所有资金买入股票

#?用法:order_target(要买卖股票的股票代码,目标持仓金额)

order_target(g.security,?0)#?将股票仓位调整到0,即全卖出

把买入卖出的代码写好,策略就写完了,如下

def?initialize(context):#初始化

def?handle_data(context,?data):#每日循环

last_price?=?data[g.security].close#?取得最这段时间收盘价

#?取得过去二十天的平均价格

cash?=?context.portfolio.cash#?取得当前的现金

#?如果昨日收盘价高出二十日平均价,?则买入,否则卖出.

用Python怎么做量化投资

本文将会讲解量化投资过程中的基本流程,量化投资无非这几个流程,数据输入------策略书写------回测输出

其中策略书写部分还涉及到编程语言的选择,如果不想苦恼数据输入和回测输出的话,还要选择回测平台.

第一段:数据

首先,必须是数据,数据是量化投资的基础

如何得到数据?

TuShare:TuShare -财经数据接口包,基于Python的财经数据包,利用Python进行摘取

如何存储数据?

Mysql

如何预处理数据?

空值处理:利用DataFrame的fill.na()函数,将空值(Nan)替换成列的平均数、中位数或者众数

数据标准化

数据如何分类?

行情数据

财务数据

宏观数据

第二段:计算语言软件

已经有很多人在网上询问过该选择什么语言?笔者一开始用的是matlab,但最终选择了python

python:库很多,只有你找不到的,没有你想不到,和量化这块结合比较紧密的有:

NumpyScipy:科学计算库,矩阵计算

Pandas:金融数据分析神器,原AQR资本员工写的一个库,处理时间序列的标配

Matplotlib:画图库

scikit-learn:机器学习库

statsmodels:统计分析模块

TuShare:免费、开源的python财经数据接口包

Zipline:回测系统

TaLib:技术指标库

python量化回测函数_python量化选股策略代码-图3

matlab:主要是矩阵运算、科学运算这一块很强大,主要有优点是WorkSpace变量可视化

python的Numpy+Scipy两个库完全可以替代Matlab的矩阵运算

Matplotlib完克Matlab的画图功能

python还有很多其他的功能

pycharm(python的一款IDE)有很棒的调试功能,能代替Matlab的WorkSpace变量可视化

推荐的python学习文档和书籍

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

pandas文档

statsmodels文档

scipy和numpy文档

matplotlib文档

TuShare文档

第二,推荐<<利用Python进行数据分析>>,pandas的开发初衷就是用来处理金融数据的

第三段:回测框架和网站

两个开源的回测框架

PyAlgoTrade - Algorithmic Trading

Zipline, a Pythonic Algorithmic Trading Library

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

Python量化投资框架:回测+模拟+实盘

以上就是土嘎嘎小编为大家整理的python量化回测函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章