程序猿怎么利用技术挣钱?——python量化实践
文章目录
- 1.什么是量化交易?
- 2.分析展示
- 3.逻辑解读
- 4.代码展示
- 阅前提醒:本文仅作技术交流,不做投资建议,投资有风险,入市须谨慎
1.什么是量化交易?
我们利用计算机技术,通过建模分析、优化参数等手段,从历史金融数据中挖掘出影响投资的指标,使用程序进行自动交易来获得“超额”的收益,这种投资方法就叫做量化交易。
现在,很多量化机构将人工智能和机器学习与量化策略相结合。国内的一些顶尖私募,比如:九坤、幻方、朱雀等都在使用AI量化策略,从各大公司的招聘公告上也可以看出这点。
2.分析展示
指标解读:
- P/E = PriceEPS\frac{Price} {EPS}EPSPrice
- Price:当前股价-每日PE->每日的收盘价
- EPS :每股收益
分析目的:
- 辅助判断整个全A市场什么时候来大牛市
- time-series分析
图解:
- 分析日期:2006-01-01 ~ 2020-06-29
- X轴:by_day 时间轴
- Y轴:沪深在流通股等权重P/E ratio(市盈率)
- 上图走势基本类似于沪深指数,但是又有点儿区别,
- 每次牛市爆发的点以及牛市结束的点都分别位于等权重PE的相对低位和相对高位
交易策略:
- market neutal市场中性的多因子策略是剔除了大盘(β\betaβ)风险的
- 当处于如图等权重PE低位的状态时候,就可以不用对冲β\betaβ风险了,
- 相反可以多配点儿β\betaβ产品,以获得β\betaβ收益
3.逻辑解读
市场上券商披露的PE,都是按市值加权的
容易被大市值股影响,中国A股市场上的大市值股
传统金融、石油能源等,这些股票的PE本身就很低,所以会拉低整个A股的PE
等权还原PE,不区分大盘小盘股
15年的指数没有破07、08的6124高位,但是PE已经破了
可以用来,辅助牛市抄底逃顶
比如前段时间做完这张图之后,下跌风险很低了,最多就是损失时间成本,
但是上涨空间是巨大的,配点儿β\betaβ产品,比如上证50etf,沪深300etf等
还是可以获得比较可观的收益的,我自己买的比较少没挣多少,上一波也得了30%的收益
4.代码展示
数据来源:Tushare金融大数据开放社区
运行准备:点击上方官网,注册tushare账户,获取token
获取数据
#导入库
import tushare as ts
import pandas as pd
import numpy as np
import time,random
pro = ts.pro_api(token='你自己的token')# L上市 D退市 P暂停上市
# ts_code 股票代码 exchange 交易所 SSE上交所 SZSE 深交所
# list_date 上市日期 delist_date 退市日期
stock_L = pro.stock_basic(exchange='', list_status='L', fields='ts_code,exchange,list_date,delist_date')
stock_D = pro.stock_basic(exchange='', list_status='D', fields='ts_code,exchange,list_date,delist_date')
stock_P = pro.stock_basic(exchange='', list_status='P', fields='ts_code,exchange,list_date,delist_date')#整合所有股票
data=pd.concat([stock_L,stock_D,stock_P],axis=0).reset_index(drop=True)result = pd.DataFrame()
count=0
for ts_code in data.ts_code.tolist():start_time=time.time()df = pro.daily_basic(ts_code=ts_code, trade_date='', start_date='20060101',fields='ts_code,trade_date,pe')result=pd.concat([result,df],axis=0).reset_index(drop=True)count+=1if count%200:passelse:end_time=time.time()tm=end_time-start_time#限制60秒内最多请求200次while tm<=60 :time.sleep(60-tm+1)end_time=time.time()tm=end_time-start_timeprint(count,"耗时 %s 秒"%tm)#获取到的数据保存到本地,也可以存到数据库里持续更新
result.to_csv("PE监控.csv",index=False)
注意:做这个图的时候还是沿用原来的指数规则,2020/7/22上证指数进行了修正
可视化绘图
#导入库
import warnings
warnings.filterwarnings("ignore")
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('seaborn')
%matplotlib inline#导入之前获取的数据
result=pd.read_csv("PE监控.csv")
#等权重处理
data=pd.pivot_table(result,values='pe',index='trade_date',aggfunc='mean')
#绘图
data.plot(figsize=(15,6),subplots=True)
程序猿怎么利用技术挣钱?——python量化实践相关推荐
- 几个大神程序猿更喜欢用的Python编辑器!
作为开发者来说,肯定都有自己比较喜欢使用的编辑器,有的人喜欢这个,有的人喜欢那个,还有的大神就喜欢用记事本,今天小千就来给大家介绍几个大神程序猿更喜欢用的Python编辑器. 1.Sublime Te ...
- 程序猿的牢笼——技术本身
回顾过去,我认为每个程序猿都关在一个透明的牢笼中,限制了思维.蒙蔽了眼界.蹉跎了岁月而不自知,如果不尝试走出去是一辈子都不能感知到牢笼的存在.这个牢笼就是技术本身. 一些程序员就要说,我们就是靠技术吃 ...
- 程序猿还在拿死工资?还不知道怎么利用技术挣钱?——python量化实践
阅前提醒:本文仅作技术交流,不做投资建议,投资有风险,入市须谨慎 1.什么是量化交易? 我们利用计算机技术,通过建模分析.优化参数等手段,从历史金融数据中挖掘出影响投资的指标,使用程序进行自动交易来获 ...
- 程序员如何利用技术变现?
程序员用自己的技术变现,是一件天经地义的事情,完全没必要红着脸在那不好意思.因为写作,我认识了不少读者,他们当中有很大一部分不够自信,迷茫和彷徨,就不知道自己该学些什么,往哪个方向发展,也不知道该怎么 ...
- 时薪20K的高级程序猿教你如何用Python一步步来搭建一个区块链
- python程序 爱意_用“Python”开启程序猿的爱情之旅
原标题:用"Python"开启程序猿的爱情之旅 Python作为一种轻量级编程语言,语言简洁开发快,没那么多技巧,受到众多追捧,尤其对于新手小白来说,是最好的选择! 许多人学习Py ...
- 程序猿生存定律--表达背后的力量(1)
程序猿生存定律这系列的文件夹在这里:程序猿生存定律--文件夹 喜欢从头瞄的,能够移步. -------------------------------------------------------- ...
- 程序猿的专利工程师出路
到了该看看外面世界的时候了 简历写了快2周,离知乎上说的10年程序猿水准,相差甚远 知乎上说,这种程序猿,不仅擅用Python,而且看过多遍Python源码,懂Python底层实现 知乎上还说,这种程 ...
- unity3d游戏开发猜想——当程序猿老去
程序猿将代码注入生命去打造互联网的浪潮之巅.当有一天他们老了.会走向那里,会做些什么? 非常多年以后,在我60岁的那天早晨,天刚蒙蒙亮我就起床了,先去公园晨练,然后回来做早餐(50岁的时候我学会了做饭 ...
最新文章
- Linux必学的系统管理命令
- OC中创建对象,存入数组,并且遍历对象
- Python OpenCV学习笔记之:使用Grabcut算法进行图像背景和前景分割
- 贾跃亭融资计划书曝光:看他如何靠两份PPT融资150亿
- IDM下载速度慢解决方案全网搜集持续更新
- Cow Contest POJ - 3660(floyed求传递闭包)
- 休眠锁定模式– PESSIMISTIC_READ和PESSIMISTIC_WRITE如何工作
- handsontable 方法汇总
- java日期格式化代码的写法_Java中的`DateTimeFormatter`格式化代码中的`uuuu`与`yyyy`?...
- 全面提升AI语言理解能力,达摩院自研语言模型体系登顶6大权威榜单
- 对Spring的IoC和DI最生动的解释
- java包含某个字符串_JavaScript判断一个字符串是否包含指定子字符串的方法
- 网络安全联盟推进威胁情报共享的扩张
- C# TextBox输入数字 TextBox输入限制 TextBox输入字符 KeyPress
- KindEditor富文本编辑从数据库取出来内容回显在页面上会自动增加行间距以及回车换行会自动间距变大的问题...
- ospf 指定dr_OSPF中DR、BDR竞选机制
- mongodb 库数量限制_MongoDB数据库勒索野蛮生长 数量已达27000多个
- 威金病毒(viking)症状和治理方法
- 单核CPU使用多线程能否提高效率?
- macos备份文件服务器地址,mac电脑备份文件的最佳方法