/** * Copyright (C) 2015 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.strata.product; /** * A market convention for trades. * <p> * 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. * <p> * A convention is typically combined with additional information to form a {@link 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. * <p> * Each implementation should provide a method with the name {@code 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 {@code toTemplate} to provide the conversion. * <p> * Implementations must be immutable and thread-safe beans. */ public interface TradeConvention { }