1
require("quantmod")

这有效:

#Symbol for Natural Gas in front month with Yahoo Finance
getQuote("NGH16.NYM", src="yahoo")

但这不是"

getSymbols("NGH16.NYM", src="yahoo", from="2015-09-01")

    Error in download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,
  cannot open URL 'http://ichart.finance.yahoo.com/table.csv?s=NGF16.NYM&a=8&b=01&c=2015&d=11&e=24&f=2015&g=d&q=q&y=0&z=NGF16.NYM&x=.csv'
In addition: Warning message:
In download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,  :
  cannot open: HTTP status was '404 Not Found'

如何获取价格历史记录?

4

1 回答 1

6

您假设因为您可以获得当前数据快照,所以您也可以获得历史系列。

这种假设是不正确的。数据现在是很多交易所的重要产品,一般需要你付费。

不过,还有其他方法,对于商品数据,Quandl可能是您最好的选择。搜索“天然气 nymex”会引导你找到这个 NG_H2014 合同CRAN 上的 Quandl 包非常好,因为现在所有这些都非常可编写脚本。

例如,您的问题在 2016 年 3 月到期:

R> str(res <- Quandl("CME/NGH2016"))
'data.frame':   1935 obs. of  9 variables:
 $ Date         : Date, format: "2015-12-23" "2015-12-22" "2015-12-21" "2015-12-18" ...
 $ Open         : num  2.05 2.07 2.02 1.97 1.99 ...
 $ High         : num  2.12 2.08 2.09 2.01 2.02 ...
 $ Low          : num  2.01 2.02 1.97 1.91 1.96 ...
 $ Last         : num  2.11 2.05 2.08 1.96 1.96 ...
 $ Change       : num  0.067 0.031 0.093 NA 0.024 0.002 0.068 0.089 0.022 0.033 ...
 $ Settle       : num  2.1 2.03 2.06 1.97 1.97 ...
 $ Volume       : num  37213 32346 59892 53955 80027 ...
 $ Open Interest: num  210758 209803 208883 207250 212823 ...
 - attr(*, "freq")= chr "daily"
R> 

或者作为准备绘制的动物园对象:

R> res <- Quandl("CME/NGH2016", type="zoo")
R> plot(res[,"Settle"], main="NGH2016", ylab="Settle")

在此处输入图像描述

于 2015-12-24T15:22:43.363 回答