2

我已经阅读了很多 R 文档,但是我找不到任何我认为可以作为答案的东西。我的额头因为撞在桌子上而酸痛。;)

这是特定于 的library(quantmod),因为这是我想要学习的,但我想这也是一个普遍的问题。

R 2.12.2 GUI 1.36 Leopard 构建 64 位 (5691) Mac OS X 10.6.6

我正在尝试在http://www.quantmod.com/examples/intro/quantmod上复制示例的行为

从 GUI 来看,一切都很好 - 下面会生成一个类似http://www.quantmod.com/examples/intro/AAPL-full.png的图表:

> require(TTR)
> getSymbols("AAPL")
[1] "AAPL"
> chartSeries(AAPL)
> addMACD()
> addBBands()

但是当我source()从 GUI 获取 .R 文件时,我只得到图表

> chartSeries(AAPL)

也就是说,它下面只有一个价格图表和一个成交量图表。此外,如果我从命令行尝试以下操作,它会按预期工作。

$ R --no-save `<`quantmod.R

生成一个名为的文件Rplots.pdf,其中包含三个页面。第三页包含价格 + 成交量 + MACD + 布林带。

quantmod什么让生活变得如此艰难?或者我不明白什么是显而易见的,让生活如此艰难?

我必须做什么才能让源脚本能够在图表中使用addMACD()and函数?addBBands()

作为一个附带问题,数据生成addMACD()addBBands()存储在哪里?

4

1 回答 1

6

在阅读完 quantmod 文档之后,在将头撞到桌面之前,尝试搜索 R-SIG-Finance 邮件列表档案(一种方法是通过rseek.org上的“支持列表”选项卡)。这个问题已经多次出现在列表中。

要回答您的主要问题,请参阅以下的“注意”部分?TA

 Calling any of the above methods from within a function or script
 will generally require them to be wrapped in a ‘plot’ call as they
 rely on the context of the call to initiate the actual charting
 addition.

因此,您应该将示例更改为:

> require(TTR)
> getSymbols("AAPL")
[1] "AAPL"
> chartSeries(AAPL)
> plot(addMACD())
> plot(addBBands())

?chartSeries要回答您的附带问题,请参阅、help("chob-class")和的“价值”部分help("chobTA-class")

于 2011-02-27T14:29:18.100 回答