@@ -152,7 +152,6 @@ $$ (eq:apdb_sol)
152152
153153Here is a small example, where the dividend stream is given by
154154
155- +++
156155
157156```{code-cell} ipython3
158157T = 6
@@ -202,18 +201,80 @@ b = np.zeros(T+1)
202201b[-1] = δ * p_star
203202p = np.linalg.solve(A, d + b)
204203fig, ax = plt.subplots()
205- ax.plot(p)
204+ ax.plot(p, 'o', label='asset price')
205+ ax.legend()
206+ ax.set_xlabel('time')
206207plt.show()
207208```
208209
209- +++
210210
211+ We can also consider a cyclically growing dividend sequence, such as
212+
213+
214+ ```{code-cell} ipython3
215+ T = 100
216+ current_d = 1.0
217+ d = []
218+ for t in range(T+1):
219+ d.append(current_d)
220+ current_d = current_d * 1.01 + 0.1 * np.sin(t)
221+
222+ fig, ax = plt.subplots()
223+ ax.plot(d, 'o-', ms=4, alpha=0.8, label='dividends')
224+ ax.legend()
225+ ax.set_xlabel('time')
226+ plt.show()
227+ ```
228+
229+ ```{exercise-start}
230+ :label: pv_ex_cyc
231+ ```
232+
233+ Compute the corresponding asset price sequence when $p^*_{T+1} = 0$ and $\delta
234+ = 0.98$.
235+
236+ ```{exercise-end}
237+ ```
238+
239+ ```{solution-start} pv_ex_cyc
240+ :class: dropdown
241+ ```
242+
243+ We proceed as above after modifying parameters and $A$.
244+
245+ ```{code-cell} ipython3
246+ δ = 0.98
247+ p_star = 0.0
248+ A = np.zeros((T+1, T+1))
249+ for i in range(T+1):
250+ for j in range(T+1):
251+ if i == j:
252+ A[i, j] = 1
253+ if j < T:
254+ A[i, j+1] = -δ
255+
256+ b = np.zeros(T+1)
257+ b[-1] = δ * p_star
258+ p = np.linalg.solve(A, d + b)
259+ fig, ax = plt.subplots()
260+ ax.plot(p, 'o-', ms=4, alpha=0.8, label='asset price')
261+ ax.legend()
262+ ax.set_xlabel('time')
263+ plt.show()
264+
265+ ```
266+
267+ The weighted averaging associated with the present value calculation largely
268+ eliminates the cycles.
269+
270+
271+ ```{solution-end}
272+ ```
211273
212274## Analytical Expressions
213275
214276It can be verified that the inverse of the matrix $A$ in {eq}`eq:pieq` is
215277
216- +++
217278
218279$$ A^{-1} =
219280 \begin{bmatrix}
323384p_t = c \delta^{-t}
324385$$ (eq:bubble)
325386
326- +++
327387
328388## Gross rate of return
329389
341401R_t = \delta^{-1} > 1 .
342402$$
343403
344- +++
345404
346- <!-- #endregion -->
405+ ## Exercises
347406
348- ## Experiments
349407
350- We'll try various settings for $\vec d, p_{T+1}^*$:
408+ ```{exercise-start}
409+ :label: pv_ex_a
410+ ```
351411
352- * $p_{T+1}^* = 0, d_t = g^t d_0$ to get a modified version of the Gordon growth formula
353-
354- * $p_{T+1}^* = g^{T+1} d_0, d_t = g^t d_0$ to get the plain vanilla Gordon growth formula
355-
356- * $p_{T+1}^* = 0, d_t = 0$ to get a worthless stock
357-
358- * $p_{T+1}^* = c \delta^{-(T+1)}, d_t = 0$ to get a bubble stock
412+ Give analytical expressions for the asset price $p_t$ under the
413+ following settings for $d$ and $p_{T+1}^*$:
414+
415+ 1. $p_{T+1}^* = 0, d_t = g^t d_0$ (a modified version of the Gordon growth formula)
416+ 1. $p_{T+1}^* = g^{T+1} d_0, d_t = g^t d_0$ (the plain vanilla Gordon growth formula)
417+ 1. $p_{T+1}^* = 0, d_t = 0$ (price of a worthless stock)
418+ 1. $p_{T+1}^* = c \delta^{-(T+1)}, d_t = 0$ (price of a pure bubble stock)
419+
420+
421+ ```{exercise-end}
422+ ```
0 commit comments