• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Portfolio of stocks, bonds and cash

Joined
3/26/14
Messages
1
Points
11
Hello all,

First of all some background on what I am trying to do:

I am trying to write an algorithm that determines the optimal investment in stocks, bonds and cash, when the stock prices are driven by a Black-Scholes SDE

dS_t = S_t (r_t + eta_S) dt + sigma_S dW_S(t)

and the short rate is modelled by a Vasicek process

dr_t = k(theta-r_t) dt + sigma_r dW_r(t),

where the instantaneous correlation <dW_s, dW_r> = rho*dt. (see e.g. Sorensen (1999) http://www.jstor.org/discover/10.2307/2676232?uid=3738736&uid=2&uid=4&sid=21103740219987 , in this article this kind of model is used.)

In this article it is also shown that there is an analytic solution, but I am trying to do this numerically, so that I can later add stochastic income (then there is no analytic solution available). I am trying to use the Monte Carlo regression method as introduced by Brandt et al. (2005). I found a nice application of this method here http://citeseerx.ist.psu.edu/viewdo...62BB5694?doi=10.1.1.80.9158&rep=rep1&type=pdf .

I simulate the S and r processes (in discrete time) by solving the SDE's analytically. In the dynamic programming approach, I need to calculate the excess returns on bonds and stocks, to relate the wealth at some time t to the wealth at time t-1.
I am wondering how I should calculate the excess return on bonds (and what kind of bond I should take in the first place). Since in the one-factor Vasicek model there is perfect correlation between bonds of different maturities, I think the maturity is not important (?). Anyway, fix the maturity at some time T, and denote the bond price at time t of maturity T as P(t,T,r(t)), where r denotes the short rate. Then I thought the excess return on bonds in the period [s,t] can be calculated by

P(t,T,r(t)) / P(s,T,r(s)) - exp(r(s)*dt) ,

where the bond price formula P is well known in the literature.

However, in my simulation this sometimes leads to negative excess returns on bonds on average. While, according to Sorensen (1999), the excess returns are given by lambda_r B(t,T) > 0. This means there must be something going wrong.

If somebody sees what's going wrong or has some general advice, it is greatly appreciated. If any additional information is needed, then I can provide it.

Regards,

Nimzo
 
Back
Top