匯入並轉換多個商品

在 R 匯入與管理金融資料

Joshua Ulrich

Quantitative Analyst & quantmod Co-Author and Maintainer

下載商品到自訂環境

# Create new environment
data_env <- new.env()

# Use getSymbols to load data into the environment getSymbols(c("SPY", "QQQ"), env = data_env, auto.assign = TRUE)
"SPY" "QQQ"
# Look at a few rows of the SPY data
head(data_env$SPY, 3)
            SPY.Open SPY.High SPY.Low SPY.Close SPY.Volume SPY.Adjusted
 2007-01-03   142.25   142.86  140.57    141.37   94807600     114.8094
 2007-01-04   141.23   142.05  140.61    141.67   69620600     115.0530
 2007-01-05   141.33   141.40  140.38    140.54   76645300     114.1353
在 R 匯入與管理金融資料

使用 lapply()

  • 迴圈遍歷環境 {{1}} 內所有物件
  • do.call() 將函式結果清單合併成單一物件
    • 第 1 個引數(what)是要呼叫的函式
    • 第 2 個引數(args)是要傳入的引數清單
在 R 匯入與管理金融資料

擷取調整收盤價並合併為一個物件

# Extract volume column from each object
adjusted_list <- lapply(data_env, Ad)

# Merge each list element into one object adjusted <- do.call(merge, adjusted_list)
head(adjusted)
            QQQ.Adjusted SPY.Adjusted
 2007-01-03     39.47694     114.8094
 2007-01-04     40.22558     115.0530
 2007-01-05     40.03385     114.1353
 2007-01-08     40.06124     114.6632
 2007-01-09     40.26210     114.5658
 2007-01-10     40.73684     114.9475
在 R 匯入與管理金融資料

一起來練習吧!

在 R 匯入與管理金融資料

Preparing Video For Download...