-
Compound Interest Part 1 6
-
Lecture1.1
-
Lecture1.2
-
Lecture1.3
-
Lecture1.4
-
Lecture1.5
-
Lecture1.6
-
-
Compound Interest Part 2 3
-
Lecture2.1
-
Lecture2.2
-
Lecture2.3
-
-
Present Value 4
-
Lecture3.1
-
Lecture3.2
-
Lecture3.3
-
Lecture3.4
-
-
Annuities 6
-
Lecture4.1
-
Lecture4.2
-
Lecture4.3
-
Lecture4.4
-
Lecture4.5
-
Lecture4.6
-
-
Perpetuities 2
-
Lecture5.1
-
Lecture5.2
-
-
Bonds 6
-
Lecture6.1
-
Lecture6.2
-
Lecture6.3
-
Lecture6.4
-
Lecture6.5
-
Lecture6.6
-
-
Dividend Discount Model 3
-
Lecture7.1
-
Lecture7.2
-
Lecture7.3
-
-
Risk 8
-
Lecture8.1
-
Lecture8.2
-
Lecture8.3
-
Lecture8.4
-
Lecture8.5
-
Lecture8.6
-
Lecture8.7
-
Lecture8.8
-
-
Capital Asset Pricing Model 6
-
Lecture9.1
-
Lecture9.2
-
Lecture9.3
-
Lecture9.4
-
Lecture9.5
-
Lecture9.6
-
Dividend Discount Model Part 2
Dividend Discount Model with Growth¶
When we introduce growth, the formula is changed to be the following:
$$ S = \frac{D_1}{r-g} $$
$ S = \text{Share Price} $
$ D_1 = \text{Dividend at year 1} $
$ r = \text{The discount rate} $
$ r = \text{The yearly dividend growth rate} $
What is the value going to be in the same scenario as before except now we have a growth rate of 2%.
#Growth drives value up since stocks are worth more in the future
print(5/(.05-.02))
166.66666666666666
To understand more how the growth rates changes the future value of dividend payments, let's simulate growth rates of 0%, 2%, 4%, 6%, 8%, and 10% applied to a starting dividend of $5 which we can assume is paid at time 0 now when there is a discount rate of 10%.
#Growth rates
growth_rates = [.02*x for x in range(0,6)]
#Years
t = list(range(101))
#Other parameters
r = .1
D0 = 5
#Find the present value of payments for different streams of dividends
dividend_PV = []
for g in growth_rates:
dividend_PV.append([(D0*(1+g)**x)/((1+r)**x) for x in t])
#Plot the results
for d, g in zip(dividend_PV, growth_rates):
plt.plot(t,d,label="g="+str(int(g*100))+"%")
plt.legend()
plt.xlabel("t")
plt.ylabel("Dividend Present Value")
plt.title("Dividend Value with r=10%")
plt.show()
Now we fully see that any time that $g > r$ there is no way for us to use this formula. As a final graphing exercise, let's test the value of the company as the growth rate approaches $g = r$. In this case we will go back to assuming there is a $5 dividend paid starting after a year.
#Define the growth rates
growth_rates = [x/100 for x in range(10)] + [.095, .099]
#Find the values
vals = [5/(.1-g) for g in growth_rates]
#Plot results
plt.plot(growth_rates, vals)
plt.xlabel("g")
plt.ylabel("Stock Value")
plt.title("Stock Value as g Approaches r")
plt.show()
Dividend Yield¶
As a final note, the dividend yield is defined as:
$$ y = \frac{D}{S} $$
where
$ y = \text{Dividend Yield}$
$ D = \text{Dividend}$
$ S = \text{Stock Value}$
For a stock with a $5 dividend, if the value of the company is 50 or the value is 100, we can easily find the dividend yield.
#Find the dividend yields
print(5/50)
print(5/100)
0.1
0.05