香港这边没有WIND,部门的彭博也不在我的机器上,为了取个股票价格数据都得跑来跑去。一怒之下,我写了一个Excel的函数,用来获取行情数据。
get price from yahoo.xls79.0 KiB
从Yahoo上获取价格序列的Excel函数。无需作任何配置,代码Copy到你的Excel文件就能用。函数为 GetPriceFromYahoo("000300.SS", "2011-10-10")。Last update:2011-10-21
使用方法为: =GetPriceFromYahoo("000300.SS", "2011-10-10")。其中第一个参数为股票或者指数的ticker,第二个参数为日期。函数还支持第三个参数,以获取开盘价、最高价/最低价、交易量等数据。函数内置了缓存,速度非常快。
对于股票而言,价格信息还需要考虑一个重要的因素,即除权的处理。使用GetPriceFromYahoo(ticker, date, "adj")可得到当天除权调整的收盘价。可惜这个调整收盘价不适用于中国地区的股票。
该函数支持Yahoo Finance支持的股票和指数,不仅限于国内的股票。中国上海交易所的股票ticker为代码加「.SS" ,深圳交易所的股票ticker为代码加".SZ"。其它国家的股票和指数的ticker可先查询http://finance.yahoo.com/。
这个函数的最大好处是不需要做任何配置,只需要把代码复制到你的Excel文件里即可。代码短小精悍,只有70行,在任何一台能上网的机器上都能用。smf_addin是另一个开源的Excel插件,功能比上面的函数要强大得多,不过配置上要稍微复杂一些,并且使用起来也不是很直观。
change logs:
2011-10-20: released
2011-10-21: 增加注释,修复一个小bug
……