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@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@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.
>>
>

	[[alternative HTML version deleted]]

