GoogleFinance:按月获取历史记录

GoogleFinance: Get History By Month

我经常使用 GoogleFinance,但从文档来看,获取历史数据的唯一格式似乎是按天或按周。

有什么方法可以按月获取数据吗?

我想我可以添加一个额外的列,并找到每个月的结束日期以使用一些计算来获取值,但也许有更简单的方法来做到这一点?

可以设置起止日期,用QUERY去掉headers,然后取AVERAGE

=AVERAGE(
  QUERY(
    GOOGLEFINANCE(
      "NASDAQ:GOOG", "price", DATE(2020,1,1), DATE(2020,2,1), "DAILY"
    ), 
    "SELECT Col2 OFFSET 1"
  )
)

从内到外:

  • GOOGLEFINANCE returns 2020 年 1 月 1 日至 2020 年 2 月 1 日每天的价格列表。
  • QUERY 使用价格选择 Col2 并抵消来自 GOOGLEFINANCE 的数据,以便不再包括 headers。现在你有一个简单的数字列表
  • 最后AVERAGE只是计算平均值。

参考

尝试:

=ARRAYFORMULA(SORTN(TEXT(
 GOOGLEFINANCE("NASDAQ:GOOG", "price", DATE(2020,1,1), DATE(2021,2,1), "daily"), 
 {"yyyy mm", "@"}), 9^9, 2, 1, 0))