[R] quantmod's addTA plotting functions
P Ehlers
ehlers at ucalgary.ca
Thu May 5 19:13:24 CEST 2011
Russ,
All you have to do is replace
addTA(GSPC.EMA.3, on = 1, col = "#0000ff")
with
plot(addTA(GSPC.EMA.3, on = 1, col = "#0000ff"))
etc.
I can sympathize with the documentation frustration, but I think
that much of the documentation in R and in many R packages is
actually very good. I get much more frustrated with the attempts
at 'non-technical' explanations I find in other software. It
does take a bit of getting used to always looking at the Value
section and, if in doubt, checking some of the See Alsos, but
it's worth it. I don't know quantmod very well, but even a
cursory look at the pdf file shows that the docs are quite
good.
As Jeff points out, good documentation is not easy. More good
examples are always better, but that's mighty time-consuming.
Peter Ehlers
On 2011-05-05 10:42, Russ Abbott wrote:
> Thanks. You're right. I didn't see that. I read the ?addTA help page,
> which (annoyingly) didn't mention that feature, but I didn't read the
> ?TA page. (That page was mentioned as a see also, but not as a must see.)
>
> I don't know what it means to wrap these calls in a plot call. I tried
> to put the addTA calls into a function and call that function from the
> higher level function, but that didn't work either. Would you tell me
> what it means to wrap these calls in a plot call.
>
> Thanks
> /-- Russ /
>
> P.S. Pardon my irritation, but I continually find that many of the help
> files assume one already knows the information one is looking for. If
> you don't know it, the help files are not very helpful. This is a good
> example. In fact, it's two good examples. I didn't know that I had to
> look at another page, and I (still) don't know what it means to wrap
> plot calls in another plot call.
>
>
> On Thu, May 5, 2011 at 3:39 AM, P Ehlers <ehlers at ucalgary.ca
> <mailto:ehlers at ucalgary.ca>> wrote:
>
> On 2011-05-05 0:47, Russ Abbott wrote:
>
> Hi,
>
> I'm having trouble with quantmod's addTA plotting functions.
> They seem to
> work fine when run from the command line. But when run inside a
> function,
> only the last one run is visible. Here's an example.
>
>
> test.addTA<- function(from = "2010-06-01") {
> getSymbols("^GSPC", from = from)
> GSPC.close<- GSPC[,"GSPC.Close"]
> GSPC.EMA.3<- EMA(GSPC.close, n=3, ratio=NULL)
> GSPC.EMA.10<- EMA(GSPC.close, n=10, ratio=NULL)
> chartSeries(GSPC.close, theme=chartTheme('white'),
> up.col="black",
> dn.col="black")
> addTA(GSPC.EMA.3, on = 1, col = "#0000ff")
> addTA(GSPC.EMA.10, on = 1, col = "#ff0000")
> # browser()
> }
>
>
> When I run this, GSPC.close always appears. But only GSPC.EMA10
> appears on
> the plot along with it. If I switch the order of the addTA calls,
> only GSPC.EMA3 appears. If I uncomment the call to browser()
> neither appears
> when the browser() interrupt occurs. I can then draw both
> GSPC.EMA.3 and
> GSPC.EMA10 manually, and let the function terminate. All
> intended plots are
> visible after the function terminates. So it isn't as if one
> wipes out the
> other. This shows that it's possible to get all three lines on
> the plot, but
> I can't figure out how to do it without manual intervention. Any
> suggestions
> are appreciated.
>
>
> Perhaps you didn't see this NOTE on the ?TA help page:
>
> "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."
>
> Peter Ehlers
>
>
> Thanks.
>
> *-- Russ *
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org <mailto:R-help at r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>
More information about the R-help
mailing list