- 博客(12)
- 资源 (21)
- 问答 (1)
- 收藏
- 关注
原创 量化投资学习笔记03——封装回测操作
从前两篇文章中,我们使用pyalgotrade框架进行了量化策略的回测的基本操作。使用框架确实比较方便,但是仍有很多每次都要进行的重复操作,比如建立数据源,建立策略,绑定策略与分析器,运行回测,取得回测结果,绘图等。能不能进行进一步的封装?我想要的是,指定要交易的股票代码,基准股票代码,初始资金,手续费率,回测时间等参数,然后执行回测,就能得到各种回测数据,还可以绘图。现在就开始干吧。clas...
2019-12-19 13:54:07
437
原创 量化投资学习笔记02——计算回测指标
上篇文章里用pyalgotrade框架计算了策略收益率、夏普值、最大回测等回测指标,但是貌似没有直接计算α值,β值,信息比率等回测指标的方法。看来要自己实现了。参照《Python量化策略风险指标》( https://zhuanlan.zhihu.com/p/55425806) 这篇文章里的定义实现吧。先来计算beta值。beta值相当于业绩评价基准收益的总体波动性。常被用于衡量某一策略的系统性...
2019-12-17 11:18:30
1128
原创 ETF定投数据分析9——使用BT框架模拟交易
距离上次文章已经过去几个月了,我一直在与模拟交易挣扎。代码已经能运行了,但是想添加止盈止损的策略,总是调不对。具体可以看项目github库(https://github.com/zwdnet/etfdata)里的simulate分支里的simulater2.py。后来,我想不能再这么挣扎下去了。于是就在网上找量化投资的python库。几番尝试找到一个叫bt的库,是建立在ffn基础上的。试了一下,...
2019-06-03 15:37:32
1021
原创 ETF定投数据分析7——模拟交易系统开发
之前写的模拟交易程序,把整个过程放到一个函数里,好几百行,全是if else,导致有问题我也很难找出来。现在打算重写。看了一些网上的资料和开源框架,模拟交易主要有for循环模式和事件驱动模式两种方式,前者速度较快,实现简单,但移植到实盘交易系统里需要重新修改很多。后者速度慢,实现复杂,但可以很方便的用于实盘交易。由于我不是搞高频交易,只是研究,就用for循环模式吧。画了个流程图。从图里可以分出...
2019-03-19 13:07:11
653
原创 安卓手机python程序开发利器——Pydroid3
作为非专业程序员写程序,往往不方便使用电脑,而智能手机几乎人手一部的。我就在想有没有能在安卓手机上写python程序的应用。经过搜索,有好几个办法。一个是安装termux终端,然后在里面安装配置python环境,但是编辑源程序是一个问题,用vim等编辑器毕竟没有在电脑上按键方便。还有一个方法是安装pydroid3应用。在手机自带的应用市场和豌豆荚等第三方应用市场里都搜不到这个应用,在谷歌官方应用市...
2019-03-01 13:36:02
24194
11
原创 ETF定投数据分析6——蒙特卡洛算法2
春节过完了,我们继续量化投资学习之旅。先获取更多的数据,我定投的两个etf基金分别建立于2012年和2013年,我们以最晚的纳指etf的创立时间2013年5月1日为起始点,收集股价数据。先收集数据,用之前用过的函数。只用运行一次。#获取从2013年5月15日至2019年2月1日的数据 beginTime = 20130515 endTime = 20190201 etf...
2019-02-21 13:54:59
544
原创 ETF定投数据分析5——蒙特卡洛算法
接下来就用蒙特卡洛算法分析一下数据吧。老规矩,先新建一个名为MonteCarlo的分支,新建一个名为MonteCarlo.py的文件。先看一下我的数据,平均每7个交易日交易一次,手续费率0.0003(万分之三,不足0.1元收0.1元)。购买300etf和纳指etf两个股票,金额平分。即交易28次,每次交易金额1000元,剩下的,并到下次交易。以上就是模拟的假设。接下来就是进行交易模拟的函数,比较...
2019-02-03 09:32:27
1422
原创 ETF定投数据分析4——计算各种回测指标
先计算各种回测和评估策略时要用的指标吧。参考:https://zhuanlan.zhihu.com/p/24356155https://zhuanlan.zhihu.com/p/55425806https://zhuanlan.zhihu.com/p/29386150先建立一个新的分支Index,再建立一个新文件index.py,写计算各种指标的程序。这个过程折腾了我几天,方法是先建立...
2019-01-31 15:25:17
3009
原创 ETF定投数据分析3——金融数据分析
现在我们接着对数据进行分析,主要参考《Python金融实战》一书第8章及后面的章节。首先是进行时间序列分析,主要涉及pandas和statsmodels两个库,用pydroid3都能装的。在本地新建一个名为finance的git分支,新建finance.py文件,先读入数据到DataFrame中。import pandas as pdif __name__ == "__main__":...
2019-01-26 17:26:40
689
原创 ETF定投数据分析2——数据分析
上一篇文章用Python对定投数据进行了处理,计算出了总的收益率随时间的变化数据,保存到了csv文件里。现在我们就开始对数据进行具体的分析。具体如何分析,我也没谱,是第一次,走到哪儿就算哪儿吧。首先,先建立一个git分支,在分支上编辑新代码,完成以后再合并。git分支功能我以前也没怎么用过,只是知道有这么个功能。搜了一下,又动手实验,成功了。先建立名为data_analysis的分支,然后转移到该...
2019-01-26 17:24:05
837
原创 ETF基金定投数据分析1——数据收集
ETF基金定投数据分析1——数据收集作为一个80后的小伙,我错过了一次又一次让自己财富增加的机会,唯一的投资理财就是把钱通通放到某额宝里。一年前,我开始学习理财的知识,最后选择进行etf基金定投来投资。找了一家券商开了户。投资的品种就两个:300ETF和纳指ETF,分别追踪沪深300指数和纳斯达克指数。选择这两个指数之前我用python跑了一下历史数据,二者的相关性很低,也许可以做风险对冲?开...
2019-01-26 17:18:57
3098
7
Linux命令行下的个人记帐程序
2011-10-26
QT写的五子棋人机对弈程序
2011-10-07
用QT写的贪食蛇游戏
2011-09-21
使用MySQL的实验程序:电子书管理软件
2011-06-19
《Orange's 一个操作系统的实现》电子书第五部分
2011-02-13
《Orange's 一个操作系统的实现》电子书第四部分
2011-02-13
《Orange's 一个操作系统的实现》电子书第三部分
2011-02-13
《Orange's 一个操作系统的实现》第二部分
2011-02-13
《Orange's 一个操作系统的实现》第一部分
2011-02-13
《妙趣横生的算法》电子书第三部分
2011-02-13
《妙趣横生的算法》电子书第二部分
2011-02-13
《妙趣横生的算法》电子书第一部分
2011-02-13
SageMath教程中文版
2010-12-23
A Practical Introduction to Data Structures and Algorithm Analysis Third Edition (C++ Version)
2010-10-27
定时自动休眠/关机的小程序源代码
2010-03-18
五子棋游戏人机对弈程序源代码
2010-03-18
pycharm里怎么笔记本电脑触摸板的二指滚动功能无法用?
2017-05-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人