Class ImmutableFixedIborSwapConvention
- java.lang.Object
-
- com.opengamma.strata.product.swap.type.ImmutableFixedIborSwapConvention
-
- All Implemented Interfaces:
Named,FixedFloatSwapConvention,FixedIborSwapConvention,SingleCurrencySwapConvention,TradeConvention,Serializable,org.joda.beans.Bean,org.joda.beans.ImmutableBean
public final class ImmutableFixedIborSwapConvention extends Object implements FixedIborSwapConvention, org.joda.beans.ImmutableBean, Serializable
A market convention for Fixed-Ibor swap trades.This defines the market convention for a Fixed-Ibor single currency swap. This is often known as a vanilla swap. The convention is formed by combining two swap leg conventions in the same currency.
The convention is defined by four key dates.
- Trade date, the date that the trade is agreed
- Spot date, the base for date calculations, typically 2 business days after the trade date
- Start date, the date on which the interest calculation starts, often the same as the spot date
- End date, the date on which the interest calculation ends, typically a number of years after the start date
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classImmutableFixedIborSwapConvention.BuilderThe bean-builder forImmutableFixedIborSwapConvention.static classImmutableFixedIborSwapConvention.MetaThe meta-bean forImmutableFixedIborSwapConvention.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ImmutableFixedIborSwapConvention.Builderbuilder()Returns a builder used to create an instance of the bean.booleanequals(Object obj)FixedRateSwapLegConventiongetFixedLeg()Gets the market convention of the fixed leg.IborRateSwapLegConventiongetFloatingLeg()Gets the market convention of the floating leg.StringgetName()Gets the convention name, such as 'USD-FIXED-6M-LIBOR-3M'.DaysAdjustmentgetSpotDateOffset()Gets the offset of the spot value date from the trade date.inthashCode()static ImmutableFixedIborSwapConvention.Metameta()The meta-bean forImmutableFixedIborSwapConvention.ImmutableFixedIborSwapConvention.MetametaBean()static ImmutableFixedIborSwapConventionof(String name, FixedRateSwapLegConvention fixedLeg, IborRateSwapLegConvention floatingLeg)Obtains a convention based on the specified name and leg conventions.static ImmutableFixedIborSwapConventionof(String name, FixedRateSwapLegConvention fixedLeg, IborRateSwapLegConvention floatingLeg, DaysAdjustment spotDateOffset)Obtains a convention based on the specified name and leg conventions.ImmutableFixedIborSwapConvention.BuildertoBuilder()Returns a builder that allows this bean to be mutated.StringtoString()SwapTradetoTrade(TradeInfo tradeInfo, LocalDate startDate, LocalDate endDate, BuySell buySell, double notional, double fixedRate)Creates a trade based on this convention.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.opengamma.strata.product.swap.type.FixedIborSwapConvention
calculateSpotDateFromTradeDate, createTrade, createTrade, toTemplate, toTrade
-
-
-
-
Method Detail
-
of
public static ImmutableFixedIborSwapConvention of(String name, FixedRateSwapLegConvention fixedLeg, IborRateSwapLegConvention floatingLeg)
Obtains a convention based on the specified name and leg conventions.The two leg conventions must be in the same currency. The spot date offset is set to be the effective date offset of the index.
- Parameters:
name- the unique name of the conventionfixedLeg- the market convention for the fixed legfloatingLeg- the market convention for the floating leg- Returns:
- the convention
-
of
public static ImmutableFixedIborSwapConvention of(String name, FixedRateSwapLegConvention fixedLeg, IborRateSwapLegConvention floatingLeg, DaysAdjustment spotDateOffset)
Obtains a convention based on the specified name and leg conventions.The two leg conventions must be in the same currency.
- Parameters:
name- the unique name of the conventionfixedLeg- the market convention for the fixed legfloatingLeg- the market convention for the floating legspotDateOffset- the offset of the spot value date from the trade date- Returns:
- the convention
-
toTrade
public SwapTrade toTrade(TradeInfo tradeInfo, LocalDate startDate, LocalDate endDate, BuySell buySell, double notional, double fixedRate)
Description copied from interface:FixedIborSwapConventionCreates a trade based on this convention.This returns a trade based on the specified dates.
The notional is unsigned, with buy/sell determining the direction of the trade. If buying the swap, the floating rate is received from the counterparty, with the fixed rate being paid. If selling the swap, the floating rate is paid to the counterparty, with the fixed rate being received.
- Specified by:
toTradein interfaceFixedIborSwapConvention- Specified by:
toTradein interfaceSingleCurrencySwapConvention- Parameters:
tradeInfo- additional information about the tradestartDate- the start dateendDate- the end datebuySell- the buy/sell flagnotional- the notional amountfixedRate- the fixed rate, typically derived from the market- Returns:
- the trade
-
meta
public static ImmutableFixedIborSwapConvention.Meta meta()
The meta-bean forImmutableFixedIborSwapConvention.- Returns:
- the meta-bean, not null
-
builder
public static ImmutableFixedIborSwapConvention.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public ImmutableFixedIborSwapConvention.Meta metaBean()
- Specified by:
metaBeanin interfaceorg.joda.beans.Bean
-
getName
public String getName()
Gets the convention name, such as 'USD-FIXED-6M-LIBOR-3M'.- Specified by:
getNamein interfaceFixedFloatSwapConvention- Specified by:
getNamein interfaceFixedIborSwapConvention- Specified by:
getNamein interfaceNamed- Specified by:
getNamein interfaceSingleCurrencySwapConvention- Returns:
- the value of the property, not null
-
getFixedLeg
public FixedRateSwapLegConvention getFixedLeg()
Gets the market convention of the fixed leg.- Specified by:
getFixedLegin interfaceFixedFloatSwapConvention- Returns:
- the value of the property, not null
-
getFloatingLeg
public IborRateSwapLegConvention getFloatingLeg()
Gets the market convention of the floating leg.- Specified by:
getFloatingLegin interfaceFixedFloatSwapConvention- Specified by:
getFloatingLegin interfaceFixedIborSwapConvention- Returns:
- the value of the property, not null
-
getSpotDateOffset
public DaysAdjustment getSpotDateOffset()
Gets the offset of the spot value date from the trade date.The offset is applied to the trade date to find the start date. A typical value is "plus 2 business days".
- Specified by:
getSpotDateOffsetin interfaceSingleCurrencySwapConvention- Returns:
- the value of the property, not null
-
toBuilder
public ImmutableFixedIborSwapConvention.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-