社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python黄金相关性市场探析——如何利用相关性寻找最佳建仓时机

Python中文社区 • 6 年前 • 1006 次点击  



作者简介:OverSix_野马,一个对量化投资、数据分析、另类数据充满兴趣浓厚的野生程序员。

近期,国际金价持续创新高,也激发了很多人黄金投资的热情。目前国内黄金市场存在实物黄金、纸黄金、黄金T+D、黄金期货、黄金ETF、黄金股、现货黄金等品种,交易规则错综复杂,不仅要判断对趋势,还要为爆仓、延期费、黑平台等各种意料之外的规则交学费。为了找到一款适合自己的投资品种(不用担心爆仓、不用担心延期费、不用担心被平台黑、收益不至于那么低,适合长期持有的)。笔者决定用尝试用Python在A股市场里寻找跟黄金走势最相关的交易品种。
一、准备工作
编程环境:建议安装Anaconda(https://www.anaconda.com/distribution/),一次安装包括了Python环境和全部依赖包,减少问题出现的几率。
第三方库:Tushare。安装方法:Anaconda Prompt里直接输入 pip install tushare。
二、数据获取
1.券商公司获取。一些券商开通了试用版的接口,可以直接调用。
2.网络量化交易平台获取。某些在线量化交易平台也可以直接调用,编程也相对简单。
3.网络爬虫获取。通过爬取某些财经网站的历史数据,间接获取。
4.Tushare直接获取。通过一个免费、开源的python财经数据接口包Tushare获取。优点多多,免费、简单,一条语句搞定。本次数据获取主要采取这种方式。
数据采集步骤:首先获取所有股票代码,然后获取每只股票的日收盘价。
(1)获取股票代码。

通过本次结果显示,目前获取了3000余只股票当日的详细信息,当然我们想要的只有“code”这一栏。

(2)获取黄金ETF以及每只股票收盘价
黄金价格的获取,为方便计算,本次用黄金ETF(518880)的日收盘价代替。Tushare提供了3000余只股票代码,通过循环,获取2013年至今每只股票收盘价可是个大工程,这个时候,终于体会到大数据的用处了。

通过结果显示,数据长度还是比较乱,科创板等新上市的股票只有几天数据,这也给后续计算相关性出了个难题——非等长数据相关性如何度量?

三、计算相关性,寻找最相关的两只股票
相关性度量是一个相对复杂的数学问题,本次只做框架式搭建,具体优化算法,日后作更深入的探究。本次为方便计算,直接调用corr函数处理。

结果显示,2013年至今,并不存在跟黄金高度相关的股票,最相关的两只股票分别为中顺洁柔(002511)、千禾味业(603027),相关系数分别为0.764和0.741。

四、结果分析
(1)通过本次结果显示,并没有预期的与黄金高度相关的股票,直观感觉与黄金较相关的山东黄金(600547)的相关系数为0.582。

(2)本文只作为量化分析的初步探索,至于如何运用到自己的投资策略中,有待进一步探索。在本次实验中,也还存在很多问题,比如,缺失数据补齐方式、相关性度量方法、数据长度选取等,有兴趣的读者可以进一步探索。
后记:如何通过相关性分析寻找建仓时机
大家都有直观的感觉,黄金和白银存在某种相关关系,当金银比扩大时,黄金和白银,不是有一方被高估,就是有一方被低估。比如,在2019年7月12日,金银比达到近期的高点,但白银价格还处于相对低位,出现一个很好的买入时机。

至于如何运用相关分析,从A股市场寻找到适合自己风格建仓的时机。鉴于本文还是偏向于量化分析程序化入门的探索,投资心得、量化策略等问题欢迎探讨。

赞 赏 作 者



Python中文社区作为一个去中心化的全球技术社区,以成为全球20万Python中文开发者的精神部落为愿景,目前覆盖各大主流媒体和协作平台,与阿里、腾讯、百度、微软、亚马逊、开源中国、CSDN等业界知名公司和技术社区建立了广泛的联系,拥有来自十多个国家和地区数万名登记会员,会员来自以工信部、清华大学、北京大学、北京邮电大学、中国人民银行、中科院、中金、华为、BAT、谷歌、微软等为代表的政府机关、科研单位、金融机构以及海内外知名公司,全平台近20万开发者关注。


▼ 点击成为社区注册会员          「在看」一下,一起PY!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39440
 
1006 次点击