Re: Mortgage backed securities [was:Jamshidian engine with start delay]

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Mortgage backed securities [was:Jamshidian engine with start delay]

Luigi Ballabio
Hello,
    there's no support for MBS at this time.  What pricing model do
you have in mind?

Luigi

On Fri, May 17, 2013 at 2:40 PM, Navtej Singh-Riyait
<[hidden email]> wrote:

> Is there a way I can incorporate accrued interest and yield calculations for
> incorporate Mortgaged Backed Securities in QuantLib ?
>
>
>
> From: Ferdinando Ametrano [mailto:[hidden email]]
> Sent: 15 May 2013 09:19
> To: Peter Caspers
> Cc: [hidden email]
> Subject: Re: [Quantlib-dev] Jamshidian engine with start delay
>
>
>
> I'm ok with your extension provided that the new values collapse back to the
> old ones (with a reasonable tolerance) in the case of expiry date being
> equal the value date.
>
> Is the data you've posted related to this case?
>
>
>
> It's a while now I do not work for a vol desk, but I would never
> underestimate the huge difference of analytic vs numerical methods when it
> comes to calibration.
>
>
>
> This said I would also add that I'm always amazed how poor the production
> setup is, even in very sophisticated banks. Old models stick around for very
> long time, just because of the huge effort required to update them in
> production systems. The multi-curve framework updates I've seen so far rival
> with Mary Shelley's Frankenstein approach
>
>
>
>
>
> On Sat, May 11, 2013 at 1:37 PM, Peter Caspers <[hidden email]>
> wrote:
>
> Hello,
>
> in the JamshidianSwaptionEngine the option expiry date and the value date of
> the underlying swap are handled a bit simplified assuming both dates equal
> (see the warning in the code). Though the impact is usually not very big we
> might want to improve this detail in the library ? See below for a possible
> approach. Thank you Sebastian for our discussions on the topic.
>
> Aside I would be interested whether the Jamshidian method is still in use
> for model calibration in the world of multi curve enhanced models (where by
> enhanced I mean something simple like a static spread correction) because I
> believe the generalization of the method to this setting is not
> straightforward. Also I feel that numerical integration does nearly a just
> as efficient and accurate job and it directly allows for multiple curve
> computations. Or do you ignore multi curve in the calibration phase and only
> adjust the curves for the actual pricing ?
>
> Back to Jamshidian and the start delay. Some theoretical background and
> numerical examples can be found here
>
> http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2246054
>
> A possible implementation goes as follows. First we need to provide an
> extended zerobond option method, which we can add to AffineModel in
> model.hpp
>
> https://github.com/pcaspers/quantlib/commit/e16b4ea5ffbfe33bd6acd0ee6cb3ecd8a43f72a4
>
> The default implementation uses the same simplification as mentioned above
> ignoring the bond start delay. To improve the pricing in the
> JamshidianEngine we have to overwrite this method in the model
> implementations for which we want it. For the Hull White model I did it here
>
> https://github.com/pcaspers/quantlib/commit/e8b5912cac2e236fe59a885e8cd1e2ed9243cc47
>
> Finally we have to modify the Jamshidian engine a bit
>
> https://github.com/pcaspers/quantlib/commit/019f37a498846d9a6e89a897300f126c01d6ef86
>
> (maybe we should keep some warning in the code because you are not forced to
> support the start delay in your model implementations)
>
> Not suprisingly the test suite breaks when comparing computation results to
> cached values computed with the simplified engine, so the cached values
> should be updated (given that we believe in the new engine)
>
> 1>  Testing Hull-White calibration against cached values...
> 1>  shortratemodels.cpp(126): error in
> "QuantLib::detail::quantlib_test_case(&ShortRateModelTest::testCachedHullWhite)":
> Failed to reproduce cached calibration results:
> 1>  calculated: a = 0.0464041, sigma = 0.00579912, f(a) = 0.1158,
> 1>  expected:   a = 0.0488565, sigma = 0.00593662, f(a) = 0.121599,
> 1>  difference: a = -0.00245242, sigma = -0.000137495, f(a) = -0.00579896,
> 1>  end criteria = StationaryFunctionValue
>
> regards
>   Peter
>
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and
> their applications. This 200-page book is written by three acclaimed
> leaders in the field. The early access version is available now.
> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
> _______________________________________________
> QuantLib-dev mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
>
>
>
>
> This message is intended only for the stated addressee(s) and may be
> confidential. Access to this email by anyone else is unauthorised. Any
> opinions expressed in this email do not necessarily reflect the opinions of
> Fidessa. Any unauthorised disclosure, use or dissemination, either whole or
> in part is prohibited. If you are not the intended recipient of this
> message, please notify the sender immediately.
> Fidessa plc registered in England and Wales no. 3781700. VAT registration
> no. GB688900878. Registered office - Dukes Court, Duke Street, Woking,
> Surrey, GU21 5BH, UK
> Fidessa buy-side ltd registered in England and Wales no. 3656437. VAT
> registration no. GB688900878. Registered office - Dukes Court, Duke Street,
> Woking, Surrey, GU21 5BH, UK
> Fidessa group plc registered in England and Wales no. 3234176. VAT
> registration no. GB688900878. Registered office - Dukes Court, Duke Street,
> Woking, Surrey, GU21 5BH, UK
>
>
> ------------------------------------------------------------------------------
> AlienVault Unified Security Management (USM) platform delivers complete
> security visibility with the essential security capabilities. Easily and
> efficiently configure, manage, and operate all of your security controls
> from a single console and one unified framework. Download a free trial.
> http://p.sf.net/sfu/alienvault_d2d
> _______________________________________________
> QuantLib-dev mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
Reply | Threaded
Open this post in threaded view
|

Re: Mortgage backed securities [was:Jamshidian engine with start delay]

Luigi Ballabio
So you don't want to model prepayment? Or maybe you model it
elsewhere, and have a forecast stream of notionals? If that's the
case, you can use a simple bond (possibly amortized) as a proxy for
the MBS.

Luigi

[Note: cc'd to the list again, as the issue is of common interest]


On Tue, May 21, 2013 at 5:23 PM, Navtej Singh-Riyait
<[hidden email]> wrote:

> What I am interested in the calculation of accrued interest and price/yield or average yield for MBSs not sophisticated pricing.
>
> -----Original Message-----
> From: Luigi Ballabio [mailto:[hidden email]]
> Sent: 21 May 2013 16:21
> To: Navtej Singh-Riyait
> Cc: [hidden email]
> Subject: Re: [Quantlib-dev] Mortgage backed securities [was:Jamshidian engine with start delay]
>
> Hello,
>     there's no support for MBS at this time.  What pricing model do you have in mind?
>
> Luigi
>
> On Fri, May 17, 2013 at 2:40 PM, Navtej Singh-Riyait <[hidden email]> wrote:
>> Is there a way I can incorporate accrued interest and yield
>> calculations for incorporate Mortgaged Backed Securities in QuantLib ?
>>
>>
>>
>> From: Ferdinando Ametrano [mailto:[hidden email]]
>> Sent: 15 May 2013 09:19
>> To: Peter Caspers
>> Cc: [hidden email]
>> Subject: Re: [Quantlib-dev] Jamshidian engine with start delay
>>
>>
>>
>> I'm ok with your extension provided that the new values collapse back
>> to the old ones (with a reasonable tolerance) in the case of expiry
>> date being equal the value date.
>>
>> Is the data you've posted related to this case?
>>
>>
>>
>> It's a while now I do not work for a vol desk, but I would never
>> underestimate the huge difference of analytic vs numerical methods
>> when it comes to calibration.
>>
>>
>>
>> This said I would also add that I'm always amazed how poor the
>> production setup is, even in very sophisticated banks. Old models
>> stick around for very long time, just because of the huge effort
>> required to update them in production systems. The multi-curve
>> framework updates I've seen so far rival with Mary Shelley's
>> Frankenstein approach
>>
>>
>>
>>
>>
>> On Sat, May 11, 2013 at 1:37 PM, Peter Caspers
>> <[hidden email]>
>> wrote:
>>
>> Hello,
>>
>> in the JamshidianSwaptionEngine the option expiry date and the value
>> date of the underlying swap are handled a bit simplified assuming both
>> dates equal (see the warning in the code). Though the impact is
>> usually not very big we might want to improve this detail in the
>> library ? See below for a possible approach. Thank you Sebastian for our discussions on the topic.
>>
>> Aside I would be interested whether the Jamshidian method is still in
>> use for model calibration in the world of multi curve enhanced models
>> (where by enhanced I mean something simple like a static spread
>> correction) because I believe the generalization of the method to this
>> setting is not straightforward. Also I feel that numerical integration
>> does nearly a just as efficient and accurate job and it directly
>> allows for multiple curve computations. Or do you ignore multi curve
>> in the calibration phase and only adjust the curves for the actual pricing ?
>>
>> Back to Jamshidian and the start delay. Some theoretical background
>> and numerical examples can be found here
>>
>> http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2246054
>>
>> A possible implementation goes as follows. First we need to provide an
>> extended zerobond option method, which we can add to AffineModel in
>> model.hpp
>>
>> https://github.com/pcaspers/quantlib/commit/e16b4ea5ffbfe33bd6acd0ee6c
>> b3ecd8a43f72a4
>>
>> The default implementation uses the same simplification as mentioned
>> above ignoring the bond start delay. To improve the pricing in the
>> JamshidianEngine we have to overwrite this method in the model
>> implementations for which we want it. For the Hull White model I did
>> it here
>>
>> https://github.com/pcaspers/quantlib/commit/e8b5912cac2e236fe59a885e8c
>> d1e2ed9243cc47
>>
>> Finally we have to modify the Jamshidian engine a bit
>>
>> https://github.com/pcaspers/quantlib/commit/019f37a498846d9a6e89a89730
>> 0f126c01d6ef86
>>
>> (maybe we should keep some warning in the code because you are not
>> forced to support the start delay in your model implementations)
>>
>> Not suprisingly the test suite breaks when comparing computation
>> results to cached values computed with the simplified engine, so the
>> cached values should be updated (given that we believe in the new
>> engine)
>>
>> 1>  Testing Hull-White calibration against cached values...
>> 1>  shortratemodels.cpp(126): error in
>> "QuantLib::detail::quantlib_test_case(&ShortRateModelTest::testCachedHullWhite)":
>> Failed to reproduce cached calibration results:
>> 1>  calculated: a = 0.0464041, sigma = 0.00579912, f(a) = 0.1158,
>> 1>  expected:   a = 0.0488565, sigma = 0.00593662, f(a) = 0.121599,
>> 1>  difference: a = -0.00245242, sigma = -0.000137495, f(a) =
>> 1> -0.00579896,  end criteria = StationaryFunctionValue
>>
>> regards
>>   Peter
>>
>>
>> ----------------------------------------------------------------------
>> -------- Learn Graph Databases - Download FREE O'Reilly Book "Graph
>> Databases" is the definitive new guide to graph databases and their
>> applications. This 200-page book is written by three acclaimed leaders
>> in the field. The early access version is available now.
>> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
>> _______________________________________________
>> QuantLib-dev mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>
>>
>>
>>
>>
>> This message is intended only for the stated addressee(s) and may be
>> confidential. Access to this email by anyone else is unauthorised. Any
>> opinions expressed in this email do not necessarily reflect the
>> opinions of Fidessa. Any unauthorised disclosure, use or
>> dissemination, either whole or in part is prohibited. If you are not
>> the intended recipient of this message, please notify the sender immediately.
>> Fidessa plc registered in England and Wales no. 3781700. VAT
>> registration no. GB688900878. Registered office - Dukes Court, Duke
>> Street, Woking, Surrey, GU21 5BH, UK Fidessa buy-side ltd registered
>> in England and Wales no. 3656437. VAT registration no. GB688900878.
>> Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21
>> 5BH, UK Fidessa group plc registered in England and Wales no. 3234176.
>> VAT registration no. GB688900878. Registered office - Dukes Court,
>> Duke Street, Woking, Surrey, GU21 5BH, UK
>>
>>
>> ----------------------------------------------------------------------
>> -------- AlienVault Unified Security Management (USM) platform
>> delivers complete security visibility with the essential security
>> capabilities. Easily and efficiently configure, manage, and operate
>> all of your security controls from a single console and one unified
>> framework. Download a free trial.
>> http://p.sf.net/sfu/alienvault_d2d
>> _______________________________________________
>> QuantLib-dev mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>
>
>
> This message is intended only for the stated addressee(s) and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of Fidessa. Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
> Fidessa plc registered in England and Wales no. 3781700. VAT registration no. GB688900878. Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21 5BH, UK
> Fidessa buy-side ltd registered in England and Wales no. 3656437. VAT registration no. GB688900878. Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21 5BH, UK
> Fidessa group plc registered in England and Wales no. 3234176. VAT registration no. GB688900878. Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21 5BH, UK

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
Reply | Threaded
Open this post in threaded view
|

Re: Mortgage backed securities [was:Jamshidian engine with start delay]

nriyait
Yes we do want to model the prepayments using PSA. Also want to implement PACs and TACs.

-----Original Message-----
From: Luigi Ballabio [mailto:[hidden email]]
Sent: 21 May 2013 16:27
To: Navtej Singh-Riyait; [hidden email]
Subject: Re: [Quantlib-dev] Mortgage backed securities [was:Jamshidian engine with start delay]

So you don't want to model prepayment? Or maybe you model it elsewhere, and have a forecast stream of notionals? If that's the case, you can use a simple bond (possibly amortized) as a proxy for the MBS.

Luigi

[Note: cc'd to the list again, as the issue is of common interest]


On Tue, May 21, 2013 at 5:23 PM, Navtej Singh-Riyait <[hidden email]> wrote:

> What I am interested in the calculation of accrued interest and price/yield or average yield for MBSs not sophisticated pricing.
>
> -----Original Message-----
> From: Luigi Ballabio [mailto:[hidden email]]
> Sent: 21 May 2013 16:21
> To: Navtej Singh-Riyait
> Cc: [hidden email]
> Subject: Re: [Quantlib-dev] Mortgage backed securities [was:Jamshidian
> engine with start delay]
>
> Hello,
>     there's no support for MBS at this time.  What pricing model do you have in mind?
>
> Luigi
>
> On Fri, May 17, 2013 at 2:40 PM, Navtej Singh-Riyait <[hidden email]> wrote:
>> Is there a way I can incorporate accrued interest and yield
>> calculations for incorporate Mortgaged Backed Securities in QuantLib ?
>>
>>
>>
>> From: Ferdinando Ametrano [mailto:[hidden email]]
>> Sent: 15 May 2013 09:19
>> To: Peter Caspers
>> Cc: [hidden email]
>> Subject: Re: [Quantlib-dev] Jamshidian engine with start delay
>>
>>
>>
>> I'm ok with your extension provided that the new values collapse back
>> to the old ones (with a reasonable tolerance) in the case of expiry
>> date being equal the value date.
>>
>> Is the data you've posted related to this case?
>>
>>
>>
>> It's a while now I do not work for a vol desk, but I would never
>> underestimate the huge difference of analytic vs numerical methods
>> when it comes to calibration.
>>
>>
>>
>> This said I would also add that I'm always amazed how poor the
>> production setup is, even in very sophisticated banks. Old models
>> stick around for very long time, just because of the huge effort
>> required to update them in production systems. The multi-curve
>> framework updates I've seen so far rival with Mary Shelley's
>> Frankenstein approach
>>
>>
>>
>>
>>
>> On Sat, May 11, 2013 at 1:37 PM, Peter Caspers
>> <[hidden email]>
>> wrote:
>>
>> Hello,
>>
>> in the JamshidianSwaptionEngine the option expiry date and the value
>> date of the underlying swap are handled a bit simplified assuming
>> both dates equal (see the warning in the code). Though the impact is
>> usually not very big we might want to improve this detail in the
>> library ? See below for a possible approach. Thank you Sebastian for our discussions on the topic.
>>
>> Aside I would be interested whether the Jamshidian method is still in
>> use for model calibration in the world of multi curve enhanced models
>> (where by enhanced I mean something simple like a static spread
>> correction) because I believe the generalization of the method to
>> this setting is not straightforward. Also I feel that numerical
>> integration does nearly a just as efficient and accurate job and it
>> directly allows for multiple curve computations. Or do you ignore
>> multi curve in the calibration phase and only adjust the curves for the actual pricing ?
>>
>> Back to Jamshidian and the start delay. Some theoretical background
>> and numerical examples can be found here
>>
>> http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2246054
>>
>> A possible implementation goes as follows. First we need to provide
>> an extended zerobond option method, which we can add to AffineModel
>> in model.hpp
>>
>> https://github.com/pcaspers/quantlib/commit/e16b4ea5ffbfe33bd6acd0ee6
>> c
>> b3ecd8a43f72a4
>>
>> The default implementation uses the same simplification as mentioned
>> above ignoring the bond start delay. To improve the pricing in the
>> JamshidianEngine we have to overwrite this method in the model
>> implementations for which we want it. For the Hull White model I did
>> it here
>>
>> https://github.com/pcaspers/quantlib/commit/e8b5912cac2e236fe59a885e8
>> c
>> d1e2ed9243cc47
>>
>> Finally we have to modify the Jamshidian engine a bit
>>
>> https://github.com/pcaspers/quantlib/commit/019f37a498846d9a6e89a8973
>> 0
>> 0f126c01d6ef86
>>
>> (maybe we should keep some warning in the code because you are not
>> forced to support the start delay in your model implementations)
>>
>> Not suprisingly the test suite breaks when comparing computation
>> results to cached values computed with the simplified engine, so the
>> cached values should be updated (given that we believe in the new
>> engine)
>>
>> 1>  Testing Hull-White calibration against cached values...
>> 1>  shortratemodels.cpp(126): error in
>> "QuantLib::detail::quantlib_test_case(&ShortRateModelTest::testCachedHullWhite)":
>> Failed to reproduce cached calibration results:
>> 1>  calculated: a = 0.0464041, sigma = 0.00579912, f(a) = 0.1158,
>> 1>  expected:   a = 0.0488565, sigma = 0.00593662, f(a) = 0.121599,
>> 1>  difference: a = -0.00245242, sigma = -0.000137495, f(a) =
>> 1> -0.00579896,  end criteria = StationaryFunctionValue
>>
>> regards
>>   Peter
>>
>>
>> ---------------------------------------------------------------------
>> -
>> -------- Learn Graph Databases - Download FREE O'Reilly Book "Graph
>> Databases" is the definitive new guide to graph databases and their
>> applications. This 200-page book is written by three acclaimed
>> leaders in the field. The early access version is available now.
>> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
>> _______________________________________________
>> QuantLib-dev mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>
>>
>>
>>
>>
>> This message is intended only for the stated addressee(s) and may be
>> confidential. Access to this email by anyone else is unauthorised.
>> Any opinions expressed in this email do not necessarily reflect the
>> opinions of Fidessa. Any unauthorised disclosure, use or
>> dissemination, either whole or in part is prohibited. If you are not
>> the intended recipient of this message, please notify the sender immediately.
>> Fidessa plc registered in England and Wales no. 3781700. VAT
>> registration no. GB688900878. Registered office - Dukes Court, Duke
>> Street, Woking, Surrey, GU21 5BH, UK Fidessa buy-side ltd registered
>> in England and Wales no. 3656437. VAT registration no. GB688900878.
>> Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21
>> 5BH, UK Fidessa group plc registered in England and Wales no. 3234176.
>> VAT registration no. GB688900878. Registered office - Dukes Court,
>> Duke Street, Woking, Surrey, GU21 5BH, UK
>>
>>
>> ---------------------------------------------------------------------
>> -
>> -------- AlienVault Unified Security Management (USM) platform
>> delivers complete security visibility with the essential security
>> capabilities. Easily and efficiently configure, manage, and operate
>> all of your security controls from a single console and one unified
>> framework. Download a free trial.
>> http://p.sf.net/sfu/alienvault_d2d
>> _______________________________________________
>> QuantLib-dev mailing list
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>
>
>
> This message is intended only for the stated addressee(s) and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of Fidessa. Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
> Fidessa plc registered in England and Wales no. 3781700. VAT
> registration no. GB688900878. Registered office - Dukes Court, Duke
> Street, Woking, Surrey, GU21 5BH, UK Fidessa buy-side ltd registered
> in England and Wales no. 3656437. VAT registration no. GB688900878.
> Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21
> 5BH, UK Fidessa group plc registered in England and Wales no. 3234176.
> VAT registration no. GB688900878. Registered office - Dukes Court,
> Duke Street, Woking, Surrey, GU21 5BH, UK

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
Reply | Threaded
Open this post in threaded view
|

Re: Mortgage backed securities [was:Jamshidian engine with start delay]

Luigi Ballabio
If your model lets you forecast a series of notionals, you might try
using the classes in <ql/experimental/amortizingbonds/>.  I'm not sure
how far they can go as a proxy for MBS, but they might be a starting
point of sorts that you can modify to include additional features you
need.

Luigi


On Tue, May 21, 2013 at 6:11 PM, Navtej Singh-Riyait
<[hidden email]> wrote:

> Yes we do want to model the prepayments using PSA. Also want to implement PACs and TACs.
>
> -----Original Message-----
> From: Luigi Ballabio [mailto:[hidden email]]
> Sent: 21 May 2013 16:27
> To: Navtej Singh-Riyait; [hidden email]
> Subject: Re: [Quantlib-dev] Mortgage backed securities [was:Jamshidian engine with start delay]
>
> So you don't want to model prepayment? Or maybe you model it elsewhere, and have a forecast stream of notionals? If that's the case, you can use a simple bond (possibly amortized) as a proxy for the MBS.
>
> Luigi
>
> [Note: cc'd to the list again, as the issue is of common interest]
>
>
> On Tue, May 21, 2013 at 5:23 PM, Navtej Singh-Riyait <[hidden email]> wrote:
>> What I am interested in the calculation of accrued interest and price/yield or average yield for MBSs not sophisticated pricing.
>>
>> -----Original Message-----
>> From: Luigi Ballabio [mailto:[hidden email]]
>> Sent: 21 May 2013 16:21
>> To: Navtej Singh-Riyait
>> Cc: [hidden email]
>> Subject: Re: [Quantlib-dev] Mortgage backed securities [was:Jamshidian
>> engine with start delay]
>>
>> Hello,
>>     there's no support for MBS at this time.  What pricing model do you have in mind?
>>
>> Luigi
>>
>> On Fri, May 17, 2013 at 2:40 PM, Navtej Singh-Riyait <[hidden email]> wrote:
>>> Is there a way I can incorporate accrued interest and yield
>>> calculations for incorporate Mortgaged Backed Securities in QuantLib ?
>>>
>>>
>>>
>>> From: Ferdinando Ametrano [mailto:[hidden email]]
>>> Sent: 15 May 2013 09:19
>>> To: Peter Caspers
>>> Cc: [hidden email]
>>> Subject: Re: [Quantlib-dev] Jamshidian engine with start delay
>>>
>>>
>>>
>>> I'm ok with your extension provided that the new values collapse back
>>> to the old ones (with a reasonable tolerance) in the case of expiry
>>> date being equal the value date.
>>>
>>> Is the data you've posted related to this case?
>>>
>>>
>>>
>>> It's a while now I do not work for a vol desk, but I would never
>>> underestimate the huge difference of analytic vs numerical methods
>>> when it comes to calibration.
>>>
>>>
>>>
>>> This said I would also add that I'm always amazed how poor the
>>> production setup is, even in very sophisticated banks. Old models
>>> stick around for very long time, just because of the huge effort
>>> required to update them in production systems. The multi-curve
>>> framework updates I've seen so far rival with Mary Shelley's
>>> Frankenstein approach
>>>
>>>
>>>
>>>
>>>
>>> On Sat, May 11, 2013 at 1:37 PM, Peter Caspers
>>> <[hidden email]>
>>> wrote:
>>>
>>> Hello,
>>>
>>> in the JamshidianSwaptionEngine the option expiry date and the value
>>> date of the underlying swap are handled a bit simplified assuming
>>> both dates equal (see the warning in the code). Though the impact is
>>> usually not very big we might want to improve this detail in the
>>> library ? See below for a possible approach. Thank you Sebastian for our discussions on the topic.
>>>
>>> Aside I would be interested whether the Jamshidian method is still in
>>> use for model calibration in the world of multi curve enhanced models
>>> (where by enhanced I mean something simple like a static spread
>>> correction) because I believe the generalization of the method to
>>> this setting is not straightforward. Also I feel that numerical
>>> integration does nearly a just as efficient and accurate job and it
>>> directly allows for multiple curve computations. Or do you ignore
>>> multi curve in the calibration phase and only adjust the curves for the actual pricing ?
>>>
>>> Back to Jamshidian and the start delay. Some theoretical background
>>> and numerical examples can be found here
>>>
>>> http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2246054
>>>
>>> A possible implementation goes as follows. First we need to provide
>>> an extended zerobond option method, which we can add to AffineModel
>>> in model.hpp
>>>
>>> https://github.com/pcaspers/quantlib/commit/e16b4ea5ffbfe33bd6acd0ee6
>>> c
>>> b3ecd8a43f72a4
>>>
>>> The default implementation uses the same simplification as mentioned
>>> above ignoring the bond start delay. To improve the pricing in the
>>> JamshidianEngine we have to overwrite this method in the model
>>> implementations for which we want it. For the Hull White model I did
>>> it here
>>>
>>> https://github.com/pcaspers/quantlib/commit/e8b5912cac2e236fe59a885e8
>>> c
>>> d1e2ed9243cc47
>>>
>>> Finally we have to modify the Jamshidian engine a bit
>>>
>>> https://github.com/pcaspers/quantlib/commit/019f37a498846d9a6e89a8973
>>> 0
>>> 0f126c01d6ef86
>>>
>>> (maybe we should keep some warning in the code because you are not
>>> forced to support the start delay in your model implementations)
>>>
>>> Not suprisingly the test suite breaks when comparing computation
>>> results to cached values computed with the simplified engine, so the
>>> cached values should be updated (given that we believe in the new
>>> engine)
>>>
>>> 1>  Testing Hull-White calibration against cached values...
>>> 1>  shortratemodels.cpp(126): error in
>>> "QuantLib::detail::quantlib_test_case(&ShortRateModelTest::testCachedHullWhite)":
>>> Failed to reproduce cached calibration results:
>>> 1>  calculated: a = 0.0464041, sigma = 0.00579912, f(a) = 0.1158,
>>> 1>  expected:   a = 0.0488565, sigma = 0.00593662, f(a) = 0.121599,
>>> 1>  difference: a = -0.00245242, sigma = -0.000137495, f(a) =
>>> 1> -0.00579896,  end criteria = StationaryFunctionValue
>>>
>>> regards
>>>   Peter
>>>
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> -------- Learn Graph Databases - Download FREE O'Reilly Book "Graph
>>> Databases" is the definitive new guide to graph databases and their
>>> applications. This 200-page book is written by three acclaimed
>>> leaders in the field. The early access version is available now.
>>> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
>>> _______________________________________________
>>> QuantLib-dev mailing list
>>> [hidden email]
>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>
>>>
>>>
>>>
>>>
>>> This message is intended only for the stated addressee(s) and may be
>>> confidential. Access to this email by anyone else is unauthorised.
>>> Any opinions expressed in this email do not necessarily reflect the
>>> opinions of Fidessa. Any unauthorised disclosure, use or
>>> dissemination, either whole or in part is prohibited. If you are not
>>> the intended recipient of this message, please notify the sender immediately.
>>> Fidessa plc registered in England and Wales no. 3781700. VAT
>>> registration no. GB688900878. Registered office - Dukes Court, Duke
>>> Street, Woking, Surrey, GU21 5BH, UK Fidessa buy-side ltd registered
>>> in England and Wales no. 3656437. VAT registration no. GB688900878.
>>> Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21
>>> 5BH, UK Fidessa group plc registered in England and Wales no. 3234176.
>>> VAT registration no. GB688900878. Registered office - Dukes Court,
>>> Duke Street, Woking, Surrey, GU21 5BH, UK
>>>
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> -------- AlienVault Unified Security Management (USM) platform
>>> delivers complete security visibility with the essential security
>>> capabilities. Easily and efficiently configure, manage, and operate
>>> all of your security controls from a single console and one unified
>>> framework. Download a free trial.
>>> http://p.sf.net/sfu/alienvault_d2d
>>> _______________________________________________
>>> QuantLib-dev mailing list
>>> [hidden email]
>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>
>>
>>
>> This message is intended only for the stated addressee(s) and may be confidential. Access to this email by anyone else is unauthorised. Any opinions expressed in this email do not necessarily reflect the opinions of Fidessa. Any unauthorised disclosure, use or dissemination, either whole or in part is prohibited. If you are not the intended recipient of this message, please notify the sender immediately.
>> Fidessa plc registered in England and Wales no. 3781700. VAT
>> registration no. GB688900878. Registered office - Dukes Court, Duke
>> Street, Woking, Surrey, GU21 5BH, UK Fidessa buy-side ltd registered
>> in England and Wales no. 3656437. VAT registration no. GB688900878.
>> Registered office - Dukes Court, Duke Street, Woking, Surrey, GU21
>> 5BH, UK Fidessa group plc registered in England and Wales no. 3234176.
>> VAT registration no. GB688900878. Registered office - Dukes Court,
>> Duke Street, Woking, Surrey, GU21 5BH, UK

------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev