http://www.fpml.org/spec/fpml-4-3-9-tr-1
http://www.fpml.org/spec/fpml-4-3-9-tr-1
http://www.fpml.org/spec/2007/lcwd-fpml-4-3-2007-10-30/
http://www.fpml.org/spec/fpml-4-3-9-tr-1/html/fpml-4-3-errata.html
Document built: Mon 01/14/2008 12:55:45.20
Copyright (c) 1999 - 2006 by INTERNATIONAL SWAPS AND DERIVATIVES ASSOCIATION, INC.
Financial Products Markup Language is subject to the FpML public license
A copy of this license is available at http://www.fpml.org/documents/license.html
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.
Reference to an underlying asset, term point or pricing structure (yield curve).
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="AssetOrTermPointOrPricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to an underlying asset, term point or pricing structure (yield curve). </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A structure that holds a set of measures about an asset.
Inherited element(s): (This definition inherits the content defined by the type Valuation)
quote (one or more occurrences; of the type BasicQuotation)
<xsd:complexType name="BasicAssetValuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A structure that holds a set of measures about an asset. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Valuation"> <xsd:sequence> <xsd:element name="quote" type="BasicQuotation" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> One or more numerical measures relating to the asset, possibly together with sensitivities of that measure to pricing inputs </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
The type defining a denominator term of the formula. Its value is (sum of weighted partials) ^ power.
weightedPartial (exactly one occurrence; of the type WeightedPartialDerivative)
power (exactly one occurrence; of the type xsd:positiveInteger)
<xsd:complexType name="DenominatorTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type defining a denominator term of the formula. Its value is (sum of weighted partials) ^ power. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="weightedPartial" type="WeightedPartialDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative multiplied by a weighting factor. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="power" type="xsd:positiveInteger"> <xsd:annotation> <xsd:documentation xml:lang="en"> The power to which this term is raised. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
The method by which a derivative is computed.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: derivativeCalculationMethodScheme (xsd:anyURI)
<xsd:complexType name="DerivativeCalculationMethod"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The method by which a derivative is computed. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="derivativeCalculationMethodScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/derivative-calculation-method-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A description of how a numerical derivative is computed.
method (zero or one occurrence; of the type DerivativeCalculationMethod)
<xsd:complexType name="DerivativeCalculationProcedure"> <xsd:annotation> <xsd:documentation xml:lang="en"> A description of how a numerical derivative is computed. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="method" type="DerivativeCalculationMethod" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which a derivative is computed, e.g. analytic, numerical model, perturbation, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="DerivativeCalculationParameters.model" minOccurs="0"/> </xsd:sequence> </xsd:complexType>
A formula for computing a complex derivative from partial derivatives. Its value is the sum of the terms divided by the product of the denominator terms.
term (exactly one occurrence; of the type FormulaTerm)
denominatorTerm (exactly one occurrence; of the type DenominatorTerm)
<xsd:complexType name="DerivativeFormula"> <xsd:annotation> <xsd:documentation xml:lang="en"> A formula for computing a complex derivative from partial derivatives. Its value is the sum of the terms divided by the product of the denominator terms. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="term" type="FormulaTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="denominatorTerm" type="DenominatorTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A denominator term of the formula. Its value is (sum of weighted partials) ^ power. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
A type defining a term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives.
coefficient (exactly one occurrence; of the type xsd:decimal)
partialDerivativeReference (one or more occurrences; of the type PricingParameterDerivativeReference)
<xsd:complexType name="FormulaTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining a term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="coefficient" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The coefficient by which this term is multiplied, typically 1 or -1. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="partialDerivativeReference" type="PricingParameterDerivativeReference" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the partial derivative. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
A generic (user defined) dimension, e.g. for use in a correlation surface. e.g. a currency, stock, etc. This would take values like USD, GBP, JPY, or IBM, MSFT, etc.
Inherited element(s): (This definition inherits the content defined by the type xsd:string)
Attribute: name (xsd:normalizedString) - required
Attribute: href (xsd:IDREF)
<xsd:complexType name="GenericDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A generic (user defined) dimension, e.g. for use in a correlation surface. e.g. a currency, stock, etc. This would take values like USD, GBP, JPY, or IBM, MSFT, etc. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="name" type="xsd:normalizedString" use="required"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the dimension. E.g.: "Currency", "Stock", "Issuer", etc. </xsd:documentation> </xsd:annotation> </xsd:attribute> <xsd:attribute name="href" type="xsd:IDREF" ecore:reference="Asset"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to an instrument (e.g. currency) that this value represents. </xsd:documentation> </xsd:annotation> </xsd:attribute> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A collection of instruments usable for quotation purposes. In future releases, quotable derivative assets may be added after the underlying asset.
A collection of underlying assets (bonds, discount instruments, futures, etc.) that can be used as a basis for benchmark quotes. underlyingAsset (zero or more occurrences; of the type Asset)
<xsd:complexType name="InstrumentSet"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of instruments usable for quotation purposes. In future releases, quotable derivative assets may be added after the underlying asset. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element ref="underlyingAsset" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of underlying assets (bonds, discount instruments, futures, etc.) that can be used as a basis for benchmark quotes. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
A collection of pricing inputs.
name (zero or one occurrence; of the type xsd:string)
benchmarkQuotes (zero or one occurrence; of the type QuotedAssetSet)
A collection of pricing inputs (curves, volatility matrices, etc.) used to represent the market. pricingStructure (zero or more occurrences; of the type PricingStructure)
The values of the pricing structure used to represent the markets.. pricingStructureValuation (zero or more occurrences; of the type PricingStructureValuation)
benchmarkPricingMethod (zero or more occurrences; of the type PricingMethod)
Attribute: id (xsd:ID)
<xsd:complexType name="Market"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of pricing inputs. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the market, e.g. the USDLIBOR market. Used for description and understandability. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="benchmarkQuotes" type="QuotedAssetSet" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of benchmark instruments and quotes used as inputs to the pricing models. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="pricingStructure" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of pricing inputs (curves, volatility matrices, etc.) used to represent the market. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="pricingStructureValuation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The values of the pricing structure used to represent the markets.. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="benchmarkPricingMethod" type="PricingMethod" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The pricing structure used to quote a benchmark instrument. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
Reference to a market structure.
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="MarketReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a market structure. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="Market"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
The type of perturbation applied to compute a derivative perturbatively.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: perturbationTypeScheme (xsd:anyURI)
<xsd:complexType name="PerturbationType"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The type of perturbation applied to compute a derivative perturbatively. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="perturbationTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/perturbation-type-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A unique identifier for the position. The id attribute is defined for intradocument referencing.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: positionIdScheme (xsd:anyURI)
Attribute: id (xsd:ID)
<xsd:complexType name="PositionId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier for the position. The id attribute is defined for intradocument referencing. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="positionIdScheme" type="xsd:anyURI"/> <xsd:attribute name="id" type="xsd:ID"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
A set of index values that identify a pricing data point. For example: (strike = 17%, expiration = 6M, term = 1Y.
term (exactly one occurrence; of the type TimeDimension)
Or
expiration (exactly one occurrence; of the type TimeDimension)
Or
strike (exactly one occurrence; of the type xsd:decimal)
Or
generic (exactly one occurrence; of the type GenericDimension)
Attribute: id (xsd:ID)
<xsd:complexType name="PricingDataPointCoordinate"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of index values that identify a pricing data point. For example: (strike = 17%, expiration = 6M, term = 1Y. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:group ref="PricingStructureIndex.model" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
Reference to a Pricing Data Point Coordinate.
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="PricingDataPointCoordinateReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a Pricing Data Point Coordinate. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="PricingDataPointCoordinate"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
The substitution of a pricing input (e.g. curve) for another, used in generating prices and risks for valuation scenarios.
originalInputReference (exactly one occurrence; of the type PricingStructureReference)
replacementInputReference (exactly one occurrence; of the type PricingStructureReference)
<xsd:complexType name="PricingInputReplacement"> <xsd:annotation> <xsd:documentation xml:lang="en"> The substitution of a pricing input (e.g. curve) for another, used in generating prices and risks for valuation scenarios. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="originalInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the original value of the pricing input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="replacementInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the substitution to do. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
The type of pricing structure represented.
Inherited element(s): (This definition inherits the content defined by the type xsd:normalizedString)
Attribute: pricingInputTypeScheme (xsd:anyURI)
<xsd:complexType name="PricingInputType"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The type of pricing structure represented. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="pricingInputTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/pricing-input-type-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType>
For an asset (e.g. a reference/benchmark asset), the pricing structure used to price it. Used, for example, to specify that the rateIndex "USD-LIBOR-Telerate" with term = 6M is priced using the "USD-LIBOR-Close" curve.
assetReference (exactly one occurrence; of the type AnyAssetReference)
pricingInputReference (exactly one occurrence; of the type PricingStructureReference)
<xsd:complexType name="PricingMethod"> <xsd:annotation> <xsd:documentation xml:lang="en"> For an asset (e.g. a reference/benchmark asset), the pricing structure used to price it. Used, for example, to specify that the rateIndex "USD-LIBOR-Telerate" with term = 6M is priced using the "USD-LIBOR-Close" curve. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="assetReference" type="AnyAssetReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> The asset whose price is required. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input used to value the asset. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
A definition of the mathematical derivative with respect to a specific pricing parameter.
description (zero or one occurrence; of the type xsd:string)
parameterReference (zero or one occurrence; of the type AssetOrTermPointOrPricingStructureReference)
Or
inputDateReference (one or more occurrences; of the type ValuationReference)
calculationProcedure (zero or one occurrence; of the type DerivativeCalculationProcedure)
Attribute: id (xsd:ID)
<xsd:complexType name="PricingParameterDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A definition of the mathematical derivative with respect to a specific pricing parameter. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="description" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A description, if needed, of how the derivative is computed. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:choice> <xsd:element name="parameterReference" type="AssetOrTermPointOrPricingStructureReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input parameter to which the sensitivity is computed. If it is omitted, the derivative definition is generic, and applies to any input point in the valuation set. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="inputDateReference" type="ValuationReference" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference(s) to the pricing input dates that are shifted when the sensitivity is computed. Depending on the time advance method used, this list could vary. Used for describing time-advance derivatives (theta, carry, etc.) </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:choice> <xsd:element name="calculationProcedure" type="DerivativeCalculationProcedure" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which a derivative is computed, e.g. analytic, numerical model, perturbation, etc., and the corresponding parameters </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
Reference to a partial derivative.
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="PricingParameterDerivativeReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a partial derivative. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="PricingParameterDerivative"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A definition of a shift with respect to a specific pricing parameter.
parameterReference (exactly one occurrence; of the type AssetOrTermPointOrPricingStructureReference)
shift (exactly one occurrence; of the type xsd:decimal)
shiftUnits (zero or one occurrence; of the type PriceQuoteUnits)
Attribute: id (xsd:ID)
<xsd:complexType name="PricingParameterShift"> <xsd:annotation> <xsd:documentation xml:lang="en"> A definition of a shift with respect to a specific pricing parameter. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="parameterReference" type="AssetOrTermPointOrPricingStructureReference"/> <xsd:element name="shift" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size of the denominator, e.g. 0.0001 = 1 bp. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="shiftUnits" type="PriceQuoteUnits" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The units of the denominator, e.g. currency. If not present, use the units of the PricingInputReference. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
An abstract pricing structure valuation base type. Used as a base for values of pricing structures such as yield curves and volatility matrices. Derived from the "Valuation" type.
Inherited element(s): (This definition inherits the content defined by the type Valuation)
baseDate (exactly one occurrence; of the type IdentifiedDate)
spotDate (zero or one occurrence; of the type IdentifiedDate)
inputDataDate (zero or one occurrence; of the type IdentifiedDate)
endDate (zero or one occurrence; of the type IdentifiedDate)
buildDateTime (zero or one occurrence; of the type xsd:dateTime)
<xsd:complexType name="PricingStructureValuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> An abstract pricing structure valuation base type. Used as a base for values of pricing structures such as yield curves and volatility matrices. Derived from the "Valuation" type. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Valuation"> <xsd:sequence> <xsd:group ref="PricingInputDates.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The relevant dates for a pricing structure - what is applies to, when it was built, etc. </xsd:documentation> </xsd:annotation> </xsd:group> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A collection of quoted assets.
instrumentSet (zero or one occurrence; of the type InstrumentSet)
assetQuote (zero or more occurrences; of the type BasicAssetValuation)
<xsd:complexType name="QuotedAssetSet"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of quoted assets. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="instrumentSet" type="InstrumentSet" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of instruments used as a basis for quotation. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="assetQuote" type="BasicAssetValuation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of valuations (quotes) for the assets needed in the set. Normally these quotes will be for the underlying assets listed above, but they don't necesarily have to be. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
A set of characteristics describing a sensitivity
name (zero or one occurrence; of the type xsd:string)
valuationScenarioReference (zero or one occurrence; of the type ValuationScenarioReference)
Attribute: id (xsd:ID)
<xsd:complexType name="SensitivityDefinition"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of characteristics describing a sensitivity </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the derivative, e.g. first derivative, Hessian, etc. Typically not required, but may be used to explain more complex derivative calculations. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to the valuation scenario to which this sensitivity definition applies. If the SensitivityDefinition occurs within a SensitivitySetDefinition, this is not required and normally not used. In this case, if it is supplied it overrides the valuationScenarioReference in the SensitivitySetDefinition. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:choice> <xsd:group ref="ComputedDerivative.model"/> <xsd:group ref="SensitivityDescription.model"/> </xsd:choice> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
A sensitivity report definition, consisting of a collection of sensitivity definitions.
name (zero or one occurrence; of the type xsd:string)
sensitivityCharacteristics (zero or one occurrence; of the type QuotationCharacteristics)
valuationScenarioReference (zero or one occurrence; of the type ValuationScenarioReference)
pricingInputType (zero or one occurrence; of the type PricingInputType)
pricingInputReference (zero or one occurrence; of the type PricingStructureReference)
scale (exactly one occurrence; of the type xsd:decimal)
sensitivityDefinition (zero or more occurrences; of the type SensitivityDefinition)
calculationProcedure (zero or one occurrence; of the type DerivativeCalculationProcedure)
Attribute: id (xsd:ID)
<xsd:complexType name="SensitivitySetDefinition"> <xsd:annotation> <xsd:documentation xml:lang="en"> A sensitivity report definition, consisting of a collection of sensitivity definitions. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the sensitivity set definition, e.g. "USDLIBOR curve sensitivities". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sensitivityCharacteristics" type="QuotationCharacteristics" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The default characteristics of the quotation, e.g. type, units, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to the valuation scenario to which this sensitivity definition applies, e.g. a reference to the EOD valuation scenario. If not supplied, this sensitivity set definition is generic to a variety of valuation scenarios. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputType" type="PricingInputType" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type of the pricing input to which the sensitivity is shown, e.g. a yield curve or volatility matrix. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputReference" type="PricingStructureReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input to which the sensitivity is shown, e.g. a reference to a USDLIBOR yield curve. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="scale" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size of the denominator, e.g. 0.0001 = 1 bp. For derivatives with respect to time, the default period is 1 day. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sensitivityDefinition" type="SensitivityDefinition" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of sensitivity definitions. Either one per point reported, or one generic definition that applies to all points. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="calculationProcedure" type="DerivativeCalculationProcedure" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which each derivative is computed, e.g. analytic, numerical model, perturbation, etc., and the corresponding parameters (eg. shift amounts). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
The time dimensions of a term-structure. The user must supply either a tenor or a date or both.
tenor (exactly one occurrence; of the type Interval)
<xsd:complexType name="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> The time dimensions of a term-structure. The user must supply either a tenor or a date or both. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="tenor" type="Interval"> <xsd:annotation> <xsd:documentation xml:lang="en"> The amount of time from the base date of the pricing input to the specified term point, e.g. 6M or 5Y. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:sequence> <xsd:element name="date" type="xsd:date"> <xsd:annotation> <xsd:documentation xml:lang="en"> The absolute date corresponding to this term point, for example January 3, 2005. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="tenor" type="Interval" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The amount of time from the base date of the pricing input to the specified term point, e.g. 6M or 5Y. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:choice> </xsd:complexType>
A valuation of an valuable object - an asset or a pricing input. This is an abstract type, used as a base for values of pricing structures such as yield curves as well as asset values.
objectReference (zero or one occurrence; of the type AnyAssetReference)
valuationScenarioReference (zero or one occurrence; of the type ValuationScenarioReference)
Attribute: id (xsd:ID)
Attribute: definitionRef (xsd:IDREF)
<xsd:complexType name="Valuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A valuation of an valuable object - an asset or a pricing input. This is an abstract type, used as a base for values of pricing structures such as yield curves as well as asset values. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="objectReference" type="AnyAssetReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the asset or pricing structure that this values. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the valuation scenario used to calculate this valuation. If the Valuation occurs within a ValuationSet, this value is optional and is defaulted from the ValuationSet. If this value occurs in both places, the lower level value (i.e. the one here) overrides that in the higher (i.e. ValuationSet). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> <xsd:attribute name="definitionRef" type="xsd:IDREF" ecore:reference="ValuationScenario"> <xsd:annotation> <xsd:documentation xml:lang="en"> An optional reference to the scenario that this valuation applies to. </xsd:documentation> </xsd:annotation> </xsd:attribute> </xsd:complexType>
Reference to a Valuation or any derived structure such as PricingStructureValuation.
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="ValuationReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a Valuation or any derived structure such as PricingStructureValuation. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="Valuation"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A set of rules for generating a valuation.
name (zero or one occurrence; of the type xsd:string)
valuationDate (exactly one occurrence; of the type IdentifiedDate)
marketReference (zero or one occurrence; of the type MarketReference)
shift (zero or more occurrences; of the type PricingParameterShift)
replacement (zero or more occurrences; of the type PricingInputReplacement)
Attribute: id (xsd:ID)
<xsd:complexType name="ValuationScenario"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of rules for generating a valuation. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The (optional) name for this valuation scenario, used for understandability. For example "EOD Valuations". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationDate" type="IdentifiedDate"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date for which the assets are valued. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="marketReference" type="MarketReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the market environment used to price the asset. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="shift" type="PricingParameterShift" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of shifts to be applied to market inputs prior to computation of the derivative. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="replacement" type="PricingInputReplacement" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of shifts to be applied to market inputs prior to computation of the derivative. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType>
Reference to a valuation scenario.
Inherited element(s): (This definition inherits the content defined by the type Reference)
Attribute: href (xsd:IDREF) - required
<xsd:complexType name="ValuationScenarioReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a valuation scenario. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="ValuationScenario"/> </xsd:extension> </xsd:complexContent> </xsd:complexType>
A partial derivative multiplied by a weighting factor.
partialDerivativeReference (exactly one occurrence; of the type PricingStructureReference)
weight (exactly one occurrence; of the type xsd:decimal)
<xsd:complexType name="WeightedPartialDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative multiplied by a weighting factor. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partialDerivativeReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to a partial derivative defined in the ComputedDerivative.model, i.e. defined as part of this sensitivity definition. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="weight" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The weight factor to be applied to the partial derivative, e.g. 1 or -1, or some other scaling value. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType>
This is a global element used for creating global types. It holds Market information, e.g. curves, surfaces, quotes, etc.
Element market is defined by the complex type Market
<xsd:element name="market" type="Market"> <xsd:annotation> <xsd:documentation xml:lang="en"> This is a global element used for creating global types. It holds Market information, e.g. curves, surfaces, quotes, etc. </xsd:documentation> </xsd:annotation> </xsd:element>
Element pricingStructure is defined by the complex type PricingStructure
<xsd:element name="pricingStructure" type="PricingStructure" abstract="true"/>
Element pricingStructureValuation is defined by the complex type PricingStructureValuation
<xsd:element name="pricingStructureValuation" type="PricingStructureValuation" abstract="true"/>
Parameters used in the computation of a derivative using analytical (closed form formula) techiques.
derivativeFormula (zero or one occurrence; of the type xsd:string)
<xsd:group name="AnalyticDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative using analytical (closed form formula) techiques. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="derivativeFormula" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The formula used to compute the derivative (perhaps could be updated to use the Formula type in EQS.). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
A group describing a derivative as combination of partial derivatives.
partialDerivative (one or more occurrences; of the type PricingParameterDerivative)
formula (zero or one occurrence; of the type DerivativeFormula)
<xsd:group name="ComputedDerivative.model"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> A group describing a derivative as combination of partial derivatives. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partialDerivative" type="PricingParameterDerivative" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative of the measure with respect to an input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="formula" type="DerivativeFormula" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A formula defining how to compute the derivative from the partial derivatives. If absent, the derivative is just the product of the partial derivatives. Normally only required for more higher-order derivatives, e.g. Hessians. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
Parameters used in the computation of a derivative.
<xsd:group name="DerivativeCalculationParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:group ref="FiniteDifferenceDerivativeParameters.model"/> <xsd:group ref="AnalyticDerivativeParameters.model"/> <xsd:group ref="SubstitutionDerivativeParameters.model"/> </xsd:choice> </xsd:group>
Parameters used in the computation of a derivative using numerical (finite difference) techniques.
perturbationAmount (zero or one occurrence; of the type xsd:decimal)
averaged (exactly one occurrence; of the type xsd:boolean)
perturbationType (zero or one occurrence; of the type PerturbationType)
<xsd:group name="FiniteDifferenceDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative using numerical (finite difference) techniques. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="perturbationAmount" type="xsd:decimal" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size and direction of the perturbation used to compute the derivative, e.g. 0.0001 = 1 bp. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="averaged" type="xsd:boolean"> <xsd:annotation> <xsd:documentation xml:lang="en"> The value is calculated by perturbing by the perturbationAmount and then the negative of the perturbationAmount and then averaging the two values (i.e. the value is half of the difference between perturbing up and perturbing down). </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="perturbationType" type="PerturbationType" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type of perturbation, if any, used to compute the derivative (Absolute vs Relative). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
A model group that includes a position ID and an optional version.
positionId (exactly one occurrence; of the type PositionId)
version (zero or one occurrence; of the type xsd:positiveInteger)
<xsd:group name="PositionIdAndVersion.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A model group that includes a position ID and an optional version. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="positionId" type="PositionId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A version-independent identifier for the position, possibly based on trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="version" type="xsd:positiveInteger" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A version identifier. Version identifiers must be ascending, i.e. higher numbers imply newer versions. There is no requirement that version identifiers for a position be sequential or small, so for example timestamp-based version identifiers could be used. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
A pricing structure coordinate, or a reference to one. This can be used to either directly define a coordinate or reference an existing coordinate.
coordinate (exactly one occurrence; of the type PricingDataPointCoordinate)
Or
coordinateReference (exactly one occurrence; of the type PricingDataPointCoordinateReference)
<xsd:group name="PricingCoordinateOrReference.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A pricing structure coordinate, or a reference to one. This can be used to either directly define a coordinate or reference an existing coordinate. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="coordinate" type="PricingDataPointCoordinate"> <xsd:annotation> <xsd:documentation xml:lang="en"> An explicit, filled in data point coordinate. This might specify expiration, strike, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="coordinateReference" type="PricingDataPointCoordinateReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to a pricing data point coordinate within this document. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:choice> </xsd:group>
The dates that might be relevant for a pricing input, e.g. what valuation date it applies to, when it was built, when the data comes from, etc..
baseDate (exactly one occurrence; of the type IdentifiedDate)
spotDate (zero or one occurrence; of the type IdentifiedDate)
inputDataDate (zero or one occurrence; of the type IdentifiedDate)
endDate (zero or one occurrence; of the type IdentifiedDate)
buildDateTime (zero or one occurrence; of the type xsd:dateTime)
<xsd:group name="PricingInputDates.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The dates that might be relevant for a pricing input, e.g. what valuation date it applies to, when it was built, when the data comes from, etc.. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="baseDate" type="IdentifiedDate"> <xsd:annotation> <xsd:documentation xml:lang="en"> The base date for which the structure applies, i.e. the curve date. Normally this will align with the valuation date. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="spotDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The spot settlement date for which the structure applies, normally 0-2 days after the base date. The difference between the baseDate and the spotDate is termed the settlement lag, and is sometimes called "days to spot". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="inputDataDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date from which the input data used to construct the pricing input was obtained. Often the same as the baseDate, but sometimes the pricing input may be "rolled forward", in which input data from one date is used to generate a curve for a later date. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="endDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The last date for which data is supplied in this pricing input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="buildDateTime" type="xsd:dateTime" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time when the pricing input was generated. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
The index (an ordinate) of a pricing structure. The index expresses how far along a particular dimension (e.g. time, strike, etc.) a point is located.
term (exactly one occurrence; of the type TimeDimension)
Or
expiration (exactly one occurrence; of the type TimeDimension)
Or
strike (exactly one occurrence; of the type xsd:decimal)
Or
generic (exactly one occurrence; of the type GenericDimension)
<xsd:group name="PricingStructureIndex.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The index (an ordinate) of a pricing structure. The index expresses how far along a particular dimension (e.g. time, strike, etc.) a point is located. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="term" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A time dimension that represents the term of a financial instrument, e.g. of a zero-coupon bond on a curve, or of an underlying caplet or swap for an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="expiration" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A time dimension that represents the time to expiration of an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="strike" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> A numerical dimension that represents the strike rate or price of an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="generic" type="GenericDimension"/> </xsd:choice> </xsd:group>
A group describing a specific sensitivity without an explicity reference to the market data input point.
term (exactly one occurrence; of the type TimeDimension)
<xsd:group name="SensitivityDescription.model"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> A group describing a specific sensitivity without an explicity reference to the market data input point. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="term" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> The time dimension of the sensitivity point (tenor and/or date) </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="PricingCoordinateOrReference.model" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The input coordinates, or references to them (e.g. expiration, strike, tenor). </xsd:documentation> </xsd:annotation> </xsd:group> </xsd:choice> </xsd:group>
Parameters used in the computation of a derivative by substituting a supplied market environment.
replacementMarketInput (exactly one occurrence; of the type PricingStructureReference)
<xsd:group name="SubstitutionDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative by substituting a supplied market environment. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="replacementMarketInput" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the replacement version of the market input, e.g. a bumped yield curve. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group>
<xsd:schema ecore:nsPrefix="fpml" ecore:package="org.fpml" ecore:documentRoot="FpML" targetNamespace="http://www.fpml.org/2007/FpML-4-3" version="$Revision: 2351 $" attributeFormDefault="unqualified" elementFormDefault="qualified"> <xsd:include schemaLocation="fpml-doc-4-3.xsd"/> <xsd:include schemaLocation="fpml-asset-4-3.xsd"/> <xsd:complexType name="AssetOrTermPointOrPricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to an underlying asset, term point or pricing structure (yield curve). </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="BasicAssetValuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A structure that holds a set of measures about an asset. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Valuation"> <xsd:sequence> <xsd:element name="quote" type="BasicQuotation" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> One or more numerical measures relating to the asset, possibly together with sensitivities of that measure to pricing inputs </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="DenominatorTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type defining a denominator term of the formula. Its value is (sum of weighted partials) ^ power. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="weightedPartial" type="WeightedPartialDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative multiplied by a weighting factor. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="power" type="xsd:positiveInteger"> <xsd:annotation> <xsd:documentation xml:lang="en"> The power to which this term is raised. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="DerivativeCalculationMethod"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The method by which a derivative is computed. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="derivativeCalculationMethodScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/derivative-calculation-method-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="DerivativeCalculationProcedure"> <xsd:annotation> <xsd:documentation xml:lang="en"> A description of how a numerical derivative is computed. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="method" type="DerivativeCalculationMethod" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which a derivative is computed, e.g. analytic, numerical model, perturbation, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="DerivativeCalculationParameters.model" minOccurs="0"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="DerivativeFormula"> <xsd:annotation> <xsd:documentation xml:lang="en"> A formula for computing a complex derivative from partial derivatives. Its value is the sum of the terms divided by the product of the denominator terms. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="term" type="FormulaTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="denominatorTerm" type="DenominatorTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A denominator term of the formula. Its value is (sum of weighted partials) ^ power. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="FormulaTerm"> <xsd:annotation> <xsd:documentation xml:lang="en"> A type defining a term of the formula. Its value is the product of the its coefficient and the referenced partial derivatives. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="coefficient" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The coefficient by which this term is multiplied, typically 1 or -1. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="partialDerivativeReference" type="PricingParameterDerivativeReference" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the partial derivative. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="GenericDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A generic (user defined) dimension, e.g. for use in a correlation surface. e.g. a currency, stock, etc. This would take values like USD, GBP, JPY, or IBM, MSFT, etc. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="name" type="xsd:normalizedString" use="required"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the dimension. E.g.: "Currency", "Stock", "Issuer", etc. </xsd:documentation> </xsd:annotation> </xsd:attribute> <xsd:attribute name="href" type="xsd:IDREF" ecore:reference="Asset"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to an instrument (e.g. currency) that this value represents. </xsd:documentation> </xsd:annotation> </xsd:attribute> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="InstrumentSet"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of instruments usable for quotation purposes. In future releases, quotable derivative assets may be added after the underlying asset. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element ref="underlyingAsset" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of underlying assets (bonds, discount instruments, futures, etc.) that can be used as a basis for benchmark quotes. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="Market"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of pricing inputs. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the market, e.g. the USDLIBOR market. Used for description and understandability. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="benchmarkQuotes" type="QuotedAssetSet" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of benchmark instruments and quotes used as inputs to the pricing models. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="pricingStructure" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of pricing inputs (curves, volatility matrices, etc.) used to represent the market. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element ref="pricingStructureValuation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The values of the pricing structure used to represent the markets.. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="benchmarkPricingMethod" type="PricingMethod" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The pricing structure used to quote a benchmark instrument. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="MarketReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a market structure. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="Market"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="PerturbationType"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The type of perturbation applied to compute a derivative perturbatively. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="perturbationTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/perturbation-type-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="PositionId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A unique identifier for the position. The id attribute is defined for intradocument referencing. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="positionIdScheme" type="xsd:anyURI"/> <xsd:attribute name="id" type="xsd:ID"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="PricingInputReplacement"> <xsd:annotation> <xsd:documentation xml:lang="en"> The substitution of a pricing input (e.g. curve) for another, used in generating prices and risks for valuation scenarios. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="originalInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the original value of the pricing input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="replacementInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the substitution to do. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="PricingInputType"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> The type of pricing structure represented. </xsd:documentation> </xsd:annotation> <xsd:simpleContent> <xsd:extension base="xsd:normalizedString"> <xsd:attribute name="pricingInputTypeScheme" type="xsd:anyURI" default="http://www.fpml.org/coding-scheme/pricing-input-type-1-0"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:complexType name="PricingDataPointCoordinate"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of index values that identify a pricing data point. For example: (strike = 17%, expiration = 6M, term = 1Y. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:group ref="PricingStructureIndex.model" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="PricingDataPointCoordinateReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a Pricing Data Point Coordinate. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="PricingDataPointCoordinate"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="PricingMethod"> <xsd:annotation> <xsd:documentation xml:lang="en"> For an asset (e.g. a reference/benchmark asset), the pricing structure used to price it. Used, for example, to specify that the rateIndex "USD-LIBOR-Telerate" with term = 6M is priced using the "USD-LIBOR-Close" curve. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="assetReference" type="AnyAssetReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> The asset whose price is required. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input used to value the asset. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="PricingParameterDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A definition of the mathematical derivative with respect to a specific pricing parameter. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="description" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A description, if needed, of how the derivative is computed. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:choice> <xsd:element name="parameterReference" type="AssetOrTermPointOrPricingStructureReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input parameter to which the sensitivity is computed. If it is omitted, the derivative definition is generic, and applies to any input point in the valuation set. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="inputDateReference" type="ValuationReference" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference(s) to the pricing input dates that are shifted when the sensitivity is computed. Depending on the time advance method used, this list could vary. Used for describing time-advance derivatives (theta, carry, etc.) </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:choice> <xsd:element name="calculationProcedure" type="DerivativeCalculationProcedure" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which a derivative is computed, e.g. analytic, numerical model, perturbation, etc., and the corresponding parameters </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="PricingParameterDerivativeReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a partial derivative. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="PricingParameterDerivative"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="PricingParameterShift"> <xsd:annotation> <xsd:documentation xml:lang="en"> A definition of a shift with respect to a specific pricing parameter. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="parameterReference" type="AssetOrTermPointOrPricingStructureReference"/> <xsd:element name="shift" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size of the denominator, e.g. 0.0001 = 1 bp. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="shiftUnits" type="PriceQuoteUnits" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The units of the denominator, e.g. currency. If not present, use the units of the PricingInputReference. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="PricingStructureValuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> An abstract pricing structure valuation base type. Used as a base for values of pricing structures such as yield curves and volatility matrices. Derived from the "Valuation" type. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Valuation"> <xsd:sequence> <xsd:group ref="PricingInputDates.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The relevant dates for a pricing structure - what is applies to, when it was built, etc. </xsd:documentation> </xsd:annotation> </xsd:group> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="QuotedAssetSet"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of quoted assets. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="instrumentSet" type="InstrumentSet" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of instruments used as a basis for quotation. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="assetQuote" type="BasicAssetValuation" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of valuations (quotes) for the assets needed in the set. Normally these quotes will be for the underlying assets listed above, but they don't necesarily have to be. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:complexType name="SensitivityDefinition"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of characteristics describing a sensitivity </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the derivative, e.g. first derivative, Hessian, etc. Typically not required, but may be used to explain more complex derivative calculations. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to the valuation scenario to which this sensitivity definition applies. If the SensitivityDefinition occurs within a SensitivitySetDefinition, this is not required and normally not used. In this case, if it is supplied it overrides the valuationScenarioReference in the SensitivitySetDefinition. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:choice> <xsd:group ref="ComputedDerivative.model"/> <xsd:group ref="SensitivityDescription.model"/> </xsd:choice> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="SensitivitySetDefinition"> <xsd:annotation> <xsd:documentation xml:lang="en"> A sensitivity report definition, consisting of a collection of sensitivity definitions. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The name of the sensitivity set definition, e.g. "USDLIBOR curve sensitivities". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sensitivityCharacteristics" type="QuotationCharacteristics" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The default characteristics of the quotation, e.g. type, units, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to the valuation scenario to which this sensitivity definition applies, e.g. a reference to the EOD valuation scenario. If not supplied, this sensitivity set definition is generic to a variety of valuation scenarios. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputType" type="PricingInputType" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type of the pricing input to which the sensitivity is shown, e.g. a yield curve or volatility matrix. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingInputReference" type="PricingStructureReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the pricing input to which the sensitivity is shown, e.g. a reference to a USDLIBOR yield curve. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="scale" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size of the denominator, e.g. 0.0001 = 1 bp. For derivatives with respect to time, the default period is 1 day. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="sensitivityDefinition" type="SensitivityDefinition" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of sensitivity definitions. Either one per point reported, or one generic definition that applies to all points. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="calculationProcedure" type="DerivativeCalculationProcedure" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The method by which each derivative is computed, e.g. analytic, numerical model, perturbation, etc., and the corresponding parameters (eg. shift amounts). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> The time dimensions of a term-structure. The user must supply either a tenor or a date or both. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="tenor" type="Interval"> <xsd:annotation> <xsd:documentation xml:lang="en"> The amount of time from the base date of the pricing input to the specified term point, e.g. 6M or 5Y. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:sequence> <xsd:element name="date" type="xsd:date"> <xsd:annotation> <xsd:documentation xml:lang="en"> The absolute date corresponding to this term point, for example January 3, 2005. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="tenor" type="Interval" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The amount of time from the base date of the pricing input to the specified term point, e.g. 6M or 5Y. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:choice> </xsd:complexType> <xsd:complexType name="Valuation"> <xsd:annotation> <xsd:documentation xml:lang="en"> A valuation of an valuable object - an asset or a pricing input. This is an abstract type, used as a base for values of pricing structures such as yield curves as well as asset values. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="objectReference" type="AnyAssetReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the asset or pricing structure that this values. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationScenarioReference" type="ValuationScenarioReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the valuation scenario used to calculate this valuation. If the Valuation occurs within a ValuationSet, this value is optional and is defaulted from the ValuationSet. If this value occurs in both places, the lower level value (i.e. the one here) overrides that in the higher (i.e. ValuationSet). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> <xsd:attribute name="definitionRef" type="xsd:IDREF" ecore:reference="ValuationScenario"> <xsd:annotation> <xsd:documentation xml:lang="en"> An optional reference to the scenario that this valuation applies to. </xsd:documentation> </xsd:annotation> </xsd:attribute> </xsd:complexType> <xsd:complexType name="ValuationReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a Valuation or any derived structure such as PricingStructureValuation. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="Valuation"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ValuationScenario"> <xsd:annotation> <xsd:documentation xml:lang="en"> A set of rules for generating a valuation. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="name" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The (optional) name for this valuation scenario, used for understandability. For example "EOD Valuations". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="valuationDate" type="IdentifiedDate"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date for which the assets are valued. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="marketReference" type="MarketReference" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the market environment used to price the asset. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="shift" type="PricingParameterShift" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of shifts to be applied to market inputs prior to computation of the derivative. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="replacement" type="PricingInputReplacement" minOccurs="0" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A collection of shifts to be applied to market inputs prior to computation of the derivative. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> <xsd:attribute name="id" type="xsd:ID"/> </xsd:complexType> <xsd:complexType name="ValuationScenarioReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> Reference to a valuation scenario. </xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="Reference"> <xsd:attribute name="href" type="xsd:IDREF" use="required" ecore:reference="ValuationScenario"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="WeightedPartialDerivative"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative multiplied by a weighting factor. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partialDerivativeReference" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to a partial derivative defined in the ComputedDerivative.model, i.e. defined as part of this sensitivity definition. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="weight" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> The weight factor to be applied to the partial derivative, e.g. 1 or -1, or some other scaling value. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:element name="market" type="Market"> <xsd:annotation> <xsd:documentation xml:lang="en"> This is a global element used for creating global types. It holds Market information, e.g. curves, surfaces, quotes, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="pricingStructure" type="PricingStructure" abstract="true"/> <xsd:element name="pricingStructureValuation" type="PricingStructureValuation" abstract="true"/> <xsd:group name="AnalyticDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative using analytical (closed form formula) techiques. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="derivativeFormula" type="xsd:string" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The formula used to compute the derivative (perhaps could be updated to use the Formula type in EQS.). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="ComputedDerivative.model"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> A group describing a derivative as combination of partial derivatives. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="partialDerivative" type="PricingParameterDerivative" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> A partial derivative of the measure with respect to an input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="formula" type="DerivativeFormula" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A formula defining how to compute the derivative from the partial derivatives. If absent, the derivative is just the product of the partial derivatives. Normally only required for more higher-order derivatives, e.g. Hessians. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="DerivativeCalculationParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:group ref="FiniteDifferenceDerivativeParameters.model"/> <xsd:group ref="AnalyticDerivativeParameters.model"/> <xsd:group ref="SubstitutionDerivativeParameters.model"/> </xsd:choice> </xsd:group> <xsd:group name="FiniteDifferenceDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative using numerical (finite difference) techniques. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="perturbationAmount" type="xsd:decimal" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The size and direction of the perturbation used to compute the derivative, e.g. 0.0001 = 1 bp. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="averaged" type="xsd:boolean"> <xsd:annotation> <xsd:documentation xml:lang="en"> The value is calculated by perturbing by the perturbationAmount and then the negative of the perturbationAmount and then averaging the two values (i.e. the value is half of the difference between perturbing up and perturbing down). </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="perturbationType" type="PerturbationType" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The type of perturbation, if any, used to compute the derivative (Absolute vs Relative). </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="PositionIdAndVersion.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A model group that includes a position ID and an optional version. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="positionId" type="PositionId"> <xsd:annotation> <xsd:documentation xml:lang="en"> A version-independent identifier for the position, possibly based on trade identifier. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="version" type="xsd:positiveInteger" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> A version identifier. Version identifiers must be ascending, i.e. higher numbers imply newer versions. There is no requirement that version identifiers for a position be sequential or small, so for example timestamp-based version identifiers could be used. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="PricingCoordinateOrReference.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> A pricing structure coordinate, or a reference to one. This can be used to either directly define a coordinate or reference an existing coordinate. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="coordinate" type="PricingDataPointCoordinate"> <xsd:annotation> <xsd:documentation xml:lang="en"> An explicit, filled in data point coordinate. This might specify expiration, strike, etc. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="coordinateReference" type="PricingDataPointCoordinateReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to a pricing data point coordinate within this document. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:choice> </xsd:group> <xsd:group name="PricingInputDates.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The dates that might be relevant for a pricing input, e.g. what valuation date it applies to, when it was built, when the data comes from, etc.. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="baseDate" type="IdentifiedDate"> <xsd:annotation> <xsd:documentation xml:lang="en"> The base date for which the structure applies, i.e. the curve date. Normally this will align with the valuation date. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="spotDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The spot settlement date for which the structure applies, normally 0-2 days after the base date. The difference between the baseDate and the spotDate is termed the settlement lag, and is sometimes called "days to spot". </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="inputDataDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date from which the input data used to construct the pricing input was obtained. Often the same as the baseDate, but sometimes the pricing input may be "rolled forward", in which input data from one date is used to generate a curve for a later date. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="endDate" type="IdentifiedDate" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The last date for which data is supplied in this pricing input. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="buildDateTime" type="xsd:dateTime" minOccurs="0"> <xsd:annotation> <xsd:documentation xml:lang="en"> The date and time when the pricing input was generated. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> <xsd:group name="PricingStructureIndex.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> The index (an ordinate) of a pricing structure. The index expresses how far along a particular dimension (e.g. time, strike, etc.) a point is located. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="term" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A time dimension that represents the term of a financial instrument, e.g. of a zero-coupon bond on a curve, or of an underlying caplet or swap for an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="expiration" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> A time dimension that represents the time to expiration of an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="strike" type="xsd:decimal"> <xsd:annotation> <xsd:documentation xml:lang="en"> A numerical dimension that represents the strike rate or price of an option. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:element name="generic" type="GenericDimension"/> </xsd:choice> </xsd:group> <xsd:group name="SensitivityDescription.model"> <xsd:annotation> <xsd:documentation source="http://www.FpML.org" xml:lang="en"> A group describing a specific sensitivity without an explicity reference to the market data input point. </xsd:documentation> </xsd:annotation> <xsd:choice> <xsd:element name="term" type="TimeDimension"> <xsd:annotation> <xsd:documentation xml:lang="en"> The time dimension of the sensitivity point (tenor and/or date) </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:group ref="PricingCoordinateOrReference.model" maxOccurs="unbounded"> <xsd:annotation> <xsd:documentation xml:lang="en"> The input coordinates, or references to them (e.g. expiration, strike, tenor). </xsd:documentation> </xsd:annotation> </xsd:group> </xsd:choice> </xsd:group> <xsd:group name="SubstitutionDerivativeParameters.model"> <xsd:annotation> <xsd:documentation xml:lang="en"> Parameters used in the computation of a derivative by substituting a supplied market environment. </xsd:documentation> </xsd:annotation> <xsd:sequence> <xsd:element name="replacementMarketInput" type="PricingStructureReference"> <xsd:annotation> <xsd:documentation xml:lang="en"> A reference to the replacement version of the market input, e.g. a bumped yield curve. </xsd:documentation> </xsd:annotation> </xsd:element> </xsd:sequence> </xsd:group> </xsd:schema>