Author Archive

Buchanan on Scotland

18/Sep/2014 1 comment

I was going to write a post on what I think of Scotland leaving the UK, but then I came across this commentary by Pat Buchanan and now need only point you to it: What Would Brave Heart Do?

Here’s my favorite quote from Buchanan’s piece:

The call of blood, history, faith, culture and memory is winning the struggle against Economism, the Western materialist ideology that holds that the desire for money and things is what ultimately motivates mankind.

The point of life isn’t to maximize GDP, it’s to see that one’s genes and memes are replicated on into the future. Scottish independence puts the current citizens of Scotland (the people who own Scotland), and the super organism that is Scotland (genes and culture in the flesh), in a better footing for meeting life’s true imperative. It also meaningfully weakens Labour, which can’t be bad.

The only downside to independence is that is leaves the UK slightly militarily weaker in a world full of threats.


Categories: Scotland

Uber’s dynamic pricing is a feature, not a bug

14/Aug/2014 1 comment

Today I saw a silly article: Uber car service twists sharing economy into sucker’s economy.

It’s a childish argument, the gist of which seems to be that Uber should either overturn the laws of scarcity or just give rides to the first person who pings them in times of extreme supply scarcity or demand surging.

It’s almost not worth going over as I’m just preaching to the choir. Economists figured this shit out in the early 1800s, if not earlier. Still, it bothers me to see the knaves and fools go after Uber, which is a rare instance of a tech company providing a truly disruptive and  world-improving technology, rather than just hijacking our ape brains as say, Facebook does.

One of the great features of Uber’s dynamic pricing is that there will nearly always be a ride available at some price. In Manhattan and got a pregnant wife about to give birth in The Blizzard of the Century? For $1500 maybe you can get a ride to the hospital. Having that option seems to make the world a better place.

I’m a lot less of a libertarian than I was in my youth, but still think that “price gouging” is socially beneficial in times of stress.

For a compelling discussion of the matter, listen to Russ Roberts and Mike Munger work through the issues in this EconTalk podcast.

Categories: price gouging

U.S. markets are not overvalued

11/Aug/2014 7 comments

My market-driven nominal GDP forecasting system says that markets expect something like 3.8% nominal growth in the next year.

That’s the average forecast from the 10 best models I could build, they take into account changes in asset prices over the last year (lags going back 3 and 4 quarters proved the most accurate, out of sample). If assets became overvalued, it happened over a year ago.

To my mind, that’s pretty good evidence that financial markets as a whole haven’t gotten ahead of the nominal economy.

Markets are probably not greatly undervalued either. The Fed’s likely to keep nominal growth going along at 3.0%-4.0% indefinitely.

Personally, I’m buying stocks with any free cash that I get.



Categories: Uncategorized

…btw the new chart is up at

16/Jun/2014 Comments off

In the end of March, I put up a new charting system at as well as completely overhauling the back end.

The system is no longer plagued by unsychronized prices (blindly scraping at 11:55 and treating everything as having an 11:55 time stamp). My scraper now pulls the time stamp for each price, loading it into a minutely frequency table. All prices for a given three minute span need to be filled in or interpolated before the system will pull principal components and update the forecast. Each forecast is now accurate to within three minutes of the reported stamp.

I’ve also moved operations to an Amazon EC2 instance (a server hosted by Amazon). This means I’m no longer at the mercy of Pennsylvania’s second world electrical infrastructure, or unreliable internet [1]. I can’t recommend Amazon web services enough. It wasn’t easy to setup, but it was a lot easier than any of the alternatives would have been.

Here’s a screen shot of the current graph:


Note the vertical bar in the graph’s middle. This shows the switch from one quarter to the next. The system isn’t trying to forecast NGDP exactly 365 days from today, but rather the figure the BEA will publish 4 quarters hence. Thus there is a discontinuity in the forecasts when we go to a new quarter. Think of the vertical bar as separating two contracts, one that traded until the end of the quarter, and one that took its place after the quarter’s close. The two series are in someway related, but are ultimately measuring NGDP expectations for different quarters.

If you view the forecast at a one or five day window, you’ll get it at 3 minute interval frequency. This is how you’d want to view it if you were curious about a specific event (say a Fed speech). Wider windows will cause the graph to shift to a half hour frequency. As the time series grows, I’ll need to figure out how to deal with the number of observations. I have some ideas here.

Sorry to my Japanese readers for not adding the Japan system like I said I would. However, it took a while (9 months) to figure out how to fix all of the issues with the U.S. system that popped up last year, and to teach myself how to do the web dev work as I’m essentially solo on the project now.  I’m please with it now and not really itching to make any major changes to the econometric side just yet. I still think I’ll make time to do Japan and the UK this year.

Maybe I’ll put a post up about how the new forecast averaging system works. The gist is that I searched a massive model space and then did rolling, year ahead out of sample forecasts to evaluate the models. I ranked the models by average accuracy and forecast error variance and took the top 10 models. The systems thus runs 10 forecasts every three minutes and averages them. The system is actually not that sensitive to whether I take the top 20 or top 30 models, but 10 seems a worthy number.

I’m also putting together an FAQ to put on the site. Emails justinpirving [at thing] or comments on that topic are most welcome.



1.Nothing against the second world, we in quasi dysfunctional countries got to stick together

NGDP before RGDP

13/May/2014 Comments off

Lars Christensen had a nice post up a few days ago on the causal relationship between NGDP and RGDP.

Lars’ post reminds me that shockingly few people who work in the greater macro economics field (especially in the financial world) have any better than a ‘Financial Times’ level understanding of the world. Most think of “GDP” as being 1. RGDP and 2.  either driving inflation or, oddly, somehow decoupled from inflation all together. When NGDP is even considered, its thought of as some side effect of inflation and output. Few come out and put it like this but it’s typically lurking under the surface.

If you read Scott Sumner’s golden age posts from 2009-2010, you will find it hard to think of NGDP as—to use Lars’ wording—the quasi residual that so many treat it. The causal direction is obvious you think about it. How is buying and selling is done?  The buyer goes to the seller, gives them cash, this is nominal spending. No cash, no sale. The seller hands over a real good or service, this is the real production. Note how it comes after the nominal spending—causality. Spent cash begets real production.

I don’t go to my woodlot-raised-swine dealer and say “what inflation factor would you assign to 30 2005-dollars worth of hamhocks?”, I ask him “how much for hamhocks?” and handover the green paper. The green paper spurs the farmer to breed more of his sows and/or raise prices. The nominal spending kicks it all off.

I read The Storm of War in 2012, a well written, uppermiddle brow overview of the Second World War. The book has a graph in it showing how allied bombing was able to halt growth in German war production in 1944. This is shown by way of a war production index, and when I saw it I remember thinking that it’d be tricky to come up with a useful weighting rule for the components of such an index. What if tank production grows 100% but 88mm shell production falls 50%? How to you convey in an index that there are twice as many tanks but fewer shells to fire from them? Moreover, how do you quality adjust tanks when designs change or when they’re built with substandard alloys (as was the case with most German armor after Kursk)? I mulled the problem for a while and concluded that there’s probably no “right” way to do it but maybe the ambiguities wash out over a wide enough range of production items. It then came to me that this index was just RGDP, for a subset of an economy.

RGDP is just a production index.

It’s useful to have production indices. In the case of RGDP a production index tells you how ‘big’ the economy is, which is something we want to know. Production indices (think industrial production or manufacturing production) are understood to be measuring factor variables. I suspect that fewer people would think of RGDP as setting inflation/NGDP if real output were reported as an index instead of being scaled into “constant dollars”.


Side thoughts:

From what I understand, it might be right to think of RGDP as determining NGDP in planned economies like the Soviet Union’s.  The state picks production goals for all goods in the economy and then assigns prices to them. In this case nominal GDP wouldn’t have much meaning.

What do you think of this analogy: NGDP is iodine and the economy has primary hypothyroidism. ?

Seth Roberts has died

28/Apr/2014 Comments off

Seth Roberts helped me sleep better. He shed a light on research problems within medicine, the moral failures of modern academia and saved more than a few from oral surgery through his research on omega 3 supplementation.

He died on Saturday.

He was a true scientist and I will miss his posts greatly.


Categories: Uncategorized

Yellen’s Effect on NGDP Expectations

19/Mar/2014 Comments off

The current version of is flawed in a number of ways. Foremost among these flaws is that the system takes market prices as they are given in a single moment, with no regard to the time stamp on said prices. That is, if the price of an asset at 11:26 is listed on a web source as $50, it goes into my book as $50 @ 11:26, even if the price was delay and carried a time stamp of 11:05 on the source site. This is a problem because commodity and bond market prices are released with a greater lag than stock prices, so the forecast for say 09:45:00 EDT, might have the S&P 500 quote from 09:40:00, but copper prices from 09:30. The errors from this desynchronization tend to average out, and wont have much of an effect on the system, hour to hour, but it does mean that when monetary policy is announced, the effects ‘ripple’ through the forecast. First the S&P will move, then bonds and then commodities, this gives the forecast a ‘whip’ pattern.

Another problem is that TIPS yields are updated infrequently (on the free source I use). This means that when news breaks, the five-year yield will move, but TIPS wont, causing another distortion because the 5-year TIPS spread is an important input in my system.

The last major problem with the system is that it uses the level of 5-year treasury yields. This is problematic because, under QE, treasury yields are no longer a reliable indicator, higher yields meant easy money for QEI and QEII, but then yields fell on the news of QEIII, while stocks, commodities and TIPS spreads pointed to easy money. Tapering or fears of Tapering have typically meant higher yields. Euro Zone and geopolitical tensions are also a source of distortion on the yield level.

Since mid-January, I’ve been running (in parallel to the existing program) a new version of Efficient Forecast which fixes all these issues.

The new system features data desyncronization of no more than three minutes. It fills in gaps in the 5-year TIPS index quote using a highly accurate system of mapping individual TIPS bonds (quotes every minute) to the ‘official’ 5-year Index, and uses yield curve spreads instead of the 5-year yield. It’s not finished yet, as I’ve found out a few days ago that the source I use for dollar index quotes hasn’t had any intraday variation for…a while. This is easy to fix. Oh, and the new system averages over three models, and I’m exploring the out of sample properties of others. When I’m satisfied that it’s stable, and when I’ve exhausted the good-out-of-sample model space, I’ll started publishing the average forecast on the site.

I’d also like to roll out a new, faster graph for the site, though it’s looking like I’ll have to teach myself Java script to do that…so it could be a while. Japan and UK versions are goals for 2014, though I haven’t looked at data availability for those much.

Oh right, so the title of this post alludes to Yellen’s press conference today.

Here’s how the system reacted to Yellen’s speech. Forgive the excel graph


The plot shows the intraday year-ahead forecasts for March 18 and 19. The straight line for the start of March 19 (today) is because I made an error loading the system this morning and had to reset it at lunch. When the system has missing data points, it interpolates, thus the straight line. The take away from the graph is that the system reacted in an intuitive way.

Even though the S&P 500 (and 100) are only two of the eleven assets used in the system, and despite the dollar index input being ‘frozen’ at this morning’s open for the whole day, the new program gave a sequence of forecasts broadly similar to the shape of the S&P 500 after Yellen started speaking. It looks like you’d imagine a true NGDP futures market would look.


I consider this a good sign that the next evolution of Efficient Forecast is on track.

P.S. if the graph is hard to see, here are some forecasts from today with time stamps, Yellen spoke at 14:00 EDT:

Figures are the expected % change in NGDP over 2014Q1 to 2015Q1

2014-03-19 13:51:00 EDT 3.859
2014-03-19 13:54:00 EDT 3.859
2014-03-19 13:57:00 EDT 3.860
2014-03-19 14:00:00 EDT 3.872
2014-03-19 14:03:00 EDT 3.855
2014-03-19 14:06:00 EDT 3.854
2014-03-19 14:09:00 EDT 3.800
2014-03-19 14:12:00 EDT 3.765
2014-03-19 14:15:00 EDT 3.766
2014-03-19 14:18:00 EDT 3.770
2014-03-19 14:21:00 EDT 3.774
2014-03-19 14:24:00 EDT 3.768
2014-03-19 14:27:00 EDT 3.770
2014-03-19 14:30:00 EDT 3.798
2014-03-19 14:33:00 EDT 3.825
2014-03-19 14:36:00 EDT 3.810
2014-03-19 14:39:00 EDT 3.804
2014-03-19 14:42:00 EDT 3.800
2014-03-19 14:45:00 EDT 3.793
2014-03-19 14:48:00 EDT 3.801
2014-03-19 14:51:00 EDT 3.799
2014-03-19 14:54:00 EDT 3.806
2014-03-19 14:57:00 EDT 3.803
2014-03-19 15:00:00 EDT 3.807

Get every new post delivered to your Inbox.