|
From: Roland L. <Rol...@we...> - 2006-07-18 11:55:56
|
Hello all, the QuantLib test-suite (capfloor.cpp) checks that the put/call parity (capNPV - floorNPV = swapNPV) holds. It seems to me that this test is passed successfully only as long as one chooses term structure daycount Actual360(), see function setup() in capfloor.cpp. After setting this to e.g. ActualActual(ActualActual::ISDA) and keeping anything else unchanged, the test suite fails with the following messages .. Running 236 test cases... capfloor.cpp(283): fatal error in "CapFloorTest::testParity": put/call parity violated: length: 1 years volatility: 1.000000 % strike: 3.000000 % cap value: 2.01507 floor value: 0 swap value: 1.94683 .. because the cap price is overstated. I assume that the term structure daycounter should not have this effect on pricing results. Shouldn't it be arbitrary? Would you please have a quick look and correct me if I am wrong. I noticed this while building a small caplet volatility bootstrap tool that I'd like to contribute (eventually) if there is any interest. Many thanks for your efforts, Roland Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! *http://smartsurfer.web.de/?mc=100071&distributionid=000000000071* [http://smartsurfer.web.de/?mc=100071&distributionid=000000000071] |