setSymbolLookup {quantmod} | R Documentation

## Manage Symbol Lookup Table

### Description

Create and manage Symbol defaults lookup table within R session for use in `getSymbols` calls.

### Usage

    setSymbolLookup(...)
    getSymbolLookup(Symbols=NULL)

    saveSymbolLookup(file,dir="")
    loadSymbolLookup(file,dir="")

### Arguments

`...` | name=value pairs for symbol defaults
`Symbols` | name of symbol(s)
`file` | filename
`dir` | directory of filename

### Details

Use of these functions allows the user to specify a set of default parameters for each `Symbol` to be loaded.

Different sources (e.g. yahoo, MySQL, csv), can be specified for each Symbol of interest. The sources must be valid `getSymbols` methods - see `getSymbols` for details on which methods are available, as well as how to add additional methods.

The argument list to `setSymbolLookup` is simply the unquoted name of the `Symbol` matched to the desired default source, or list of Symbol specific parameters.

For example, to signify that the stock data for Sun Microsystems (JAVA) should be downloaded from Yahoo! Finance, one would call `setSymbolLookup(JAVA='yahoo')` or `setSymbolLookup(JAVA=list(src='yahoo'))`

It is also possible to specify additional, possibly source specific, lookup details on a per symbol basis. These include an alternate naming convention (useful for sites like Yahoo! where certain non-traded symbols are prepended with a caret, or more correctly a curcumflex accent. In that case one would specify `setSymbolLookup(DJI=list(name="^DJI",src="yahoo"))`) as well as passed parameters like `dbname` and `password` for database sources. See the specific getSymbols function related to the source in question for more details of each implementation.

If a single named list is passed into the function without naming the list as a parameter, the names of this list will be presumed to be symbol names to be added to the current list of symbols.

All changes are made to the current list, and will persist only until the end of the session. To always use the same defaults it is necessary to call `setSymbolLookup` with the appropriate parameters from a startup file (e.g. .Rprofile) or to use `saveSymbolLookup` and `loadSymbolLookup` to save and restore lookup tables.

To unset a specific Symbol's defaults, simply assign `NULL` to the Symbol.

### Value

Called for its side effects, the function changes the `options` value for the specified Symbol through a call to `options(getSymbols.sources=...)`

### Note

Changes are NOT persistent across sessions, as the table is stored in the session options by default.

This may change to allow for an easier to manage process, as for now it is designed to minimize the clutter created during a typical session.

### Author(s)

Jeffrey A. Ryan

### See Also

`getSymbols`, `options`,

### Examples

    setSymbolLookup(QQQQ='yahoo',DIA='MySQL')
    getSymbolLookup('QQQQ')
    getSymbolLookup(c('QQQQ','DIA'))

    ## Not run:
    ## Will download QQQQ from yahoo
    ## and load DIA from MySQL
    getSymbols(c('QQQQ','DIA'))

    ## End(Not run)

    ## Use something like this to always retrieve
    ## from the same source

    .First <- function() {
      require(quantmod,quietly=TRUE)
      quantmod::setSymbolLookup(JAVA="MySQL")
    }

    ## OR

    saveSymbolLookup()
    loadSymbolLookup()

[Package quantmod version 0.4-14 Index]