|
From: Guowen H. <GH...@dt...> - 2006-07-19 13:15:49
|
Please keep in mind 1. the call schedule does not have to match the coupon schedule, 2. the quoted call price is kind of clean, and 3. the simulated prices are always dirty price and the backward induction values on the tree are kind of dirty price (including accrued interest) So, the call prices are not necessary the paid off price when the calls are exercised. Guowen "Toyin Akin" <toy...@ho...> Sent by: qua...@li... 07/19/2006 03:40 AM To lui...@gm... cc qua...@li..., qua...@li... Subject [Quantlib-users] Pricing Callable Capped Floaters within a HullWhite Tree Hi all, I am looking at the possibility of pricing callable capped floater using QuantLib and it seems like most of the code to price such a product is more or less within Quantlib already (parts of the logic is present in different classes). Basically I want to price, for each period, the following Libor() - Caplet(Libor, X)*Notional*AccuralPeriod , callable @ $Y for each period. This has to be priced via a tree methodology and the Libor() - Cap(Libor, X)*Notional*AccuralPeriod part can be priced by 1) implementing the Libor() pricing via the float leg code that is part of the DiscretizedSwap class 2) implementing the Caplet(Libor, X) pricing via the cap leg code that is part of the DiscretizedCapFloor class Thus these two legs can be pulled out to form a class like the DiscretizedSwaption class. The issue I have is how to price the callable part. Now I have this little description of the callable algorithm from the FinancialCAD web site : ########################################################### The price of a callable capped floater is obtained by building a trinomial interest rate tree, constructing the yield curve on each node of the tree, and re-valuing the capped floater (note) on each node. On nodes that are exercise dates, the price of the note is compared to the call and/or put price(s). If it is possible for the issuer to call, and the call price is less than the note price, then the call option is exercised and the price of the option on that node is the difference between the call price and the note price. If the note is not called and it is possible for the holder to put, and the put price is greater than the note price, then the put option is exercised and the price of the option on that node is the difference between the put price and the note price. The option price is rolled back to earlier nodes on the tree and re-calculated as above depending on whether or not the option is exercised. The option price rolled back to the value date is added to the price of the non-callable capped floater on the value date to get the price of the callable capped floater. ########################################################### My question is regarding the statement " difference between the call price and the note price". Again the note can be computed easily via the "Libor() - Caplet(Libor, X)*Notional*AccuralPeriod" expression. The note is priced backwards in time and each time you step back, an extra coupon period is added onto the note (at each node). The tree that quantlib builds for interest rate pricing (ie - capfloor via tree) assumes that you are standing on the start date of a coupon period (see preAdjustValuesImpl() of the DiscretizedCapFloor() class). Thus you cannot use the regular max(L-X,0) expression to value a cap, but a modified version to take into account that you are standing on the start date of a rate fixing and not the end. Thus, FINALLY!!, the question I am asking : Is there an adjustment that one needs to perform on this "difference between the call price and the note price" because we are standing on the start date of each coupon period. I am making the assumption that the $Y callable price is to be paid at the each of each callable period. Is this the normal convention? Long winded I know...!! Toy out. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ QuantLib-users mailing list Qua...@li... https://lists.sourceforge.net/lists/listinfo/quantlib-users ----------------------------------------- ________________________________________________________ DTCC DISCLAIMER: This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error, please notify us immediately and delete the email and any attachments from your system. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. |