-1

財務データをダウンロードするための私のコードの一部:

library(quantmod)

tickers <- c("XOM", "DIS")
stock1 <- getSymbols(tickers[1], from="2010-03-01", to="2011-02-28", auto.assign=F)
stock2 <- getSymbols(tickers[2], from="2010-03-01", to="2011-02-28", auto.assign=F)

pair <- merge(Ad(stock1), Ad(stock2), all=F)             # 'xts' object, merge adjusted close
pair.DF <- data.frame(pair)                              #  data frame

しかし、私はこのような関数を呼び出したいと思います:

tickers <- function(x, y) {
stock1 <- getSymbols(x, from="2010-03-01", to="2011-02-28", auto.assign=F)
stock2 <- getSymbols(y, from="2010-03-01", to="2011-02-28", auto.assign=F)

pair <- merge(Ad(stock1), Ad(stock2), all=F)            
pair.DF <- data.frame(pair)       
}

その後:

tickers("XOM", "DIS")

または同様のもの。しかし、私が得るのは悪い結果です。この場合、「x」と「y」は数値ではなく文字です。簡単そうですが..ご提案ありがとうございます。

4

1 に答える 1

1
tickers <- function(x, y) {
stock1 <- getSymbols(x, from="2010-03-01", to="2011-02-28", auto.assign=F)
stock2 <- getSymbols(y, from="2010-03-01", to="2011-02-28", auto.assign=F)

pair <- merge(Ad(stock1), Ad(stock2), all=F)            
pair.DF <- data.frame(pair)       
return(pair.DF)
}

最後にpair.DFを返す限り、私のために機能します。それはあなたの問題ですか?

キャラクタークラスが問題だとは思わない:

class(tickers[1])==class("XOM")
TRUE
于 2011-03-25T21:57:37.290 に答える