Computational Methods in Finance, Fall 1998
Assignment 1.
Given September 8, due September 22.
Objective: To explore dynamic programming.
This is a qualitative model. It is unrealistic in several ways in order to be as simple as possible. We suppose that a floating interest rate fluctuates between and (annualized). Now it is . Each week it may move up or down by , except that it is blocked from moving outside its range. It moves in either direction with probability 1/3 and remains unchanged with this probability. All movements are independent. This interest rate is R(t). A loan of is to be repaid in 250 weeks. Each week, we add some interest and make a payment. If our interest rate at week t is r(t), and the outstanding balance is B(t), then, at week t we first add interest, replacing B(t) by . Next we make a prorated payment, . This leaves . Our interest rate is determined as follows. At week 0, . However, r(t) remains fixed until we ``refinance''. Whenever we refinence, r(t) is replaced by R(t). We are allowed to refinance up to four times during this 250 week period. We want to do so so to minimize our total expected payments, . Set this up as a dynamic programming problem. Identify the state space. Write a computer program to solve it by dynamic programming.
Programming tip of the day: Don't hard code numbers such as 52, 4, and 250. It is not more efficient amd makes the code hard to test.
Guidelines for good homeworks: