Many economic series are released monthly, but only as YoY (year-over-year) rates, that is, the change in an underlying index over the previous year, expressed in percentages. I wish to convert these releases into MoM (month-over-month) values, so that I can accurately recreate at least part of the underlying index. In the chart below, for example, I'm looking for the red line slope, given the two green line slopes, which would allow me to recreate the underlying index.
library("xts") set.seed(212) mm = (runif(24) - 0.3) / 100 idx = c(1, cumprod(mm + 1)) yy = rollapply(idx, 13, function(x) (x/x) - 1)
So given only yy, I would like to find the mm's, or at least the last 12 of them (or idx directly which is my ultimate goal). How do I go about this? Is it a big set of 12 simultaneous equations that I need to solve?
Note that though I have only drawn 2 YoY lines on the chart, I actually have all of the ones for the past 13 months (going back 12 months each time), and using them I'd like to calculate as many of the MoM values as possible.