宏觀經濟

報告年度通貨膨脹率的最佳方式:月平均同比或期末?

  • February 23, 2022

我正在整理一份關於近期經濟活動的報告,但我不確定在年度水平上表示通脹的最佳方式是什麼。我從 FRED 中提取了 CPI All Items All Urban 數據,並將指數數據轉換為月度同比百分比。我現在想生成一個帶有年度值的表。我的第一個想法是取一年內每月價值的平均值,因為(我認為)這將代表對經濟中消費者全年經歷的準確估計。有人建議我改用每年 12 月的 YoY,因為這將反映從年初到年底的價格上漲百分比。我們可能會分開差價,報告兩者,並包含一個圖表,其中包含每月同比和 12 個月移動平均線,突出顯示兩個系列的 12 月值。也就是說,我仍然不確定年度通脹的最佳表現是什麼,我還沒有從官方來源找到明確的答案。

向您提出的關於使用 12 月 YoY 來表示年度通貨膨脹的建議是不合適的。

一些指示:

  1. 通貨膨脹來自代表當月平均價格水平的指數。所以即使一個月也有一個平均值。首先了解如何在您所在國家/地區的指數編制中計算該平均值。在一些國家,AM 用於減少月內變化,而在其他國家則使用 GM。
  2. 這也取決於目的。例如,如果計算出的年通貨膨脹率是研究/縮小股票變數的輸入,那麼年底的指數可能是可以的。但對於大多數應用而言,一年中的平均價格變化更為相關。在這種情況下,建議首先計算每年所有 12 個月的平均指數,然後根據指數的年度時間序列計算通貨膨脹。如何平均應考慮上述第 1 點的答案。

注意:這裡重要的一點是,全年的平均通貨膨脹率與年度通貨膨脹率不同。在前者中,您取每月通貨膨脹率的平均值,而在後者中,您根據平均年度指數計算通貨膨脹(就像 CPI 編制機構根據每日/月內價格數據計算一個月的通貨膨脹率一樣)。所以據此決定。

簡短的回答:它是同比,因為它準確地衡量了價格水平在 12 個月內增長了多少。我懷疑官方消息來源會回答這個問題 - 有些事情被認為是常識。但是,由於您要麼有指數,要麼有增長率的同比值,我想你有一個間接的答案。

長答案:通貨膨脹(就像金融和經濟中的幾乎所有東西一樣)隨著時間的推移而增長,因此它本質上是指數級的。幾何平均數是確定平均增長率的最佳方法。如果你做得好,你的方法將與同比數字相同。我在下面的 Julia 中使用FredAPI來展示這一點。美國最常見的 CPI 指標之一是CPIAUCSL

獲取數據幀,並以 pct 計算 YoY 和 MoM 的增長率,結果如下 df, 在此處輸入圖像描述

其中突出顯示的區域是原始數據。請注意,FRED 使用 2020-12-01 來指代 12 月的 CPI(實際上是 12 月底,於 1 月發布)。

a) 要獲得 2021 年的同比百分比,您使用 2020 年 12 月底(即 1 月初)和 12 月 21 日結束併計算百分比變化。每個月都這樣做,結果列YoY %

b ) 如果你要做 MoM,你計算從一個月到另一個月的變化,列MoM%

c ) 幾何平均值定義為 $$ \left({\frac {a_{1}}{a_{0}}}{\frac {a_{2}}{a_{1}}}\cdots {\frac {a_{n}}{a_{n-1}}}\right)^{\frac {1}{n}}=\left({\frac {a_{n}}{a_{0}}}\right)^{\frac {1}{n}} $$ 現在,我們可以很容易地計算兩者,看看它是等價的

gm = geomean(last(df.MoM, 12))-1
println("The geometric mean from monthly growth rates is $(round(gm, digits = 5)*100)%")
growth_rate = df.value[end]/df.value[1]
println("The YoY % growth rate is $(round((growth_rate-1)*100, digits = 5))%")
println("We can also turn this into monthly values: $(round(growth_rate^(1/12)-1, digits = 5)) ...")
println("... which is $(round((growth_rate^(1/12)-1)*100, digits = 3))% ...")
println("... which happens to be identical to the geometric mean: $(gm == growth_rate^(1/12)-1)")
println("From the start value of the CPI ($(df.value[1])), you can use the geometric mean to compute the end value of the CPI: $(df.value[1]*(1+gm)^12)")
println("Or you use the start value of the CPI ($(df.value[1])), and YoY to compute the end value of the CPI: $(df.value[1]*(1+df[!,"YoY %"][end]/100))")

在此處輸入圖像描述

現在,人們很難用月值來表示增長率。你覺得說你去年從一隻股票上獲得了 7% 的回報更容易,還是聽到你平均每週(平均)0.13% 的回報更容易?

您不應該做的是使用每月 YoY 值的平均值。這幾乎沒有意義,不是指 2021 年的增長率。它們是一年之間的增長率,鑑於去年通貨膨脹加速,它將大大低估全年的實際增長率。

編輯

如果您想要從年初到年底的價格百分比上漲,這就是通常報告通貨膨脹率的方式,您可以使用 YoY December。

假設 iPhone 在 1 月初的價格為 1000 英鎊(因為總是只有每月的通貨膨脹值,所以 12 月底是迄今為止用於 1 月初值的最佳代理)。如果在年底,您需要為完全相同的型號支付 1100 英鎊,那麼 iPhone 的價格在一年中上漲了多少?我想沒有人會質疑它增加了 100 英鎊,還是 10%?

如果整個經濟都是 iPhone,那將是我們的通貨膨脹。現在很明顯,那一年一部 iPhone 的成本可能是什麼。它可能在黑色星期五以 500 英鎊的價格售出,在這種情況下,人們支付的平均價格可能大大低於 1000 英鎊。但是,如果您想知道全年價格上漲了多少(類似於通貨膨脹),您可以使用開始值和結束值。

BLS(勞工統計局)有一個常見問題解答頁面,您可以在第 16 點閱讀:“有時會報告指數水平本身,但報告 1 個月或 12 個月的百分比變化也很常見。” 這些是我上面提供的三個值(在我的例子中是季節性調整的)。

BLS實際上允許您檢索年度平均值(每月的 YoY 值 - 下方年度列中的 4.7),

在此處輸入圖像描述

就像你也可以在 FRED 上那樣做: 在此處輸入圖像描述

請注意,BLS 未經季節性調整,FRED 經季節性調整(兩者都可用)。但是,請考慮如何計算該平均值。在我的範例中,它是 YoY 的平均值。 在此處輸入圖像描述

這是指 iPhone 每月的平均價格,與一年前的價格相比,以及一年中的平均價格,如下所示(如果您將最後一個價格切換為 1100,您會看到之前的範例)。這些數字與通貨膨脹數據相匹配,因為我只是將“iPhone”的價格標準化以匹配所提供的通貨膨脹數據。

在此處輸入圖像描述

如上所示,BLS 本身並未將這種可能性作為其常見問題解答中的選擇之一。usinflationcalculator.com也將其計算為 12 月的標準 YoY,但補充說 BLS 允許您將其顯示為平均值,同時補充說這個數字很少討論。

在此處輸入圖像描述

BLS並沒有真正以這種方式發布數據,但這是一個簡單的選項,如果您在通用模板中勾選“包括年度平均值”框在此處輸入圖像描述(就像 FRED),您可以從中選擇。這對於其他系列可能更有意義,除非您的目標不是讓價格水平從頭到尾發生變化。

我將留給閱讀本文的人來決定年初價格為 1000 美元、年底價格約為 1100 美元的 iPhone 的價格是比當年增長 4.6% 還是增長約 10%。此外,每個人都可以決定這個價格上漲是否是指那一年的通貨膨脹(以及 4.6% 實際指的是什麼)。

我就這樣吧。

引用自:https://economics.stackexchange.com/questions/50449