Products
GG网络技术分享 2025-11-24 03:55 1
用Python插件,先说说需要安装python周围,接下来是WindPy接口。

觉得Neng直接安装Python,一堆东西dou有了。
登录wind之后 在菜单&&,自动进行插件的安装。
本文将会讲解量化投钱过程中的基本流程, 量化投钱无非这几个流程,数据输入&策略书写&回测输出
其中策略书写有些还涉及到编程语言的选择,Ru果不想苦恼数据输入和回测输出的话,还要选择回测平台。
先说说非...不可是数据,数据是量化投钱的基础
怎么得到数据?
Wind:数据来源的Zui全的还是Wind, 但是要付费,学生Neng有免费试用的机会,之后还会和巨大家分享一下怎样才Wind里摘取数据,Wind有hen许多柔软件的借口,Excel,Matlab,Python,C++。
预测者网:不经意间找到, 一个免费给股票数据网站 预测者网,下载的是CSV格式
TB交容易开拓者:Tradeblazer,感谢@孙存浩给数据源
TuShare:TuShare -财经数据接口包,基于Python的财经数据包,利用Python进行摘取
怎么存储数据?
Mysql
怎么预处理数据?
空值处理:利用DataFrame的fill.na函数, 将空值替换成列的平均数、中位数或者众数
数据标准化
数据怎么分类?
行情数据
财务数据
宏观数据
Yi经有hen许多人在网上询问过该选择啥语言?笔者一开头用的是matlab, 但到头来选择了python
python:库hen许多,只有你找不到的,没有你想不到,和量化这块结合比比kan紧密的有:
NumpyScipy:学问计算库,矩阵计算
Pandas:金融数据琢磨神器,原AQR资本员工写的一个库,处理时候序列的标配
Matplotlib:画图库
scikit-learn:机器学库
statsmodels:统计琢磨模块
TuShare:免费、开源的python财经数据接口包
Zipline:回测系统
TaLib:手艺指标库
matlab:基本上是矩阵运算、学问运算这一块hen有力巨大,基本上有优良处是WorkSpace变量可视化
python的Numpy+Scipy两个库彻头彻尾Neng替代Matlab的矩阵运算
Matplotlib完克Matlab的画图功Neng
python还有hen许多其他的功Neng
pycharm有hen棒的调试功Neng,Neng代替Matlab的WorkSpace变量可视化
推荐的python学文档和书籍
关于python的基础,觉得Neng廖雪峰Python .7教程,适合于没有程序基础的人来先kan,涉及到python的基本数据类型、循环语句、条件语句、函数、类与对象、文件读写等hen关键的基础知识。
涉及到数据运算的话, 其实基础教程没啥应用,python各类包dou帮你写优良了Zui优良的学资料还是它的官方文档,文档中的不仅有API,还会有写实例教程
pandas文档
statsmodels文档
scipy和numpy文档
matplotlib文档
TuShare文档
第二,推荐《利用Python进行数据琢磨》,pandas的开发初衷就是用来处理金融数据的
两个开源的回测框架
PyAlgoTrade & Algorithmic Trading
Zipline, a Pythonic Algorithmic Trading Library
不管是对量化琢磨师还是普通的投钱者K线图dou是一种hen经典、hen关键的工具。在K线图中, 它会绘制每天的Zui高大价、Zui矮小价、开盘价和收盘价,这对于我们搞懂股票的趋势以及每天的许多空对比hen有帮。
通常 我们会从各巨大券商平台获取K线图,但是这种情况下得到的K线图往往不Neng灵活调整,也不Neng习惯麻烦许多变的生产需求。所以呢我们有少许不了学一下怎么用Python绘制K线图。
这里mpl_finance是原来的matplotlib.finance,但是眼下独立出来了我们将会用它给的方法来绘制K线图;tushare是用来在线获取股票数据的库;matplotlib.ticker中有个FuncFormatter方法Neng帮我们调整坐标轴;matplotlib.pylab.date2numNeng帮我们将日期数据进行少许不了的转化。
我们以上证综指18年9月份以来的行情为例。
我们先用mpl_finance绘制一下kankan是不是一切正常。
Nengkan到, 全部的节虚假日包括周末,在这里dou会kan得出来为空白,这对于我们图形的连续性非常不友优良,所以呢我们要解决掉他们。
Nengkan到,空白问题完美解决,这里我们说明白一下。由于matplotlib会将日期数据搞懂为 连续数据 , 而连续数据之间的间距是有意义的,所以非交容易日即使没有数据,在坐标轴上还是会体现出来。连续几许多个非交容易日在坐标轴上就对应了几许多个细小格子,但这些个细小格子上方并没有相应的蜡烛图。
明白了它的原理,我们就Neng对症下药了。我们Neng给横坐标传入连续的、 固定间距的数据,先保证K线图的绘制是连续的;然后生成一个保存有正确日期数据的列表,接下来我们根据坐标轴上的数据去取对应的正确的日期,并替换为坐标轴上的标签即可。
上边format_date函数就是这玩意儿作用。由于前边我们给dates列生成了从0开头的序列连续数据, 所以呢我们Neng直接把它当作索引,从真实正的日期列表里去取对应的数据。在这里我们要用matplotlib.ticker.FuncFormattter方法, 它允许我们指定一个格式化坐标轴标签的函数,在这玩意儿函数里我们需要收下坐标轴的值以及位置,并返回自定义的标签。
你学会了吗?
当然 一个完整的K线图到这里并没有收尾,后边我们会考虑加入均线、成交量等元素,感兴趣的同学欢迎关注哦!
~ 沪深厚A股各行业量化琢磨
在开头各行业的量化琢磨之前, 我们需要先弄清楚两个问题:
第一,A股买卖场上dou有哪些行业;
第二,各行业自2010年以来的营收、净赚头增速表现怎么?
第一个问题
hen优良回答, 我们用JQData给的获取行业成分股的方法,输入get_industries
得到申万一级行业分类后来啊如下:它们分别是:共计28个行业。
第二个问题
要晓得各行业自2010年以来的营收、 净赚头增速表现,我们先说说需要晓得各行业在各个年度dou有哪些成分股,然后加总该行业在该年度各成分股的总营收和净赚头,就Neng得到整个行业在该年度的总营收和总赚头了。这有些数据JQData也为我们给了方便的接口:通过调用get_industry_stocks, 获取申万一级行业指定日期下的行业成分股列表,然后再调用查询财务的数据接口:get_fundamentals来获取各个成分股在对应年度的总营收和净赚头,再说说通过加总得到整个行业的总营收和总赚头。这里为了避免非三天两头性损益的关系到,我们对净赚头指标到头来选取的扣除非三天两头性损益的净赚头数据。
我们Yi经获取到想要的行业数据了。接下来我们需要进一步琢磨,这些个行业dou有啥样的增加远特征。
我们找到, 在28个申万一级行业中,有18个行业自2010年以来在总营收方面保持了持续稳稳当当的增加远。它们分别是:;其他行业在该时候范围内出现了不同程度的负增加远。
那么自2010年以来净赚头保持持续增加远的行业又会是哪些呢?后来啊是只有5个行业保持了基业长远青,他们分别是医药生物,建筑装饰,电气设备,银行和汽车。
从上面的琢磨后来啊Nengkan到, 真实正Neng够保持持续稳稳当当增加远的行业并不许多,Ru果以扣非净赚头为标准,那么只有医药生物,建筑装饰,电气设备,银行和汽车这五个行业Neng称之为优质行业,实际投钱中,就Neng只从这几个行业中去投钱。这样Zuo的目的是 也巨大巨大缩短暂了我们的投钱范围,让投钱者Neng够专注于从真实正优良的行业去挑选公司进行投钱。
「-」投钱于优质行业龙头的获利表现
选优良行业之后下面进入选公司环节。我们晓得, 即便是一个优良的行业也仍然存在表现不优良的公司,那么啥是优良的公司呢,本文试图从营业收入规模和赚头规模和来考察以上五个基业长远青的行业,从它们中去筛选公司作为投钱标的。
.1按营业收入规模构建的行业龙头投钱组合
先说说 我们按照营业收入规模,筛选出以上5个行业从2010年至今的行业龙头如下表所示:
Nengkan到,虽然时候跨度hen长远,但是在这5个行业中,营收规模巨大的公司始终处于领先地位。它们分别是。
由于各年度上市公司年报的公布截止日是4月30日 待全部上市公司年报公布后确定行业龙头,然后将这些个行业龙头构建成一个投钱组合。那么持有投钱组合的获利表现怎么呢?为了保证投钱时候的一致性, 我们虚假设从2015年4月30号之后的第一个交容易日开头投钱,本金是100万,个个标的投钱权沉相同,dou是20%,并且忽略交容易本钱,那么持有该组合至2018年4月30号的投钱获利是几许多呢?
我们利用JQData给的获取行情接口get_price, 分别获取组合中各个公司在各年度开头交容易日和投钱截止日的价钱,得到到头来的投钱后来啊如下图所示:
Nengkan到,除了2015.-.3股灾期间,该组合投钱获利率和上证指数、沪深厚300指数有一个同步的巨大幅下跌外从2016..3至2018年5.,改组合连续两年得到了正获利,并在2016年巨大幅跑赢再说一个两个基准指数20%以上。
机灵的读者一定会问这样一个问题, Ru果我从2018年5月2号开头,投钱100万买入这样一个按营收规模衡量的行业龙头组合,至2018年5月30号,获利表现会怎么呢?答案是而同期上证指数获利率和沪深厚300获利率分别是和,Neng说表现非常之优良了。具体获利如下表所示:
.2按扣非净赚头规模构建的行业龙头投钱组合
Ru果我们按照扣除非三天两头性损益的净赚头来衡量, 以上5个行业从2010年至今的行业龙头又会是哪些呢,我们查出来如下表所示:
Nengkan到,按照扣非净赚头来构建投钱组合,医药生物和电气设备两个行业分别发生了行业龙头的geng替,Ru果要构建基于扣非净赚头的投钱组合,那么我们就需要每年去调整我们的组合标的以保证组合中dou是上一年度的行业龙头。和上述投钱回测方式一样, 我们从2015年5月4号买入这样一个组合,并在之后每年4月30号之后的第一个交容易日调整组合中的行业龙头标的,到头来的投钱后来啊如下表所示:
Nengkan到,即使是2015.-.3股灾期间,该组合也跑赢上证指数和沪深厚300指数3%左右;而2016..3至2018年5.2期间geng是巨大幅跑赢两个基准指数高大达30%以上。
结论
通过以上行业琢磨和投钱组合的往事回测Nengkan到:
先选行业, 再选公司,即使是从2015年股灾期间开头投钱,至2018年5月1号,仍然Neng够得到相对理想的获利,Neng说红杉资本的赛道投钱法则对于一般投钱者还是比比kan靠谱的。
在构建行业龙头投钱组合时 净赚头指标显著优于营业收入指标,得到的投钱获利Neng够geng巨大的跑赢全买卖场获利率
买卖场是不断起伏的,Ru果一个投钱者从股灾期间开头投钱,那么即使他买入了上述优质行业的龙头组合,在近3年也只Neng得到12%左右的累计获利;而Ru果从2016年5月3日开头投钱,那么至2018年5月2日2年时候就Neng得到超出50%以上的获利了。所以在投钱过程中选择时机也非常关键。
出自:JoinQuant 聚宽阔数据 JQData
5个月。
python凭借其突出的语言优势与特性,Yi经融入到各行各业的个个领域。通常 python培训需要脱产学5个月左右,这样的时长远才Neng够让学员既掌握干活所需的技Neng,还Neng够积累一定的项目经验。当然Ru果你想要在人造智Neng的路上越走越远,则需要不断的积累和学。
python培训的5个月时候里 有相当巨大一有些时候是在实战Zuo项目,第一阶段是为期一个月学python的核心编程,基本上是python的语言基础和高大级应用,帮学员得到初步柔软件工事知识并树立模块化编程思想。学完这一阶段的内容,学员Yi经Neng够胜任python初级开发工事师的职位。
资料:
Python开发基础课程内容包括:计算机结实件、 操作系统原理、安装linux操作系统、linux操作系统维护常用命令、Python语言介绍、周围安装、基本语法、基本数据类型、二进制运算、流程控制、字符编码、文件处理、数据类型、用户认证、三级菜单程序、购物车程序开发、函数、内置方法、递归、迭代器、装饰器、内置方法、员工信息表开发、模块的跨目录导入、常用标准库学,b加密\re正则\logging日志模块等,柔软件开发规范学,计算器程序、ATM程序开发等。
参考资料
Demand feedback