Hi,
I believe that the swap object does not consider the final nominal payments. This should explain the Leg differences but does not explain the NPV difference.
Lluís
On Thu 20/10/11 17:41 , Christian Bøhlke <[hidden email]> wrote:
Thanks Luigi, it works!My approach in pricing the swaps is as follows:
- Pull Euro-swap quotes from Bloomberg and build a Euroswap curve using QLs Bootstrap+Cubic Spline curvebuilding functionality
- Create a swap, for example
- Issue date: 1/4/2008
- Maturity date: 12/9/2034
- Nominal: 16,825,000 EUR
- Swap type: Fixed 4.415% against Euribor 6M ACT/360
- Set Settings::instance().evaluationDate() to 10/19/2011
- Set discountingTermStructure.linkTo to the estimated termstructure
- Set the Missing Euribor6M Actual/360 fixing for June 30th, 2011 to 1.788% using the .addFixing method
- Price the swap using the associated functions
- .NPV()
- .fixedLegNPV()
- .floatingLegNPV()
My problem is that I get NPVs that are way off.
I get
NPV | fixedNPV | floatingNPV
-------------------------------------------------------------
5,426,635.41 | 13,476,292.14 | -8,049,656.74where I would expect something likeNPV | fixedNPV | floatingNPV
-------------------------------------------------------------4,624,679 | 21,463,334 | -16.838.654Can someone help me on what I am conceptually doing wrong?Thanks in advance,Christian BohlkeOn Thu, Oct 20, 2011 at 4:06 PM, Luigi Ballabio <<A href="javascript:top.opencompose('luigi.ballabio@gmail.com','','','')">luigi.ballabio@...> wrote:
You can use the begin() and end() methods to extract iterators from C++
containers such as std::vector.
vector<Date> dates;
vector<Real> fixings;
... (fill the vectors)
index.addFixings(dates.begin(), dates.end(), fixings.begin());
Regards,
Luigi
> ------------------------------------------------------------------------------
On Thu, <A href="tel:2011-10-20" target=_blank value="+4520111020">2011-10-20 at 15:50 +0200, Christian Bøhlke wrote:
> Hi
>
> I am trying to implement the
> swapexample included in
> the quantlib library on some "real"
> data.
>
> I can figure out how to manually
> add a fixing day to an index via
> addFixing. However, due to
> my limited knowledge of templated
> classes, I can not deduce how to
> approach the addFixings method.
>
> That is using template<class
> DateIterator, class ValueIterator>
> on the method
>
> void
> addFixings (DateIterator dBegin,
> DateIterator dEnd, ValueIterator
> vBegin)
>
> If someone could provide an example on how to approach the addFixings
> method I would be very happy.
>
> Thanks in advance,
>
> Christian Bohlke
> The demand for IT networking professionals continues to grow, and the
> demand for specialized networking skills is growing even more rapidly.
> Take a complimentary Learning@Ciosco Self-Assessment and learn
> about Cisco certifications, training, and career opportunities.
> http://p.sf.net/sfu/cisco-dev2dev
> _______________________________________________ QuantLib-users mailing list <A href="javascript:top.opencompose('QuantLib-users@lists.sourceforge.net','','','')">QuantLib-users@... https://lists.sourceforge.net/lists/listinfo/quantlib-users
--
It is better to know some of the questions than all of the answers.
-- James Thurber
------------------------------------------------------------------------------
The demand for IT networking professionals continues to grow, and the
demand for specialized networking skills is growing even more rapidly.
Take a complimentary <A href="javascript:top.opencompose('Learning@Ciosco','','','1')">Learning@Ciosco Self-Assessment and learn
about Cisco certifications, training, and career opportunities.
http://p.sf.net/sfu/cisco-dev2dev
_______________________________________________
QuantLib-users mailing list
<A href="javascript:top.opencompose('QuantLib-users@lists.sourceforge.net','','','1')">QuantLib-users@...
https://lists.sourceforge.net/lists/listinfo/quantlib-users
| Free forum by Nabble | Edit this page |