Skip to content

Instantly share code, notes, and snippets.

@austinbrian
Created May 1, 2019 21:38
Show Gist options
  • Save austinbrian/3462ebbd02e4263e73d613c87062a301 to your computer and use it in GitHub Desktop.
Save austinbrian/3462ebbd02e4263e73d613c87062a301 to your computer and use it in GitHub Desktop.
An examination of a tweet about IPOs five years on
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Five-year IPO returns\n",
"----\n",
"Getting rich on an IPO return is rare, but it's not *that* rare."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Tweet In Question"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<blockquote class=\"twitter-tweet\" data-partner=\"tweetdeck\"><p lang=\"en\" dir=\"ltr\">For those of you who think the <a href=\"https://twitter.com/Pinterest?ref_src=twsrc%5Etfw\">@Pinterest</a> and <a href=\"https://twitter.com/zoom_us?ref_src=twsrc%5Etfw\">@zoom_us</a> <a href=\"https://twitter.com/hashtag/IPOs?src=hash&amp;ref_src=twsrc%5Etfw\">#IPOs</a> will be different from <a href=\"https://twitter.com/lyft?ref_src=twsrc%5Etfw\">@lyft</a>’s, don’t get your hopes up. I know past performance is not indicative of future results, but five years from now, you’re more likely to be in the red with all of them. <a href=\"https://twitter.com/search?q=%24LYFT&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$LYFT</a> <a href=\"https://twitter.com/search?q=%24PINS&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$PINS</a> <a href=\"https://twitter.com/search?q=%24ZM&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$ZM</a> <a href=\"https://t.co/fSXIBVW2on\">pic.twitter.com/fSXIBVW2on</a></p>&mdash; Kian Salehizadeh (@slhzdh) <a href=\"https://twitter.com/slhzdh/status/1118735484954370048?ref_src=twsrc%5Etfw\">April 18, 2019</a></blockquote>\n",
"<script async src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"%%html\n",
"<blockquote class=\"twitter-tweet\" data-partner=\"tweetdeck\"><p lang=\"en\" dir=\"ltr\">For those of you who think the <a href=\"https://twitter.com/Pinterest?ref_src=twsrc%5Etfw\">@Pinterest</a> and <a href=\"https://twitter.com/zoom_us?ref_src=twsrc%5Etfw\">@zoom_us</a> <a href=\"https://twitter.com/hashtag/IPOs?src=hash&amp;ref_src=twsrc%5Etfw\">#IPOs</a> will be different from <a href=\"https://twitter.com/lyft?ref_src=twsrc%5Etfw\">@lyft</a>’s, don’t get your hopes up. I know past performance is not indicative of future results, but five years from now, you’re more likely to be in the red with all of them. <a href=\"https://twitter.com/search?q=%24LYFT&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$LYFT</a> <a href=\"https://twitter.com/search?q=%24PINS&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$PINS</a> <a href=\"https://twitter.com/search?q=%24ZM&amp;src=ctag&amp;ref_src=twsrc%5Etfw\">$ZM</a> <a href=\"https://t.co/fSXIBVW2on\">pic.twitter.com/fSXIBVW2on</a></p>&mdash; Kian Salehizadeh (@slhzdh) <a href=\"https://twitter.com/slhzdh/status/1118735484954370048?ref_src=twsrc%5Etfw\">April 18, 2019</a></blockquote>\n",
"<script async src=\"https://platform.twitter.com/widgets.js\" charset=\"utf-8\"></script>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Why is it dumb?\n",
"This tweet manipulates bin sizes to make it seem like the vast majority of IPOs result in huge losses, which is misleading on two counts. \n",
"\n",
"#### 1. The proportion that make money and lose money are a lot closer than this presentation of the data lets on. \n",
"\n",
"The true proportions are much more equal, but this tweet uses the idea that an investment can't lose more than 100% incorrectly, bundling all losses greater than 50% into a single bin. It would be more correct to limit the right skew of the data by bundling all *gains* greater than 50% into a single bin as well.\n",
" \n",
"#### 2. The value of the biggest IPO returns dwarfs the money lost on the ones that didn't pan out. \n",
"Gaining 1000% on an investment overcomes 10 equal-sized investments that lose all your money! This is obvious, but the data is myopically focused on the total number of companies with returns, rather than, as the title suggests, focusing on the returns themselves."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Recreating the Data\n",
"First I needed to recreate the chart."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'<-50%': 3246,\n",
" '-50% to 0%': 1397,\n",
" '0% to 50%': 965,\n",
" '50% to 100%': 627,\n",
" '100% to 200%': 698,\n",
" '200% to 300%': 284,\n",
" '300% to 400%': 168,\n",
" '400% to 500%': 90,\n",
" '500% to 1000%': 154,\n",
" '1000% to 2000%': 64,\n",
" '2000% to 3000%': 11,\n",
" '>3000%': 9}"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"datalabels = ['<-50%',\n",
" '-50% to 0%',\n",
" '0% to 50%',\n",
" '50% to 100%', \n",
" '100% to 200%', \n",
" '200% to 300%', \n",
" '300% to 400%', \n",
" '400% to 500%', \n",
" '500% to 1000%', \n",
" '1000% to 2000%', \n",
" '2000% to 3000%', \n",
" '>3000%'\n",
" ]\n",
"datavals = [3246, 1397, 965, 627, 698, 284, 168, 90, 154, 64, 11, 9]\n",
"\n",
"data = dict(zip(datalabels, datavals))\n",
"data"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"I tried to get the colors close to those of The Tweet in Question."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"pal = [\n",
" '#ECA8A5',\n",
" '#F7BDA8',\n",
" '#DEE2B0',\n",
" '#D1DFAE',\n",
" '#C3DBAD',\n",
" '#B7D4B0',\n",
" '#ACD0AF',\n",
" '#A7C6B7',\n",
" '#A5C4A2',\n",
" '#80a55b',\n",
" '#68874a',\n",
" '#506839',\n",
"]"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"g = sns.barplot(\n",
" x=list(data.values()), \n",
" y=list(data.keys()), \n",
" palette=pal)\n",
"\n",
"# add labels to the bars in the middle, like TTiQ\n",
"for i, bar in enumerate(g.patches):\n",
" w = bar.get_width()\n",
" g.text(\n",
" (w/2),\n",
" i,\n",
" '{:,}'.format(int(w)),\n",
" va='center',\n",
" fontweight='bold',\n",
" size=10\n",
" )\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Combining the gainful bins\n",
"To deal with #1 above, I combine the gain bins in the same way that the binned losses are combined."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[3246, 1397, 965, 2105]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# We can use the first three, then we're just going to sum all the rest together into > 50%\n",
"comb_data_labels = datalabels[:3] + ['> 50%']\n",
"comb_data_vals = datavals[:3] + [sum(datavals[3:])]\n",
"comb_data_vals"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"g = sns.barplot(\n",
" x=list(comb_data_vals), \n",
" y=list(comb_data_labels), \n",
" palette=pal[:4])\n",
"\n",
"# add labels to the bars in the middle, like TTiQ\n",
"for i, bar in enumerate(g.patches):\n",
" w = bar.get_width()\n",
" g.text(\n",
" (w/2),\n",
" i,\n",
" '{:,}'.format(int(w)),\n",
" va='center',\n",
" fontweight='bold',\n",
" size=10\n",
" )\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This demonstrates the point succinctly -- losses are more common, sure, but the overall distribution of IPO returns is centered a lot closer to zero than that chart would have you believe."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Overall, IPOs tend to gain money after five years 40% percent of the time.\n"
]
}
],
"source": [
"print(\n",
" f\"Overall, IPOs tend to gain money after five years {sum(datavals[2:])/sum(datavals):.0%} percent of the time.\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The odds on making your money back are 3:2 against, which seems... about right for an investment in a newly-public company. It's a *little* risky, but probably not significantly moreso than any other company."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Weighting by size of gain\n",
"I'll use the median gain for each bin. Reminder: the calculation for a multiplier is 1+(`median rate of change`). For investments with gains greater than 3,000%, I'll conservatively use 3,000%."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Actual n-size</th>\n",
" <th>Multiplier</th>\n",
" <th>Weighted Value</th>\n",
" <th>Gain (Loss)</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>&lt;-50%</th>\n",
" <td>3246</td>\n",
" <td>0.25</td>\n",
" <td>811.50</td>\n",
" <td>-2434.50</td>\n",
" </tr>\n",
" <tr>\n",
" <th>-50% to 0%</th>\n",
" <td>1397</td>\n",
" <td>0.75</td>\n",
" <td>1047.75</td>\n",
" <td>-349.25</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0% to 50%</th>\n",
" <td>965</td>\n",
" <td>1.25</td>\n",
" <td>1206.25</td>\n",
" <td>241.25</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50% to 100%</th>\n",
" <td>627</td>\n",
" <td>1.75</td>\n",
" <td>1097.25</td>\n",
" <td>470.25</td>\n",
" </tr>\n",
" <tr>\n",
" <th>100% to 200%</th>\n",
" <td>698</td>\n",
" <td>2.50</td>\n",
" <td>1745.00</td>\n",
" <td>1047.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>200% to 300%</th>\n",
" <td>284</td>\n",
" <td>3.50</td>\n",
" <td>994.00</td>\n",
" <td>710.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>300% to 400%</th>\n",
" <td>168</td>\n",
" <td>4.50</td>\n",
" <td>756.00</td>\n",
" <td>588.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>400% to 500%</th>\n",
" <td>90</td>\n",
" <td>5.50</td>\n",
" <td>495.00</td>\n",
" <td>405.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>500% to 1000%</th>\n",
" <td>154</td>\n",
" <td>8.50</td>\n",
" <td>1309.00</td>\n",
" <td>1155.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1000% to 2000%</th>\n",
" <td>64</td>\n",
" <td>16.50</td>\n",
" <td>1056.00</td>\n",
" <td>992.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2000% to 3000%</th>\n",
" <td>11</td>\n",
" <td>26.00</td>\n",
" <td>286.00</td>\n",
" <td>275.00</td>\n",
" </tr>\n",
" <tr>\n",
" <th>&gt;3000%</th>\n",
" <td>9</td>\n",
" <td>31.00</td>\n",
" <td>279.00</td>\n",
" <td>270.00</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Actual n-size Multiplier Weighted Value Gain (Loss)\n",
"<-50% 3246 0.25 811.50 -2434.50\n",
"-50% to 0% 1397 0.75 1047.75 -349.25\n",
"0% to 50% 965 1.25 1206.25 241.25\n",
"50% to 100% 627 1.75 1097.25 470.25\n",
"100% to 200% 698 2.50 1745.00 1047.00\n",
"200% to 300% 284 3.50 994.00 710.00\n",
"300% to 400% 168 4.50 756.00 588.00\n",
"400% to 500% 90 5.50 495.00 405.00\n",
"500% to 1000% 154 8.50 1309.00 1155.00\n",
"1000% to 2000% 64 16.50 1056.00 992.00\n",
"2000% to 3000% 11 26.00 286.00 275.00\n",
">3000% 9 31.00 279.00 270.00"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"vf = pd.DataFrame.from_dict(data, orient='index',columns=['Actual n-size'])\n",
"multiplier = [.25, .75, 1.25, 1.75, 2.5, 3.5, \n",
" 4.5, 5.5, 8.5, 16.5, 26, 31]\n",
"vf['Multiplier'] = multiplier\n",
"vf['Weighted Value'] = vf['Actual n-size']*vf['Multiplier']\n",
"vf['Gain (Loss)'] = vf['Weighted Value'] - vf['Actual n-size']\n",
"vf"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"def show_graph(col, pal=pal):\n",
" plt.figure(figsize=(6,6))\n",
" g = sns.barplot(x=vf[col], y=vf.index, palette=pal)\n",
" for i, bar in enumerate(g.patches):\n",
" w = bar.get_width()\n",
" if w>=0:\n",
" g.text(\n",
" w/2+120,\n",
" i,\n",
" '${:,}'.format(int(w)),\n",
" va='center',\n",
" fontweight='bold',\n",
" size=10\n",
" )\n",
" elif w<0:\n",
" g.text(\n",
" w/2, \n",
" i, \n",
" '$ {:,}'.format(int(w)),\n",
" va='center',\n",
" fontweight='bold',\n",
" size=10\n",
" )\n",
" plt.show()\n",
"\n",
"show_graph('Gain (Loss)')\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Total Invested: 7713\n",
"Total Gain (Loss): 3369.75\n",
"Percent Return: 43.69%\n"
]
}
],
"source": [
"print('Total Invested:', vf[\"Actual n-size\"].sum())\n",
"print('Total Gain (Loss):',vf['Gain (Loss)'].sum())\n",
"print(f\"Percent Return: {vf['Gain (Loss)'].sum()/vf['Actual n-size'].sum():.2%}\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Conclusion\n",
"If we size up the value of an even-sized investemnt, IPOs after 5 years have a positive total value. Moreover, losses incurred are overcome by investments returning no more than 400%, so they do not rely on extreme outliers to overcome bad investments.\n",
"\n",
"Of course, the conclusion from this exercise should really be that any single IPO investment isn't especially likely to be a jackpot of riches. Instead, a broad-based IPO-indexing strategy that invested modest amounts in the full gamut of IPO entrants seems to be the best case for positive returns."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment