{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Equations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### EPS\n", "$\n", "\\begin{align}\n", "\\textit{Earnings Per Share} & = \\frac{\\textit{Earnings}}{\\textit{Market Value Per Share}} \\\\\n", "\\textit{EPS} & = \\frac{\\textit{Earnings}}{\\textit{Share Price}}\n", "\\end{align}\n", "$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### P/E Ratio\n", "$\n", "\\begin{align}\n", "\\textit{Price/Earnings Ratio} & = \\frac{\\textit{Market Value Per Share}}{\\textit{Earnings Per Share}} \\\\\n", "\\textit{P/E} & = \\frac{\\textit{Share Price}}{\\textit{EPS}}\n", "\\end{align}\n", "$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "IPO parameters:\n", "- `n_shares` $ \\text{number of shares} $\n", "- `price` $ \\text{price per share} $" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
mktcapn_sharespriceearningsepspe
010000000.010000000.01.01000000.00.10000010.000000
110000000.0266666.037.51000000.03.7500099.999975
210000000.0100000.0100.01000000.010.00000010.000000
310000000.010000.01000.01000000.0100.00000010.000000
\n", "
" ], "text/plain": [ " mktcap n_shares price earnings eps pe\n", "0 10000000.0 10000000.0 1.0 1000000.0 0.100000 10.000000\n", "1 10000000.0 266666.0 37.5 1000000.0 3.750009 9.999975\n", "2 10000000.0 100000.0 100.0 1000000.0 10.000000 10.000000\n", "3 10000000.0 10000.0 1000.0 1000000.0 100.000000 10.000000" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mktcap = 10_000_000\n", "earnings = 1_000_000\n", "\n", "import pandas as pd\n", "df = pd.DataFrame.from_records([], columns=(\"mktcap\",\"n_shares\",\"price\",\"earnings\"))\n", "constdict = dict(mktcap=mktcap, earnings=earnings)\n", "prices = [1, 37.50, 100, 1000]\n", "for price in prices:\n", " data = {**constdict, 'price': price, 'n_shares': mktcap // price}\n", " data['eps'] = data['earnings'] / data['n_shares']\n", " data['pe'] = data['price'] / data['eps']\n", " df = df.append(data, ignore_index=True)\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Observation 1\n", "EPS is not useful for comparing the performance of different securities because it is sensitive to ``n_shares`` and ``price``." ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[Text(0, 0, '10,000,000'),\n", " Text(0, 0, '266,666'),\n", " Text(0, 0, '100,000'),\n", " Text(0, 0, '10,000')]" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "xcol='n_shares'\n", "ax = df[[xcol, 'eps', 'pe']].plot(\n", " x=xcol, y=['eps','pe'], logx='sym', xticks=df[xcol], use_index=True) #, table=True)\n", "ax.set_xticklabels(df[xcol].apply(lambda x: \"{:,.0f}\".format(x)))" ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[Text(0, 0, '1.0'),\n", " Text(0, 0, '37.5'),\n", " Text(0, 0, '100.0'),\n", " Text(0, 0, '1,000.0')]" ] }, "execution_count": 100, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "xcol='price'\n", "ax = df[[xcol, 'eps', 'pe']].plot(\n", " x=xcol, y=['eps','pe'], logx='sym', xticks=df[xcol], use_index=True) #, table=True)\n", "ax.set_xticklabels(df[xcol].apply(lambda x: \"{:,.1f}\".format(x)))" ] }, { "cell_type": "code", "execution_count": 107, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[Text(0, 0, '0.1'), Text(0, 0, '3.8'), Text(0, 0, '10.0'), Text(0, 0, '100.0')]" ] }, "execution_count": 107, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAEGCAYAAAB2EqL0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3de3hU5b328e8v5xBCIJyMBE2Q8ykoCSJoqxsV6qHYVpS+tWK11e1rrd3iAbXqrq1u263uVrdavdSW2lYNFAWr9UT11dYDByVAwAACQiBCIJzJcfK8f8wCY0ggySSzZib357pyzZo1z5p1TyZZv/U8s2Ytc84hIiJyLHF+BxARkeiggiEiIi2igiEiIi2igiEiIi2igiEiIi2S4HeAY+nVq5fLycnxO4aISFRZunTpDudc7/Z8zogvGDk5OSxZssTvGCIiUcXMPm/v59SQlIiItIgKhoiItIgKhoiItEjEf4bRlNraWkpLS6mqqvI7SlikpKSQnZ1NYmKi31FEpBOLyoJRWlpKeno6OTk5mJnfcTqUc46dO3dSWlpKbm6u33FEpBM75pCUmT1jZtvNbGWDeZlm9qaZrfVuezR47DYzW2dmJWY2ucH8sWa2wnvsYQthS19VVUXPnj1jvlgAmBk9e/bsNL0pEYlcLfkM4w/AlEbzZgELnXODgIXefcxsODAdGOEt85iZxXvLPA5cDQzyfho/Z6t0hmJxSGd6rSISuY5ZMJxz7wIVjWZPBWZ707OBixrMf945V+2c2wCsA8aZWRbQzTn3gQueT/2PDZYREZF2cqC6jv9cUNwhz93Wo6T6OufKALzbPt78fsDmBu1KvXn9vOnG85tkZleb2RIzW1JeXt7GiJHhrrvu4q233vI7hoh0Evf//VNmf7CxQ567vQ+rbWrsxB1lfpOcc0865/Kdc/m9e7frN9vDKhAIcM8993D22Wf7HUVEOoH31pbz7Iefc9XEjjlApq0FY5s3zIR3u92bXwr0b9AuG9jqzc9uYn7U2rhxI0OHDmXGjBmMHj2aiy++mIMHD5KTk8M999zD6aefzpw5c7jiiiuYO3cuAIsXL2bChAnk5eUxbtw49u3bRyAQ4Oabb6agoIDRo0fzxBNP+PzKRCQa7ams5eY5yxnYpys3TR7SIeto62G1C4AZwP3e7fwG8/9iZg8BxxP8cHuRcy5gZvvMbDzwEXA58EhIyT0/f7mYVVv3tsdTHTb8+G7cfeGIY7YrKSnh6aefZuLEiVx55ZU89thjQPB7E//85z8BeO211wCoqanh0ksv5YUXXqCgoIC9e/eSmprK008/TUZGBosXL6a6upqJEydy7rnn6hBaEWmVny8opnx/NU9ePpaUxPhjL9AGxywYZvYccCbQy8xKgbsJFopCM7sK2ARMA3DOFZtZIbAKqAOuc84FvKe6luARV6nA372fqNa/f38mTpwIwGWXXcbDDz8MwKWXXnpE25KSErKysigoKACgW7duALzxxhssX778cC9kz549rF27VgVDRFrstZVfMO+TLdwwaRCjs7t32HqOWTCcc99t5qFJzbS/F7i3iflLgJGtStcCLekJdJTGh7seup+WlnZEW+dck4fHOud45JFHmDx58hGPiYgcy4791dzx4gpG9uvGj/9tYIeuS+eSCsGmTZv44IMPAHjuuec4/fTTm207dOhQtm7dyuLFiwHYt28fdXV1TJ48mccff5za2loA1qxZw4EDBzo+vIhEPeccd7y4gn3VdTx0yRgS4zt2k66CEYJhw4Yxe/ZsRo8eTUVFBddee22zbZOSknjhhRe4/vrrycvL45xzzqGqqoof/vCHDB8+nFNOOYWRI0dyzTXXUFdXF8ZXISLR6sVPtvB68TZuOncwg/umd/j6LPg9usiVn5/vGl9AafXq1QwbNsynREEbN27kggsuYOXKlcdu3A4i4TWLSOQo21PJuf/zLkOPS+f5q08jPu6IIfKlzrn89lynehgiIlHGOcctc5cTqHc8MC3viGLRUVQw2ignJydsvQsRkYb+9NEm3lu7g9vPG8aJPY88yKajqGCIiESRz3ce4L5XVnPGoF5879QTwrpuFQwRkSgRqHfMLCwiId749cWjw34m66i8gJKISGf01HvrWfL5Lv7n0jyyMlLDvn71MEREokDJF/t48I01TBlxHBeNafZk3x1KBUNEJMLVBuq5sXAZ6SkJ3Putkb5dVE1DUiIiEe6Rf6yjeOtenvj+WHp2TfYth3oYbdTc6c2XLl3K17/+dcaOHcvkyZMpKyvzO6qIRLGizbt59O11fPuUfkwecZyvWaK/h/H3WfDFivZ9zuNGwTfuP2azxqc3f/TRR3nxxReZP38+vXv35oUXXuCOO+7gmWeead98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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "xcol='eps'\n", "ax = df[[xcol, 'price', 'pe']].plot(\n", " x=xcol, y=['price','pe'], logx='sym', xticks=df[xcol], use_index=True) #, table=True)\n", "ax.set_xticklabels(df[xcol].apply(lambda x: \"{:,.1f}\".format(x)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Observation 2\n", "- For a higher EPS, set a higher initial price" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## P/E Ratio further study\n", "$\n", "\\begin{align}\n", "\\textit{P/E} & = \\frac{\\textit{Share Price}}{\\frac{\\textit{Earnings}}{\\textit{Share Price}}} \\\\\n", "\\textit{P/E} & = \\frac{\\textit{Share Price}}{1} * \\frac{\\textit{Share Price}}{\\textit{Earnings}} \\\\\n", "\\textit{P/E} & = \\frac{\\textit{Share Price}^2}{\\textit{Earnings}}\n", "\\end{align}\n", "$" ] }, { "cell_type": "code", "execution_count": 116, "metadata": {}, "outputs": [], "source": [ "import sympy as sp\n", "eps = sp.var(\"EPS\")\n", "earnings = sp.var(\"earnings\")\n", "mktcap = sp.var(\"mktcap\")\n", "price = sp.var(\"price\")\n", "pe = sp.var(\"PE\")" ] }, { "cell_type": "code", "execution_count": 118, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle EPS = \\frac{earnings}{price}$" ], "text/plain": [ "Eq(EPS, earnings/price)" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eps_eq = sp.Eq(eps, earnings / price)\n", "eps_eq" ] }, { "cell_type": "code", "execution_count": 121, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle PE = \\frac{price}{EPS}$" ], "text/plain": [ "Eq(PE, price/EPS)" ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pe_eq = sp.Eq(pe, price / eps)\n", "pe_eq" ] }, { "cell_type": "code", "execution_count": 145, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle PE = \\frac{price^{2}}{earnings}$" ], "text/plain": [ "Eq(PE, price**2/earnings)" ] }, "execution_count": 145, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pe_eq_full = pe_eq.subs({eps: eps_eq.rhs})\n", "pe_eq_full" ] }, { "cell_type": "code", "execution_count": 146, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle PE = \\frac{price}{earnings \\frac{1}{price}}$" ], "text/plain": [ "Eq(PE, price/((earnings/price)))" ] }, "execution_count": 146, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sympy.core.evaluate import evaluate\n", "with evaluate(False):\n", " pe_eq_full_unsimplified = pe_eq.subs({eps: eps_eq.rhs})\n", "pe_eq_full_unsimplified" ] }, { "cell_type": "code", "execution_count": 135, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(PE, price**2/earnings)" ] }, "execution_count": 135, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pe_eq_full.lhs, pe_eq_full.rhs" ] }, { "cell_type": "code", "execution_count": 136, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Eq(PE, price**2/earnings)'" ] }, "execution_count": 136, "metadata": {}, "output_type": "execute_result" } ], "source": [ "str(pe_eq_full)" ] }, { "cell_type": "code", "execution_count": 137, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\frac{price^{2}}{earnings}$" ], "text/plain": [ "price**2/earnings" ] }, "execution_count": 137, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pe_eq_full.rhs" ] } ], "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.7.6" } }, "nbformat": 4, "nbformat_minor": 4 }