【选股策略】--选择9个月来波动率最小的股票,观察近一个月的变化
2016-10-27 23:55
197 查看
我们在市场活跃起来后发现没有及时介入,要买的股票往往发现已经涨到半山腰了,如果作为长期投资者来说,这让人很纠结。做好能够发现前期波动很小,突然连续三天放量增长的股票,分析基本面和消息面确认没问题后,可以及时介入,我尝试以这样的思路来选股。
思路如下:选取20160101-20160930的股票数据,观察收盘价的波动,按升序排列,选择波动最小股票(要么平稳要么持续上升要么持续下降),通过软件查看波动最小的股票在20161007后至今的时间没有没有突然放量启动的迹象,分析基本面消息面可以及时介入。
pandas学习目标:
1.掌握groupby()函数和std()函数的使用;
2.df.set_index()函数使用
3.df.append(0函数使用
4.for 循环使用
代码如下:
第一步:选出sh所有的股票代码,sh共1173支股票
第二步:将所有sh股票数据加载到一个DataFrame中,用groupby()函数聚类,std()函数计算聚类后收盘价的标准差,将收盘价标准差按升序排列,选择前20查看;
结论:
选出sh股票如下:
‘sh601288’, ‘sh601988’, ‘sh601398’, ‘sh600795’, ‘sh600010’, ‘sh600401’,
‘sh600221’, ‘sh600282’, ‘sh601818’, ‘sh600033’, ‘sh600567’, ‘sh601518’,
‘sh600022’, ‘sh600028’, ‘sh601258’, ‘sh600039’, ‘sh601588’, ‘sh600255’,
‘sh601333’, ‘sh601328’
不出意外,基本都是银行和基建或钢铁,半年股价基本没怎么动过;
其中600039-四川路桥,601333-广深铁路这两支可以关注,有启动上升的趋势,PE\PB比较低,如果不着急获利的话长期持有风险可控。
同样的原理,可以换成sz股票查看,结果如下:
‘sz000725’, ‘sz000630’, ‘sz000979’, ‘sz000425’, ‘sz000709’, ‘sz000100’,
‘sz000157’, ‘sz300111’, ‘sz002064’, ‘sz002342’, ‘sz000809’, ‘sz000883’,
‘sz000825’, ‘sz000949’, ‘sz000682’, ‘sz002542’, ‘sz000753’, ‘sz000422’,
‘sz000882’, ‘sz000916’
其中,000630-铜陵有色,000809-铁岭新城,000825-太钢不锈,000949新乡化纤,000916华北高速9月30号来有异动,尤其000949值得关注。
思路如下:选取20160101-20160930的股票数据,观察收盘价的波动,按升序排列,选择波动最小股票(要么平稳要么持续上升要么持续下降),通过软件查看波动最小的股票在20161007后至今的时间没有没有突然放量启动的迹象,分析基本面消息面可以及时介入。
pandas学习目标:
1.掌握groupby()函数和std()函数的使用;
2.df.set_index()函数使用
3.df.append(0函数使用
4.for 循环使用
代码如下:
第一步:选出sh所有的股票代码,sh共1173支股票
import pandas as pd import os code_list=[] for root,dirnames,files in os.walk('overview-data-sh'): if files: for f in files: if 'sh6' in f: code_list.append(f) len(code_list)
第二步:将所有sh股票数据加载到一个DataFrame中,用groupby()函数聚类,std()函数计算聚类后收盘价的标准差,将收盘价标准差按升序排列,选择前20查看;
data_all=pd.DataFrame() for code in code_list: data=pd.read_csv('overview-data-sh/' + code,encoding='gbk') data=data[['股票代码','股票名称','新浪行业','交易日期','成交量','涨跌幅', '换手率', '流通市值','开盘价','收盘价','MA_20']] data.交易日期=pd.to_datetime(data.交易日期) data=data.set_index('交易日期') data=data[data.index>=pd.to_datetime('20160101')] data_all=data_all.append(data) data_all=data_all[['股票代码','收盘价']].groupby(['股票代码']).std().sort('收盘价')[:20] data_all
结论:
选出sh股票如下:
‘sh601288’, ‘sh601988’, ‘sh601398’, ‘sh600795’, ‘sh600010’, ‘sh600401’,
‘sh600221’, ‘sh600282’, ‘sh601818’, ‘sh600033’, ‘sh600567’, ‘sh601518’,
‘sh600022’, ‘sh600028’, ‘sh601258’, ‘sh600039’, ‘sh601588’, ‘sh600255’,
‘sh601333’, ‘sh601328’
不出意外,基本都是银行和基建或钢铁,半年股价基本没怎么动过;
其中600039-四川路桥,601333-广深铁路这两支可以关注,有启动上升的趋势,PE\PB比较低,如果不着急获利的话长期持有风险可控。
同样的原理,可以换成sz股票查看,结果如下:
‘sz000725’, ‘sz000630’, ‘sz000979’, ‘sz000425’, ‘sz000709’, ‘sz000100’,
‘sz000157’, ‘sz300111’, ‘sz002064’, ‘sz002342’, ‘sz000809’, ‘sz000883’,
‘sz000825’, ‘sz000949’, ‘sz000682’, ‘sz002542’, ‘sz000753’, ‘sz000422’,
‘sz000882’, ‘sz000916’
其中,000630-铜陵有色,000809-铁岭新城,000825-太钢不锈,000949新乡化纤,000916华北高速9月30号来有异动,尤其000949值得关注。
相关文章推荐
- 股票策略的选择(平均移动均线)
- 一个用Python编写的股票数据(沪深)爬虫和选股策略测试框架
- 选择分组中的最小列
- Android8.0运行时权限策略变化和适配方案
- ios后台长时间运行的选择策略及注意事项
- 微服务实战(六):选择微服务部署策略
- BZOJ 3774 最优选择 最小割
- Android EditText控件即设置最小高度又运行高度随内容增加而变化
- MYSQL自动备份策略的选择(转载)
- Caffe中学习率策略应如何选择
- 现在,有两个整数A和B,例如A是345,B是478,现在,需要把B插入到A里, 而A有三位,所以有四个位置选择,所得结果分别是: 478345, 347845, 344785, 345478 我们通过对比可以知道,在这当中最小的一个是344785
- 成交量低迷,趋势震荡或向下的操作策略 分类: 股票技术探讨 2015-08-05 19:38 1人阅读 评论(0) 收藏
- 移动开发策略的选择
- 4月14日股票分析以及后市操作策略
- BZOJ 3774: 最优选择(最小割建模的一般方法)
- HDFS 副本存放磁盘选择策略详解
- 一步一步跟我学习lucene(1)---lucene的IndexWriter对象创建和索引策略的选择
- 使用增量备份修复dataguard与日常备份策略的选择
- 数组 获取最值(最大值 最小值)选择排序 冒泡排序 快速排序 半查找(二分查找) 十进制转其他进制法