• All Known Subinterfaces:
CdsConvention, FixedIborSwapConvention, FixedInflationSwapConvention, FixedOvernightSwapConvention, FraConvention, FxSwapConvention, IborFixingDepositConvention, IborFutureConvention, IborIborSwapConvention, OvernightIborSwapConvention, SingleCurrencySwapConvention, TermDepositConvention, ThreeLegBasisSwapConvention, XCcyIborIborSwapConvention
All Known Implementing Classes:
ImmutableCdsConvention, ImmutableFixedIborSwapConvention, ImmutableFixedInflationSwapConvention, ImmutableFixedOvernightSwapConvention, ImmutableFraConvention, ImmutableFxSwapConvention, ImmutableIborFixingDepositConvention, ImmutableIborFutureConvention, ImmutableIborIborSwapConvention, ImmutableOvernightIborSwapConvention, ImmutableTermDepositConvention, ImmutableThreeLegBasisSwapConvention, ImmutableXCcyIborIborSwapConvention

public interface TradeConvention

A convention contains key information that is commonly used in the market. For example, a USD LIBOR forward rate agreement (FRA) will have a day count convention of 'Act/360', spot date offset of T+2 and ISDA discounting.

A convention is typically combined with additional information to form a TradeTemplate, however this is not required. It is often possible to get a market price for a trade based on the template, however it is not possible to obtain a market price for a convention.

Each implementation should provide a method with the name toTrade with whatever arguments are necessary to complete the trade. If there is an associated template, implementations should consider providing a method with the name toTemplate to provide the conversion.

Implementations must be immutable and thread-safe beans.