Analyzing the Fed Rate Cut in Mathematica
The Federal Reserve cut the federal funds rate this week for the first time in four years.
The Fed makes much of its data available on the web through the FRED II database. So, all I had to do was point Mathematica’s powerful Import function to the site, and I instantly had the data in Mathematica for analysis. It took one line of code.
A couple of short Mathematica evaluations later, and I had a list of all the previous occasions when this rate fell 0.5% or more. I immediately noticed that these large drops sometimes come in “runs,” and decided to focus on the large cuts in each such sequence. I found 15 of these which go back to 1954.
There are obvious natural periods in the data. The pre-Volcker Fed, through 1979, operated on Keynesian principles and focused on trying to control unemployment through rate cuts. In the Volcker period, from 1979 to 1987, the focus was instead on reducing persistent inflation. The Fed did not directly target the funds rate but instead focused on the rate of growth in the money supply, and rates were high and volatile. Since 1987, the Greenspan (and now Bernanke) Fed has used a pragmatic mix, with a primary objective of keeping inflation low, but a willingness to cut aggressively when the risk of recession seems high. Throughout the different eras, making a rate cut has not lead to deterministic behavior and there has always been a wide variance in what happens.
I decided to look at the behavior of several macroeconomic series in the months following an initial large reduction in the federal funds rate, with the option of breaking the cases down into these natural Fed policy periods. I wanted to see how each series moved in the months after each initial cut, with all the past cases overlayed on the same plot.
I chose indicators frequently associated with Fed rate decisions or regarded as strongly driven by Fed rate policies. Inflation, unemployment and real GDP are the indicators the Fed itself watches the most.
I included the federal funds rate itself to see if a large cut typically signals a whole series of cuts ahead. For longer term rates I used two corporate bond series: highest grade and investment grade. Investment-grade bonds may be more sensitive to changes in the real economy, due to their higher risk of default.
Of course, everyone is most interested in the effect of rate cuts on the stock market. I looked at two series for this: the Dow Jones and the broader S&P 500 index. These are readily available within Mathematica through the FinancialData function, so I did not need to get those from the Fed. They were instantly compatible with the data from the Fed, in dates, formats, plotting, etc.
Finally, I included two exchange-rate series, as those are generally thought to be quite sensitive to changes in rates. Higher rates are believed to strengthen a currency and lower ones to weaken it. My two series are both trade-weighted indices, one against major “hard” currencies and the other including all US trading partners.
Once I decided what I wanted, getting this data and examining plots of it inside Mathematica took literally minutes.
By the end of the day—a day in which we both worked on other projects as well—we had this finished, and uploaded it to the Wolfram Demonstrations Project.
I think the turnaround time on this little project shows some of the strengths of Mathematica 6. Forms of analysis and user-interface elements that might be difficult in other software are easy, and the results can be made highly accessible—open to anyone with Mathematica or the free Mathematica Player.
Next we plan to make a lot of this data accessible right inside Mathematica within our load-on-demand data system. That way, what one experienced user was able to do easily now, anyone with Mathematica will be able to do at least as easily in the future.