UNPKG

@finbourne/lusid-sdk-angular8

Version:

An angular (8+) SDK for secure access to the LUSID® by FINBOURNE web API

62 lines (61 loc) 7.07 kB
import { LegDefinition } from './legDefinition'; /** * LUSID representation of a Funding Leg with variable notional. This Funding Leg is a hybrid between a single leg swap and a loan facility; the notional is not fixed and can vary within a reset period. The model can be used to represent the funding leg of a basket of instruments (e.g. equities) where the contents of the basket can change over time. The actual notional history is stored in the FundingLegHistory object. The actual notional history is stored in the FundingLegHistory object. The main analytic calculated for this instrument is Accrual rather than PV. */ export interface FundingLeg { /** * The start date of the instrument. This is normally synonymous with the trade-date. */ startDate: Date; /** * The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates beyond their last payment date. */ maturityDate: Date; legDefinition: LegDefinition; /** * The initial notional of the Funding Leg instrument. When \"RequiresFundingLegHistory\" property key is present in transaction key, during a GetValuation endpoint call (for instance), this field would overriden by the Funding Leg history\'s notional and this notional field would not be used in the pricing and accrual calculations. As such, we recommend setting this to 0 or not setting it at all. Please see the following Notebook example and Knowledge Base article: Notebook: https://github.com/finbourne/sample-notebooks/blob/master/examples/use-cases/instruments/Funding%20Leg%20Swap.ipynb Knowledge Base article: https://support.lusid.com/knowledgebase/article/KA-01764/ */ notional?: number | null; /** * The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap */ instrumentType: FundingLeg.InstrumentTypeEnum; } export declare namespace FundingLeg { type InstrumentTypeEnum = 'QuotedSecurity' | 'InterestRateSwap' | 'FxForward' | 'Future' | 'ExoticInstrument' | 'FxOption' | 'CreditDefaultSwap' | 'InterestRateSwaption' | 'Bond' | 'EquityOption' | 'FixedLeg' | 'FloatingLeg' | 'BespokeCashFlowsLeg' | 'Unknown' | 'TermDeposit' | 'ContractForDifference' | 'EquitySwap' | 'CashPerpetual' | 'CapFloor' | 'CashSettled' | 'CdsIndex' | 'Basket' | 'FundingLeg' | 'FxSwap' | 'ForwardRateAgreement' | 'SimpleInstrument' | 'Repo' | 'Equity' | 'ExchangeTradedOption' | 'ReferenceInstrument' | 'ComplexBond' | 'InflationLinkedBond' | 'InflationSwap'; const InstrumentTypeEnum: { QuotedSecurity: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; InterestRateSwap: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FxForward: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Future: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ExoticInstrument: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FxOption: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; CreditDefaultSwap: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; InterestRateSwaption: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Bond: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; EquityOption: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FixedLeg: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FloatingLeg: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; BespokeCashFlowsLeg: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Unknown: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; TermDeposit: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ContractForDifference: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; EquitySwap: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; CashPerpetual: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; CapFloor: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; CashSettled: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; CdsIndex: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Basket: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FundingLeg: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; FxSwap: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ForwardRateAgreement: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; SimpleInstrument: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Repo: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; Equity: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ExchangeTradedOption: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ReferenceInstrument: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; ComplexBond: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; InflationLinkedBond: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; InflationSwap: import("@finbourne/lusid-sdk-angular8/src/lib/generated").LusidInstrument.InstrumentTypeEnum; }; }