[R-SIG-Finance] [R-SIG-FINANCE] Low Priority - market component list and general coding help

Jeff Ryan jeff.a.ryan at gmail.com
Fri Oct 26 21:33:15 CEST 2012


Somewhat contrary to common sense, index components are usually
legally controlled by its respective owner/creator.  The result is
that it becomes illegal to make the list 'available'.

Obviously this varies, and I am not a lawyer, but that is the likely
reason behind the inability to download.  There are likely ways around
this of course...

With respect to chartSeries, I am working on getting chart_Series and
it's related add_ functionality 'complete', that is so one can
transition from chartSeries to the new version (which during the
transition will be called chart_Series, note the underscore)

Since you are only using addVo and addMACD here, you can do
chart_Series and add_Vo, add_MACD and will get much prettier graphics.
 They will also be able to be embedded in standard layout() and
pars(mfcol= type layouts. i.e. the full graphic with panels etc
becomes one graphic object (like plot()).  Again, prettier and more
useful.

W.r.t the name of the chart, try name=

HTH
Jeff

On Fri, Oct 26, 2012 at 2:01 PM, Martin Jenkins <mjenko at yahoo.com> wrote:
> Hi,
>
> I've searched around and not found anything to help on this, even though it's not the first time it's been asked, so was wondering if anyone had any new ideas.
>
> I really like the device output of the chartSeries function and so have used it to output a bitmap of the stock chart.  What I'm using it for is to get an entire market index component list, however to get that I've had to create my own flat file called masterlist.csv in the below code.  Ideally I'd like to have a function do the same job so I don't have to create the file manually.  This way I can quickly and easily get graphs for an entire stock market.
>
> Rather frustratingly Yahoo! have stopped allowing the component list for an index to be downloaded.
>
> Also as you can see my coding skills are restricted by my procedural background, so whilst the below works fine, I'm sure it can be written more efficiently.
>
> One last thing, I'm using the auto.assign = FALSE so that I can use a variable in chartseries, this leaves me with the name of my variable, in this case 'x', on the bitmap, which isn't ideal, meaning I have to refer to the filename for the epic.
>
> Many thanks,
> Martin
>
> library(quantmod)
>
> masterfile <- "C:/Users/Admin/Documents/Programming/R/current/FTSE100/masterlist.csv"
> path <- "C:/Users/Admin/Documents/Programming/R/ftse100bmps/"
> epicstable <- read.table(masterfile, header=FALSE, sep=",")
>
> i <- 1
> while(is.na(epicstable$V1[i]) == "FALSE")
> {
>   epic_char <- as.character(epicstable$V1[i])
>   x <- try(getSymbols(epic_char, auto.assign=FALSE))
>
>   if (length(x)==1)
>   {
>     x <- try(getSymbols(epic_char, src = "google", auto.assign=FALSE))
>   }
>
>   if (length(x) > 1)
>   {
>     outputfile <- paste(path, epicstable$V1[i], '.bmp')
>     chartSeries(x,subset='2011-01::2012',TA="addVo();addMACD()")
>     bmp(file=outputfile, bg = "transparent", width = 1024, height = 768)
>     dev.off()
>   }
>   i = i + 1
> }
>         [[alternative HTML version deleted]]
>
>
> _______________________________________________
> R-SIG-Finance at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> -- Subscriber-posting only. If you want to post, subscribe first.
> -- Also note that this is not the r-help list where general R questions should go.



-- 
Jeffrey Ryan
jeffrey.ryan at lemnica.com

www.lemnica.com



More information about the R-SIG-Finance mailing list