@finbourne/lusid-sdk-angular8
Version:
An angular (8+) SDK for secure access to the LUSID® by FINBOURNE web API
78 lines (77 loc) • 5.79 kB
TypeScript
import { FuturesContractDetails } from './futuresContractDetails';
import { LusidInstrument } from './lusidInstrument';
/**
* LUSID representation of a Future. Including, but not limited to, Equity Futures, Bond Futures, Index Futures, Currency Futures, and Interest Rate Futures.
*/
export interface Future {
/**
* 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 that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.
*/
maturityDate: Date;
/**
* External market codes and identifiers for the bond, e.g. ISIN.
*/
identifiers: {
[key: string]: string;
};
contractDetails: FuturesContractDetails;
/**
* The number of contracts held.
*/
contracts?: number;
/**
* The reference spot price for the future at which the contract was entered into.
*/
refSpotPrice?: number;
underlying?: LusidInstrument;
/**
* Calculation type for some Future instruments which have non-standard methodology. Optional, if not set defaults as follows: - If ExchangeCode is \"ASX\" and ContractCode is \"IR\" or \"BB\" set to ASX_BankBills - If ExchangeCode is \"ASX\" and ContractCode is \"YT\" set to ASX_3Year - If ExchangeCode is \"ASX\" and ContractCode is \"VT\" set to ASX_5Year - If ExchangeCode is \"ASX\" and ContractCode is \"XT\" set to ASX_10Year - If ExchangeCode is \"ASX\" and ContractCode is \"LT\" set to ASX_20Year - otherwise set to Standard Specific calculation types for ASX bond futures are: - [Standard] The default calculation type, which does not fit into any of the categories below. - [ASX_BankBills] Used for AUD and NZD futures “IR” and “BB” on ASX. 90D Bank Bills. - [ASX_3Year] Used for “YT” on ASX. 3YR semi-annual bond (6 coupons) @ 6%. - [ASX_5Year] Used for “VT” on ASX. 5yr semi-annual bond (10 coupons) @ 2%. - [ASX_10Year] Used for “XT” on ASX. 10yr semi-annual bond (20 coupons) @ 6%. - [ASX_20Year] Used for “LT” on ASX. 20yr semi-annual bond (40 coupons) @ 4%. Supported string (enumeration) values are: [Standard, ASX_BankBills, ASX_3Year, ASX_5Year, ASX_10Year, ASX_20Year].
*/
calculationType?: string | 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: Future.InstrumentTypeEnum;
}
export declare namespace Future {
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: LusidInstrument.InstrumentTypeEnum;
InterestRateSwap: LusidInstrument.InstrumentTypeEnum;
FxForward: LusidInstrument.InstrumentTypeEnum;
Future: LusidInstrument.InstrumentTypeEnum;
ExoticInstrument: LusidInstrument.InstrumentTypeEnum;
FxOption: LusidInstrument.InstrumentTypeEnum;
CreditDefaultSwap: LusidInstrument.InstrumentTypeEnum;
InterestRateSwaption: LusidInstrument.InstrumentTypeEnum;
Bond: LusidInstrument.InstrumentTypeEnum;
EquityOption: LusidInstrument.InstrumentTypeEnum;
FixedLeg: LusidInstrument.InstrumentTypeEnum;
FloatingLeg: LusidInstrument.InstrumentTypeEnum;
BespokeCashFlowsLeg: LusidInstrument.InstrumentTypeEnum;
Unknown: LusidInstrument.InstrumentTypeEnum;
TermDeposit: LusidInstrument.InstrumentTypeEnum;
ContractForDifference: LusidInstrument.InstrumentTypeEnum;
EquitySwap: LusidInstrument.InstrumentTypeEnum;
CashPerpetual: LusidInstrument.InstrumentTypeEnum;
CapFloor: LusidInstrument.InstrumentTypeEnum;
CashSettled: LusidInstrument.InstrumentTypeEnum;
CdsIndex: LusidInstrument.InstrumentTypeEnum;
Basket: LusidInstrument.InstrumentTypeEnum;
FundingLeg: LusidInstrument.InstrumentTypeEnum;
FxSwap: LusidInstrument.InstrumentTypeEnum;
ForwardRateAgreement: LusidInstrument.InstrumentTypeEnum;
SimpleInstrument: LusidInstrument.InstrumentTypeEnum;
Repo: LusidInstrument.InstrumentTypeEnum;
Equity: LusidInstrument.InstrumentTypeEnum;
ExchangeTradedOption: LusidInstrument.InstrumentTypeEnum;
ReferenceInstrument: LusidInstrument.InstrumentTypeEnum;
ComplexBond: LusidInstrument.InstrumentTypeEnum;
InflationLinkedBond: LusidInstrument.InstrumentTypeEnum;
InflationSwap: LusidInstrument.InstrumentTypeEnum;
};
}