public final class ResolvedCms extends Object implements ResolvedProduct, org.joda.beans.ImmutableBean, Serializable
This is the resolved form of Cms and is an input to the pricers.
Applications will typically create a ResolvedCms from a Cms
using Cms.resolve(ReferenceData).
A ResolvedCms is bound to data that changes over time, such as holiday calendars.
If the data changes, such as the addition of a new holiday, the resolved form will not be updated.
Care must be taken when placing the resolved form in a cache or persistence layer.
| Modifier and Type | Class and Description |
|---|---|
static class |
ResolvedCms.Meta
The meta-bean for
ResolvedCms. |
| Modifier and Type | Method and Description |
|---|---|
ImmutableSet<Currency> |
allPaymentCurrencies()
Returns the set of currencies referred to by the CMS.
|
boolean |
equals(Object obj) |
ResolvedCmsLeg |
getCmsLeg()
Gets the CMS leg of the product.
|
Optional<ResolvedSwapLeg> |
getPayLeg()
Gets the optional pay leg of the product.
|
int |
hashCode() |
static ResolvedCms.Meta |
meta()
The meta-bean for
ResolvedCms. |
ResolvedCms.Meta |
metaBean() |
static ResolvedCms |
of(ResolvedCmsLeg cmsLeg)
Obtains an instance from a CMS leg with no pay leg.
|
static ResolvedCms |
of(ResolvedCmsLeg cmsLeg,
ResolvedSwapLeg payLeg)
Obtains an instance from a CMS leg and a pay leg.
|
String |
toString() |
public static ResolvedCms of(ResolvedCmsLeg cmsLeg)
The pay leg is absent in the resulting CMS.
cmsLeg - the CMS legpublic static ResolvedCms of(ResolvedCmsLeg cmsLeg, ResolvedSwapLeg payLeg)
cmsLeg - the CMS legpayLeg - the pay legpublic ImmutableSet<Currency> allPaymentCurrencies()
This returns the complete set of payment currencies for the CMS. This will typically return one currency, but could return two.
public static ResolvedCms.Meta meta()
ResolvedCms.public ResolvedCms.Meta metaBean()
metaBean in interface org.joda.beans.Beanpublic ResolvedCmsLeg getCmsLeg()
This is associated with periodic payments based on swap rate. The payments are CMS coupons, CMS caplets or CMS floors.
public Optional<ResolvedSwapLeg> getPayLeg()
Typically this is associated with periodic fixed or Ibor rate payments without compounding or notional exchange.
These periodic payments are not made for certain CMS products. Instead the premium is paid upfront.
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.