The FpML specifications provided are without warranty of any kind, either expressed or implied, including, without limitation, warranties that FpML, or the FpML specifications are free of defects, merchantable, fit for a particular purpose or non-infringing. The entire risk as to the quality and performance of the specifications is with you. Should any of the FpML specifications prove defective in any respect, you assume the cost of any necessary servicing or repair. Under no circumstances and under no legal theory, whether tort (including negligence), contract, or otherwise, shall ISDA, any of its members, or any distributor of documents or software containing any of the FpML specifications, or any supplier of any of such parties, be liable to you or any other person for any indirect, special, incidental, or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses, even if such party shall have been informed of the possibility of such damages.
This is the FpML 5.5 Recommendation for review by the public and by FpML members and working groups.
The FpML Working Groups encourage reviewing organizations to provide feedback as early as possible. Comments on this document should be sent by filling in the form at the following link: http://www.fpml.org/issues. An archive of the comments is available at http://www.fpml.org/issues/
There are also asset class-specific mailing lists; you can join them at the following link:
Standard Product Components. (standardProduct-Standard products - for use in Transparency reporting to define a product that represents a standardized OTC derivative transaction whose economics do not need to be fully described using an FpML schema because they are implied by the product ID. In other views, standard products are present for convenience to support internal messaging and workflows that are cross-product. Standard products are not full trade representations as such they are not intended to be used for confirming trades.
)
Generic Product Components (genericProduct-Generic products - for use in Transparency reporting to define a product that represents an OTC derivative transaction whose economics are not fully described using an FpML schema. In other views, generic products are present for convenience to support internal messaging and workflows that are cross-product. Generic products are not full trade representations as such they are not intended to be used for confirming trades.
)
Most diagrams in this specification come from TIBCO's XML Turbo application which is used to batch generate the pictures in the documentation. The notation follows the pattern:
No bubble indicates a mandatory element or attribute
A '?' indicates an optional element or attribute
A '*' indicates an occurrence of zero or many
A '+' indicates an occurrence of one or many
A '..' bubble with numbers above and below indicates specific range
A '1' in a bubble indicates the presence of a nested sequence or choice group
Diagonal lines indicate a choice group (< shape)
Non-diagonal lines indicate a sequence ([ shape)
A 'D' in a bubble indicates an attribute with a default value
The Financial Products Markup Language (FpML) is the industry standard enabling e-business activities in the field of financial derivatives and structured products. The development of the standard, controlled by ISDA (the International Swaps and Derivatives Association), will ultimately allow the electronic integration of a range of services, from electronic trading and confirmations to portfolio specification for risk analysis. All types of over-the-counter (OTC) derivatives will, over time, be incorporated into the standard.
FpML is an application of XML, an internet standard language for describing data shared between computer applications.
The FpML Reporting Working Group has defined two new views, "Transparency" and "Recordkeeping", to support parties and execution facilities reporting trading activity into Swaps Data Repositories (SDRs), as required by the Commodities Futures Trading Commission's 17 CFR 43 and 45, and similar requirements from the Securities and Exchange Commission in 17 CFR 240. The FpML Standards Committee invites comments on the proposed materials including schemas, examples, and documentation.
In WD#2, a number of new products have been added to Transparency view. The changes versus Confirmation view have been modeled on other products in WD#1, but the product representations have not yet been reviewed in detail in the working group. The FpML Reporting Working Group invites feedback on the detailed contents in Transparency view of any product.
1.5.2 Message Framework/Correlation ID
The FpML Business Process Working Group has adjusted the multiplicity of the correlation IDs and is seeking feedback on this change. In particular, is there a need for multiple correlation IDs if the correlation ID on original requests is made optional?
1.5.3 Providing Feedback
Comments on this document should be sent by filling in the form at the following link: http://www.fpml.org/issues.
1.6.2 Incompatible changes compared to FpML 5.4 - build#5
Generic Product:
In Confirmation, Reporting, Recordkeeping and Transparency Views - > fpml-generic.xsd-> "GenericProduct": Removed "dayCountFraction" element. Rationale: The "dayCountFraction" element was moved to the "underlyer" component (placed within "TradeUnderlyer2").Part 43 requires reporting on both the fixed as well as floating leg for the dayCountFraction element. Part 43 requires reporting on both the fixed as well as floating leg for the dayCountFraction element. The Standards committee approved the removal with the assumption that it would not break any critical implementation.
CorrelationId:
In Confirmation, Reporting, Recordkeeping and Transparency Views - > fpml-msg.xsd - > within "CorrelationId": replaced the base class "xsd:normalizedString" with “Scheme” which restricts the "xsd:normalizedString" to maxLength value="255".
Commodity Derivatives:
Recordkeeping View –> fpml-com-xsd -> within "SettlementPeriods" complex type: the "startDate" element's status changed from "optional" to "mandatory". Rational:Fix - to prevent the submission of the "endDate" without the "startDate". The change was agreed by the Commodity WG and approved by the Standards Committee (March-11-2013)
1.6.3 Changes compared to FpML 5.4 Recommendation
All Views (except: Pretrade View):
Regulatory Reporting:
Added several new fields, coding schemes, and examples to support ESMA regulatory reporting, including:
party/region field
partyTradeInformation/collateralPortfolio identifier field
partyTradeInformation/reportingRegime/exceedsClearingThreshold boolean field
European regulatory region coding scheme
enhanced the ReportingRole coding scheme
ESMA organization classification scheme
Refactored the Generic Product
It includes one incompatible change:
In fpml-generic.xsd-> "GenericProduct": Removed "dayCountFraction" element. Rationale: The "dayCountFraction" element was moved to the "underlyer" component (placed within "TradeUnderlyer2").Part 43 requires reporting on both the fixed as well as floating leg for the dayCountFraction element. Part 43 requires reporting on both the fixed as well as floating leg for the dayCountFraction element. The Standards committee approved the removal with the assumption that it would not break any critical implementation.
Added support for EMIR in generic product for Commodities, Equities, FX.
Refactored Fx Option Barrier and Fx Digital Option:
Within "FxBarrierFeature" and "FxTouch", added support the MT306 and the ISDA confirmation templates which require the specification of the "observationStartTime" and "observationEndTime for a barrier in terms of the business center and time, in addition to the observationStartDate" and "observationEndDate".
Within "FxBarrierFeature" and "FxTouch", added a choice between the above structure and a new element "observationPoint" of a new type "FxBusinessCenterDateTime", a collection of observationPoint elements, with individual observation times.
Within "FxOption" -> "FxOptionFeatures" -> "FxBarrierFeature", added a new field "direction" of a new type "FxBarrierDirectionEnum". This specifies whether the barrier direction is "Up" or "Down"; that is, that a barrier event occurs if the spot rate is at or above the trigger rate, or at or below the trigger rate during the period of observation of an american barrier, or at the times of observation of a discrete or european barrier. This change is to comply with Dodd-Frank reporting requirements.
Within "FxDigitalOption" -> "FxTouch", added a new field "direction" of type "TriggerConditionEnum". This specifies whether the trigger direction is "AtOrAbove" or "AtOrBelow; that is, that a barrier event occurs if the spot rate is at or above the trigger rate, or at or below the trigger rate during the period of observation of an american trigger, or at the times of observation of a discrete trigger. Note: within "TriggerConditionEnum", values "Above" and "Below" are deprecated. This change is to comply with Dodd-Frank reporting requirements.
Within exiting "TriggerConditionEnum" structure (used with FxDigitalOption-> "FxTrigger" and FxTouch), added new values "AtOrAbove" and "AtOrBelow", deprecated existing values "Above" and "Below".
Within existing "FxBarrierTypeEnum" structure (used with FxOption-> "FxBarrierFeature"), deprecated values "ReverseKnockin" and "ReverseKnockout".
Within "Trade" added support for "barrierDeterminationAgent" - the party referenced is specified in the related Confirmation as Barrier Determination Agent
Equity Derivatives:
Additions based on the trading firms' requirements:
Added support for value "Both" (Both parties with joined rights to be a calculation agent) to "CalculationAgentPartyEnum".
Refactored "CalculationFromObservation" complex type, to support Initial Level Source in Variance and Correlation Swaps.
Updated several coding schemes: localJurisdictionScheme, determinationMethodScheme, instrumentIdScheme
Some of the previously agreed on the Standards Committee none-backward compatible changes to FpML 5-3 in Equity Transparency and Recordkeeping view have been reverted by the Standards Committee on April 08, 2013.
Commodity Derivatives:
Added Support for Gold Interest Rate Swap (Official Name: Gold Forward Offered Rate) representation in FpML
Added support for ESMA regulatory reporting
Border (Gas and Electricity "deliveryConditions/interconnectionPoint").
In Transparency View - > foml-ird.xsd -> "SettlementProvision": added element "settlementCurrency" ofType "Currency" as a mandatory field. Rationale: Requires for regulatory reporting of Non Deliverable Currencies. The Standards committee approved the addition of the "settlementCurrency" on March 11, 2013.
Within "Fra": "fixedRate" element's type changed from "xsd:decimal" to "IdentifiedRate". Rationale: Fix.
Added support for FRA's fees and additional payments.
Listed Derivatives Reporting:
Added several new components and examples to support ESMA regulatory reporting, including:
Added "holding" structure to position/constituent for securities position reporting.
Added examples of reporting securities activity and position
Added examples of reporting securities market data
Added several new components and examples to support regulatory reporting for commodities, including:
Added a new Exchange Traded Option asset underlyer and added an example.
Updated the Future underlyer and added an example.
Business Process:
Added support for Equity Corporate Action and Basket Change events. Refactored Events.model
In Confirmation, Reporting, Recordkeeping, Transparency Views (Incompatible changes) - > fpml-msg.xsd - > within "CorrelationId": replaced the base class "xsd:normalizedString" with “Scheme” which restricts the "xsd:normalizedString" to maxLength value="255".
Increase and Termination events: Refactored TradeNotionalChange to correct two modeling issues. The refactoring provides a backward compatible path; a choice between the old structures (TradeNotionalChange.model) and enhanced structures (sizeChange). The sizeChange wrapper relates pairs of elements (e.g., notionalAmount/outstandingNotionalAmount). Using the new model:
The reporting of both change of units and change of notional amount is now possible (as required for dividend swaps, for example)
Linking notionals with product legs is now possible. An additional optional empty element (e.g., notionalReference) within the sizeChange wrapper links the pair of elements to a specific underlying leg reference using an @href attribute.
Within TradeNotionalChange, deprecated change in/outstanding notional, number of options, number of units in favor of a more flexible structure (sizeChange) that allows linking notionals with product legs as well the reporting of both change of units or change of notional amount as required for dividend swaps, for example.
LSOC Reporting: Enhanced the requestCollateralAllocation message with a requestedAction element which allows FCMs to specify how the allocations are to be processed (e.g., Update, Reset).
Added support for ESMA entity type classification (e.g. Financial, NonFinanacial)in the reportingRegime structure
The scope of FpML 5.5 includes broadened BusinessProcess/Messaging coverage and additional product support, specifically:
1.7.1 Architecture Framework
The various Working Groups have developed FpML 5.5 within the FpML Architecture 3.0 Specification defined by the Architecture Working Group. This document defines that standards and principles on which the FpML grammatical definitions are based.
The FpML Architecture 3.0 builds upon the earlier FpML Architecture specifications and the conventions of FpML 1.02b before that. The refinement of the FpML architecture is an evolutionary process bought about by changes in the XML technology upon which it is based and the requirements of the standard as its scope expands.
1.7.2 Business Process Scope
The FpML Messaging Task Force group was formed to define a new messaging framework in 5.x that insures consistent processes across trades and post-trade events, observable completion, consistent message correlation, consistent error reporting, consistent correction and retraction.
Most of the FpML 5 business processes are “generic” processes that can apply to new trades and/or any post-trade events. This means that the message name indicates the business process (e.g. confirmation, execution notification, etc.) but not the type of event (e.g. trade, amendment, etc.). The payload of the message indicates the type of the event.
The business processes currently supported in this view include:
All the processes described in this section are applied to the following events:
trade
novation
increase
termination
amendment
option exercise / option expiry
deClear
basketChange
corporateAction
indexChange
To support these business processes, a number of messages have been defined. Please see the "Business Process Architecture" section for more information.
1.7.3 IRD Scope
In FpML 5.5 Recommendation the following Interest Rate Derivative products are covered:
Single and Cross-Currency Interest Rate Swap
Forward Rate Agreement
Interest Rate Cap
Interest Rate Floor
Interest Rate Swaption (European, Bermuda and American Styles; Cash and Physical Settlement)
Extendible and Cancelable Interest Rate Swap Provisions
1.7.4 Credit Derivatives Scope
In FpML 5.5 Recommendation the following Credit Derivative products are covered:
Credit Default Swap
Standard Coupon Credit Default Swap
Credit Default Swap Index
Tranche on Credit Default Swap Index
Credit Default Swap on a Mortgage
Credit Default Swap on a Loan
1.7.5 FX Scope
The Scope of FpML 5.5 Recommendation includes redesigned FX product model developed by the
Modeling Task Force (MTF) and FX Working Group to make it more consistent with other FpML
product representations and to facilitate its further development. As a result of this work
many of an original 4.x model’s issues were addressed:
A number of sets of reusable components that facilitates product development were
defined, so that the existing and future FX products will leverage these building blocks
to ensure the FX model is coherent and easy to maintain, as per FpML best practices
Extended the existing coverage to include Dual Currency Deposits and FX Flexible Forward.
Rationalized the models' constraints:
Made use of grammar to bring related data together.
Made better use of XML schema to simplify the validation rules.
In FpML 5.5 Recommendation the following FX products are covered:
Basic FX Products
FX Spot, FX Forward (including non-deliverable settlements, or NDFs) and FX Flexible Forward.
FX Swap
Simple FX Option Products (including, features, cash and physical settlement)
FX options
European and American
1.7.6 Return Swaps Scope
FpML provides generic Return Swaps support including "long form" Equity Swap representations, as well as Total Return Swaps. A separate product element called equitySwapTransactionSupplement supports "short form" Equity Swap Transaction Supplement.
Return-type Swaps have 1-to-many Legs, all of which must be derived from the ReturnSwapLeg type. Instances of Legs are returnLeg, interestLeg. Other Leg types may be derived from ReturnSwapLeg at will, to allow for private extensions to support whatever type of Generic Return Swap is desired.
The scope of this FpML representation for return swaps is to capture the following types of swaps that have equity-related underlyers:
Single stock swaps as well as basket swaps (i.e. swaps with multiple underlyers);
Swaps that have a different types of underlying assets (equity, index, mutual funds, exchange-traded funds, convertible bond, futures), or a combination of these;
2-legged swaps with a combination of an equity leg and a funding leg, as well as swaps that either have only one leg (e.g. fully funded or zero-strike swap) or multiple equity legs (e.g. outperformance swaps);
Total Return Swaps, a type of swap in which one party (total return payer) transfers the total economic performance of a reference obligation to the other party (total return receiver).
1.7.7 Variance Derivatives Scope
The Equity Derivative Working Group extended FpML to cover:
Variance Swaps, a type of volatility swap where the payout is linear to variance rather than volatility, therefore the payout will rise at a higher rate than volatility;
Short Form Variance Options represented also as Transaction Supplements under ISDA Master Confirmation Agreements.
1.7.8 Commodity Derivative Product Scope
The Commodities Working Group will extend the FpML standard to include trade types and products for the OTC commodities markets, following the structure and coverage of the 2005 ISDA Commodity Definitions. The following are included in version 5-5:
Support for financially settled swaps, options and spreads
Support for physically-settled swaps/forwards, options
Natural Gas, Oil, Electricity, Coal, Metal, Environmental as the underlying Commodity product
Producers of FpML documents intended for interchange with other parties must encode such documents using either UTF-8 or UTF-16. Consumers of FpML documents must be able to process documents encoded using UTF-8, as well as documents encoded using UTF-16. For more information, see
Certain elements and attributes (such as scheme URIs) are defined with more restrictive types, such as xsd:normalizedString, xsd:token, or xsd:anyURI. For these types, please see the relevant data type definition in the XML Schema datatypes specification:
The schema files and examples in this document have been validated with XercesJ (v.2.2.1 and v.2.6.2) and HandCoded's Toolkit for FpML Processing (version Java 1.1 Alpha 2).