在 R 中绘制 Brock 值

Plot Brock value in R

我正在尝试在 R:

中重现这个名为 "Brock Value" 的情节

提供了地块的公式(Brock 值)here

能够在 R 中提取所有必要的数据来构建此图将提供最新的结果,这将非常有用,但我不确定技术上如何执行它。有什么建议吗?

我不确定他们从哪里获取 1919 年的数据,但您可以使用 quantmod::getSymbols.

轻松获取所有 3 个系列的 1950 年的数据以进行计算

作者没有明确说明他们使用了哪个 GDP 序列,因此它可能是名义的、实际的、季节性调整的、未季节性调整的等。

require(quantmod)

# Pull S&P500 from Yahoo
getSymbols("^GSPC", src="yahoo", from="1947-01-01")
# Convert to monthly, since GDP/AAA are quarterly/monthly, respectively
SPX <- to.monthly(GSPC, name="SPX")

# Pull GDP and AAA bond yield from FRED
getSymbols("AAA;GDP", src="FRED")
# Convert xts index to yearmon, so series will merge cleanly
index(AAA) <- as.yearmon(index(AAA))
index(GDP) <- as.yearmon(index(GDP))

# Merge, fill w/NA, and omit all obs where we don't have data for all 3 series
x <- na.omit(merge(SPX, GDP, AAA, fill=na.locf))
indexTZ(x) <- "UTC"  # avoid potential timezone issues with non-datetime index

# Calculate Brock Value
x$BV <- x$GDP/(2*x$AAA)
# plot
plot(log(x[,c("SPX.Close","BV")]), main="Brock Value")