A Guide to Modelling Economic Reality
Note: This is a guide to formal modelling social reality; note that a learn cognitive structure in your brain is almost a model of reality; but an internal one.
:TODO
The confusion stems from a lack of clarity around the word "prediction." Most of our theories are built specifically for this object:
E[ Y | W; X = x_1 ] - E[ Y | W; X = x_0 ]
where I am taking capital letters to mean random variables and E is the expectation. The Angrist and Pischke example would be what happens to test scores (Y) when class sizes (X) changes, but nothing else (W) does? But that's the same idea with an impulse response function: what happens to the inflation rate in 6 months when the central bank changes its interest rate today?
This second question is related, but different from asking what will inflation be in 6 months. The Federal Reserve setting its policy rate is not the only thing that can happen. To get back to another comment Cochrane made about R2s, monetary policy shocks (i.e., the unexpected part of interest rate changes) notoriously explains very little about inflation or output at any horizon. Central banks make a huge deal of making sure the shocks are small.
But if this doesn't convince you, I invite you to ponder the point raised by Cochrane about stock prices. It is a fact that they are notoriously hard to predict (in the sense that a random walk is hard to beat). Standard economic theory also says that they should be hard to forecast. But it's not the only example. Consumption should also be hard to forecast. In this case, a failure to forecast is a theoretical success.
A last thing about forecasting and the formula above. If you're clever, you probably noticed that I have a difference between two forecasts. Causal analysis can tell you how to adjust an unconditional forecast to account for changes. We call it scenario analysis and while you can build scenarios that do not have causal interpretations, you can also build some that do -- and those are usually what we have in mind when discussing what might happen if specific risks materialize.
Obviously, it would be very dumb to judge this procedure based on what actually happens unless the risks you had in mind materialized. You shouldn't say that a marathon runner can't run because he doesn't sprint as fast as someone who runs 100 meter races.