不带引号的 Quantmod 参数
Quantmod argument without quotation marks
我有以下代码:
library("quantmod")
stockValuation <- function(company1, company2,
a=GOOGL,
b=AAPL,
start_i = "2018-01-01", end_i = "2018-05-20") {
#start <- as.Date(start_i)
#end <- as.Date(end_i)
tckr <- c(company1, company2)
getSymbols(tckr, src = "yahoo", from = start_i, to = end_i)
chrtlist <- c(a,b)
chartSeries(a, multi.col=TRUE, theme='white', TA="addMACD()")
dev.copy(pdf, paste(company1,".pdf",sep=""))
dev.off()
chartSeries(b, multi.col=TRUE, theme='white', TA="addMACD()")
dev.copy(pdf, paste(company2, ".pdf",sep=""))
dev.off()
}
想法是有一个生成两个图表的函数,然后将其导出到 .pdf,但是 chartSeries 函数不想在引号中使用参数,即相反,您需要使用 GOOGL 而不是 "GOOGL" getSymbols 使用引号,因此您需要 "GOOGL".
现在我创建了一个带有两个参数的版本,一个带引号,另一个不带引号如何强制它只使用一个参数?即作为论据,我想拥有 "GOOGL" 或 GOOGL,但不能同时拥有两者
为您的函数设置公司代码参数。然后在 getSymbols()
调用中使用 auto.assign = FALSE
,这样您就可以将每个代码的数据分配给特定对象。然后你可以在这两个对象上调用 chartSeries()
。
这是按照我的建议执行的函数的更新版本:
stockValuation <-
function(ticker1, ticker2, from = "2018-01-01", to = "2018-05-20")
{
a <- getSymbols(ticker1, from = from, to = to,
src = "yahoo", auto.assign = FALSE)
b <- getSymbols(ticker2, from = from, to = to,
src = "yahoo", auto.assign = FALSE)
chartSeries(a, multi.col = TRUE, theme = "white", TA = "addMACD()")
dev.copy(pdf, paste0(ticker1, ".pdf"))
dev.off()
chartSeries(b, multi.col = TRUE, theme = "white", TA = "addMACD()")
dev.copy(pdf, paste0(ticker2, ".pdf"))
dev.off()
}
我有以下代码:
library("quantmod")
stockValuation <- function(company1, company2,
a=GOOGL,
b=AAPL,
start_i = "2018-01-01", end_i = "2018-05-20") {
#start <- as.Date(start_i)
#end <- as.Date(end_i)
tckr <- c(company1, company2)
getSymbols(tckr, src = "yahoo", from = start_i, to = end_i)
chrtlist <- c(a,b)
chartSeries(a, multi.col=TRUE, theme='white', TA="addMACD()")
dev.copy(pdf, paste(company1,".pdf",sep=""))
dev.off()
chartSeries(b, multi.col=TRUE, theme='white', TA="addMACD()")
dev.copy(pdf, paste(company2, ".pdf",sep=""))
dev.off()
}
想法是有一个生成两个图表的函数,然后将其导出到 .pdf,但是 chartSeries 函数不想在引号中使用参数,即相反,您需要使用 GOOGL 而不是 "GOOGL" getSymbols 使用引号,因此您需要 "GOOGL".
现在我创建了一个带有两个参数的版本,一个带引号,另一个不带引号如何强制它只使用一个参数?即作为论据,我想拥有 "GOOGL" 或 GOOGL,但不能同时拥有两者
为您的函数设置公司代码参数。然后在 getSymbols()
调用中使用 auto.assign = FALSE
,这样您就可以将每个代码的数据分配给特定对象。然后你可以在这两个对象上调用 chartSeries()
。
这是按照我的建议执行的函数的更新版本:
stockValuation <-
function(ticker1, ticker2, from = "2018-01-01", to = "2018-05-20")
{
a <- getSymbols(ticker1, from = from, to = to,
src = "yahoo", auto.assign = FALSE)
b <- getSymbols(ticker2, from = from, to = to,
src = "yahoo", auto.assign = FALSE)
chartSeries(a, multi.col = TRUE, theme = "white", TA = "addMACD()")
dev.copy(pdf, paste0(ticker1, ".pdf"))
dev.off()
chartSeries(b, multi.col = TRUE, theme = "white", TA = "addMACD()")
dev.copy(pdf, paste0(ticker2, ".pdf"))
dev.off()
}