Symbols
in
specified environment. Used by specifyModel
to retrieve symbols specified in first step of modelling
procedure. Not a true S3 method, but methods for different
data sources follow an S3-like naming convention. Additional
methods can be added by simply adhering to the convention.Current src
methods available are: yahoo, google,
MySQL, FRED, csv, RData, and oanda.
Data is loaded silently without user assignment by default.
getSymbols(Symbols = NULL,
env = .GlobalEnv,
reload.Symbols = FALSE,
verbose = FALSE,
warnings = TRUE,
src = "yahoo",
symbol.lookup = TRUE,
auto.assign = TRUE,
...)loadSymbols(Symbols = NULL,
env = .GlobalEnv,
reload.Symbols = FALSE,
verbose = FALSE,
warnings = TRUE,
src = "yahoo",
symbol.lookup = TRUE,
auto.assign = TRUE,
...)
showSymbols(env=.GlobalEnv)
removeSymbols(Symbols=NULL,env=.GlobalEnv)
saveSymbols(Symbols = NULL,
file.path=stop("must specify 'file.path'"),
env = .GlobalEnv)
Symbol
specified, with class defined
by return.class
. Presently this may be ts
,
its
, zoo
, xts
, or timeSeries
.If auto.assign
is set to FALSE an object of type
return.class
will be returned.
getSymbols
is a wrapper to load data from
different sources - be them local or remote. Data is
fetched through one of the available getSymbols
methods
and saved in the env
specified - the .GlobalEnv
by default. Data is loaded in much the same way that load
behaves. By default, it is assigned automatically
to a variable in the specified environment, without the
user explicitly assigning the returned data to a variable.The previous sentence's point warrants repeating - getSymbols is called
for its side effects, and does not return the data object
loaded. The data is
Previous versions of getSymbols assigned each object into the user's
.GlobalEnv by name. This behavior is now supported by setting
env=.GlobalEnv (the current transitional default),
or by using the wrapper loadSymbols
. Many
thanks to Kurt Hornik and Achim Zeileis for suggesting this change.
By default the variable chosen is an R-legal name derived
from the symbol being loaded. It is possible, using
setSymbolLookup
to specify an alternate
name if the default is not desired, see that function for
details.
The result of a call to getSymbols
when auto.assign
is set to TRUE (the default) is a new object
or objects in the user's specified environment - with the
loaded symbol(s) names returned upon exit if that environment
is the .GlobalEnv.
By default, a new environment is returned which contains all the objects loaded into it.
If auto.assign is set to FALSE the data will be returned from the call, and will require the user to assign the results himself.
Most, if not all, documentation and functionality in
Upon completion a list of
loaded symbols is stored in the global environment
under the name .getSymbols
.
Objects loaded by getSymbols
with auto.assign=TRUE
can be viewed with
showSymbols
and
removed by a call to removeSymbols
. Additional
data loading getSymbols
source code.
setDefaults(getSymbols)
can be used to
specify defaults for getSymbols
arguments.
setDefaults(getSymbols.MySQL)
may be used for arguments
specific to getSymbols.MySQL
, etc.
The symbol.lookup
is TRUE (the default), a check is made if any symbol
has had its source specified by setSymbolLookup
.
If not set, the process continues by checking to see if
src
has been specified by the user in the
function call. If not, any src
defined with
setDefaults(getSymbols,src=)
is used.
Finally, if none of the other source rules apply
the default getSymbols
src
method is
used (
getModelData
,specifyModel
,
setSymbolLookup
,
getSymbols.csv
,
getSymbols.RData
,
getSymbols.oanda
,
getSymbols.yahoo
,
getSymbols.google
,
getSymbols.FRED
,
getFX
,
getMetals
,setSymbolLookup(QQQQ='yahoo',SPY='MySQL')
getSymbols(c('QQQQ','SPY'))
# loads QQQQ from yahoo (set with setSymbolLookup)
# loads SPY from MySQL (set with setSymbolLookup)
getSymbols('F')
# loads Ford market data from yahoo (the formal default)
setDefaults(getSymbols,verbose=TRUE,src='MySQL')
getSymbols('DIA')
# loads symbol from MySQL database (set with setDefaults)
getSymbols('F',src='yahoo',return.class='ts')
# loads Ford as time series class ts
Run the code above in your browser using DataLab