public final class DsfSecurity extends Object implements Security, org.joda.beans.ImmutableBean, Serializable
A deliverable swap future is a financial instrument that physically settles an interest rate swap on a future date. The delivered swap is cleared by a central counterparty. The last future price before delivery is quoted in term of the underlying swap present value. The futures product is margined on a daily basis.
(100 + percentPv), or 0.182% in this example.
Strata uses decimal prices for DSFs in the trade model, pricers and market data. The decimal price is based on the decimal multiplier equivalent to the implied percentage. Thus the market price of 100.182 is represented in Strata by 1.00182.
| Modifier and Type | Class and Description |
|---|---|
static class |
DsfSecurity.Builder
The bean-builder for
DsfSecurity. |
static class |
DsfSecurity.Meta
The meta-bean for
DsfSecurity. |
| Modifier and Type | Method and Description |
|---|---|
static DsfSecurity.Builder |
builder()
Returns a builder used to create an instance of the bean.
|
DsfPosition |
createPosition(PositionInfo positionInfo,
double longQuantity,
double shortQuantity,
ReferenceData refData)
Creates a position based on this security from a long and short quantity.
|
DsfPosition |
createPosition(PositionInfo positionInfo,
double quantity,
ReferenceData refData)
Creates a position based on this security from a net quantity.
|
Dsf |
createProduct(ReferenceData refData)
Creates the product associated with this security.
|
DsfTrade |
createTrade(TradeInfo info,
double quantity,
double tradePrice,
ReferenceData refData)
Creates a trade based on this security.
|
boolean |
equals(Object obj) |
Currency |
getCurrency()
Gets the currency that the security is traded in.
|
SecurityInfo |
getInfo()
Gets the standard security information.
|
LocalDate |
getLastTradeDate()
Gets the last date of trading.
|
double |
getNotional()
Gets the notional.
|
ImmutableSet<SecurityId> |
getUnderlyingIds()
Gets the set of underlying security identifiers.
|
Swap |
getUnderlyingSwap()
Gets the underlying swap.
|
int |
hashCode() |
static DsfSecurity.Meta |
meta()
The meta-bean for
DsfSecurity. |
DsfSecurity.Meta |
metaBean() |
DsfSecurity.Builder |
toBuilder()
Returns a builder that allows this bean to be mutated.
|
String |
toString() |
DsfSecurity |
withInfo(SecurityInfo info)
Returns an instance with the specified info.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitgetSecurityIdpublic Currency getCurrency()
SecuritygetCurrency in interface Securitypublic ImmutableSet<SecurityId> getUnderlyingIds()
SecurityThe set must contain all the security identifiers that this security directly refers to. For example, a bond future will return the identifiers of the underlying basket of bonds, but a bond future option will only return the identifier of the underlying future, not the basket.
getUnderlyingIds in interface Securitypublic DsfSecurity withInfo(SecurityInfo info)
Securitypublic Dsf createProduct(ReferenceData refData)
SecurityThe product of a security is distinct from the security. The product includes the financial details from this security, but excludes the additional information. The product also includes the products of any underlying securities.
createProduct in interface SecurityrefData - the reference data used to find underlying securitiespublic DsfTrade createTrade(TradeInfo info, double quantity, double tradePrice, ReferenceData refData)
SecurityThis creates a trade of a suitable type for this security.
createTrade in interface Securityinfo - the trade informationquantity - the number of contracts in the tradetradePrice - the price agreed when the trade occurredrefData - the reference data used to find underlying securitiespublic DsfPosition createPosition(PositionInfo positionInfo, double quantity, ReferenceData refData)
SecurityThis creates a position of a suitable type for this security.
createPosition in interface SecuritypositionInfo - the position informationquantity - the number of contracts in the positionrefData - the reference data used to find underlying securitiespublic DsfPosition createPosition(PositionInfo positionInfo, double longQuantity, double shortQuantity, ReferenceData refData)
SecurityThis creates a position of a suitable type for this security.
The long quantity and short quantity must be zero or positive, not negative.
createPosition in interface SecuritypositionInfo - the position informationlongQuantity - the long quantity in the positionshortQuantity - the short quantity in the positionrefData - the reference data used to find underlying securitiespublic static DsfSecurity.Meta meta()
DsfSecurity.public static DsfSecurity.Builder builder()
public DsfSecurity.Meta metaBean()
metaBean in interface org.joda.beans.Beanpublic SecurityInfo getInfo()
This includes the security identifier.
public double getNotional()
This is also called face value or contract value.
public LocalDate getLastTradeDate()
This date must be before the delivery date of the underlying swap.
public Swap getUnderlyingSwap()
The delivery date of the future is the start date of the swap. The swap must be a single currency swap with a notional of 1. There must be two legs, the fixed leg must be received and the floating rate must be paid.
public DsfSecurity.Builder toBuilder()
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.