上次讲了用webservice的方法获得网络数据,从而实现实时股票数据的获取 。这个方法是可行,但实际使用当中有两个缺点:一是,有时候数据获取不完整;二是,对数据的分割不方便,要使用最新的excel版本 。所以,今天讲一下用power query的方法获取批量的数据 。
1、什么是power query
查询增强版(Power Query)是一个Excel插件,是Power BI的一个组件 。
Power Query在Excel中通过简化数据发现、访问和合作的操作 , 从而增强了商业智能自助服务体验 。
2、power query的初体验
我们打开excel,数据-->自网站-->输入股票网址 “http://qt.gtimg.cn/q=sz002241”
点击确认后,在出现的导航器中 , 点击document,选择“加载”,如果出现隐私对话框 , 就点确认 。
然后,双击已经加载的数据,进入power query
我们现在只是为了体验它 , 所以,可以随意点击,看看有没有我们想要的数据 。看到这个图标 , 就双击展开,然后在对话框中点确认 。
直到看到自己想要的数据出现 , 是不是很神奇?
以上只是初步的体验,我们想要为我所用 , 还需要知道一些极为基本的获取数据的函数 。
3、power query获取批量的股票信息
刚才我们是输入了一个网址,对应了一个股票的信息,那么,如果我们的股票列表是成百上千,它可以批量处理吗?答案是肯定的 。
主要步骤如下:
A)建立股票代码、交易所和对应的网址信息
这些都可以自动判定和生成,这个比较简单 , 这里就不详细讲解了 。每个股票根据代码特征,区分在上海还是深圳交易所,然后对应不同的网址 。
B)进入power query
数据,选择自区域
C)获取数据
进入power query后,再新增一列,以便获取相应的网络数据 。
然后输入这列的名字,我们命名为data , 然后输入一个简单的函数,就可以获得网络数据了 。
函数为:web.page(Web.Contents([网址])) , 其中“网址”就是左边的列,可以双击插入 。
出现隐私提示,就点确认继续 。
恭喜你 , 似曾相识的图标出现了,我们可以自由点击了[呲牙][呲牙][呲牙]
经过多次点击后,出现了这些数据:这就是我们想要的初步数据:
D)数据处理
我们先把不需要的数据删掉 , 一步步的删除不需要的行和列 。直到出现这样的:
然后,将数据分开:
这样就按照字符 , 将数据分割开来了,当然,分割的过程中产生的空列 , 我们也可以直接删除掉,经过处理,就成为我们想要的数据了 。
然后,我们再根据数据的特性,将每一个列重命名,他们按顺序,分别是:
E)数据扩充
有以上的数据对我们来说,还是远远不够的,我们需要添加我们的持仓价格和止亏止盈价格,添加了分时图和K线图 , 以便判断是否需要买卖 。以下的供参考:
F)数据刷新
点击刚才的数据,选择数据--->刷新--->连接属性,可以选择刷新频率是多少分钟 。
这样的话 , 我们只要保持excel打开,它就可以自动刷新在线数据了 。
怎么样?是不是很简单 , 通过学习这个,我们还可以获取很多网页数据,比如天气信息等 。
【power query 如何用excel自制股票实时行情详解】关注我 , 定制合适自己的交易方法和规则[呲牙][呲牙][呲牙]