/// <summary> /// Initializes a new instance of the <see cref="QuoteSeriesId" /> class. /// </summary> /// <param name="provider">The platform or vendor that provided the quote, e.g. 'DataScope', 'LUSID' etc. (required).</param> /// <param name="priceSource">The source or originator of the quote, e.g. a bank or financial institution..</param> /// <param name="instrumentId">The value of the instrument identifier that uniquely identifies the instrument that the quote is for, e.g. 'BBG00JX0P539'. (required).</param> /// <param name="instrumentIdType">The type of instrument identifier used to uniquely identify the instrument that the quote is for, e.g. 'Figi'. The available values are: LusidInstrumentId, Figi, RIC, QuotePermId, Isin, CurrencyPair, ClientInternal (required).</param> /// <param name="quoteType">The type of the quote. This allows for quotes other than prices e.g. rates or spreads to be used. The available values are: Price, Spread, Rate, LogNormalVol, NormalVol, ParSpread, IsdaSpread, Upfront (required).</param> /// <param name="field">The field of the quote e.g. bid, mid, ask etc. This should be consistent across a time series of quotes. The allowed values are dependant on the specified Provider. (required).</param> public QuoteSeriesId(string provider = default(string), string priceSource = default(string), string instrumentId = default(string), InstrumentIdTypeEnum instrumentIdType = default(InstrumentIdTypeEnum), QuoteTypeEnum quoteType = default(QuoteTypeEnum), string field = default(string)) { // to ensure "provider" is required (not null) if (provider == null) { throw new InvalidDataException("provider is a required property for QuoteSeriesId and cannot be null"); } else { this.Provider = provider; } this.PriceSource = priceSource; // to ensure "instrumentId" is required (not null) if (instrumentId == null) { throw new InvalidDataException("instrumentId is a required property for QuoteSeriesId and cannot be null"); } else { this.InstrumentId = instrumentId; } // to ensure "instrumentIdType" is required (not null) if (instrumentIdType == null) { throw new InvalidDataException("instrumentIdType is a required property for QuoteSeriesId and cannot be null"); } else { this.InstrumentIdType = instrumentIdType; } this.InstrumentIdType = instrumentIdType; // to ensure "quoteType" is required (not null) if (quoteType == null) { throw new InvalidDataException("quoteType is a required property for QuoteSeriesId and cannot be null"); } else { this.QuoteType = quoteType; } this.QuoteType = quoteType; // to ensure "field" is required (not null) if (field == null) { throw new InvalidDataException("field is a required property for QuoteSeriesId and cannot be null"); } else { this.Field = field; } this.PriceSource = priceSource; }
/// <summary> /// Initializes a new instance of the <see cref="QuoteSeriesId" /> class. /// </summary> /// <param name="provider">The platform or vendor that provided the quote, e.g. 'DataScope', 'LUSID' etc. (required).</param> /// <param name="priceSource">The source or originator of the quote, e.g. a bank or financial institution..</param> /// <param name="instrumentId">The value of the instrument identifier that uniquely identifies the instrument that the quote is for, e.g. 'BBG00JX0P539'. (required).</param> /// <param name="instrumentIdType">The type of instrument identifier used to uniquely identify the instrument that the quote is for, e.g. 'Figi'. The available values are: LusidInstrumentId, Figi, RIC, QuotePermId, Isin, CurrencyPair, ClientInternal (required).</param> /// <param name="quoteType">The type of the quote. This allows for quotes other than prices e.g. rates or spreads to be used. The available values are: Price, Spread, Rate, LogNormalVol, NormalVol, ParSpread, IsdaSpread, Upfront, Index, Ratio, Delta (required).</param> /// <param name="field">The field of the quote e.g. bid, mid, ask etc. This should be consistent across a time series of quotes. The allowed values are dependant on the specified Provider. (required).</param> public QuoteSeriesId(string provider = default(string), string priceSource = default(string), string instrumentId = default(string), InstrumentIdTypeEnum instrumentIdType = default(InstrumentIdTypeEnum), QuoteTypeEnum quoteType = default(QuoteTypeEnum), string field = default(string)) { // to ensure "provider" is required (not null) this.Provider = provider ?? throw new ArgumentNullException("provider is a required property for QuoteSeriesId and cannot be null"); // to ensure "instrumentId" is required (not null) this.InstrumentId = instrumentId ?? throw new ArgumentNullException("instrumentId is a required property for QuoteSeriesId and cannot be null"); this.InstrumentIdType = instrumentIdType; this.QuoteType = quoteType; // to ensure "field" is required (not null) this.Field = field ?? throw new ArgumentNullException("field is a required property for QuoteSeriesId and cannot be null"); this.PriceSource = priceSource; }
/// <summary> /// Initializes a new instance of the <see cref="MarketDataKeyRule" /> class. /// </summary> /// <param name="key">The market data key pattern which this is a rule for. A dot separated string (A.B.C.D.*) (required).</param> /// <param name="supplier">The market data supplier (where the data comes from) (required).</param> /// <param name="dataScope">The scope in which the data should be found when using this rule. (required).</param> /// <param name="quoteType">Is the quote to be looked for a price, yield etc. (required).</param> /// <param name="field">The conceptual qualification for the field, such as bid, mid, or ask. The field must be one of a defined set for the given supplier, in the same way as it is for the Finbourne.WebApi.Interface.Dto.Quotes.QuoteSeriesId (required).</param> public MarketDataKeyRule(string key = default(string), SupplierEnum supplier = default(SupplierEnum), string dataScope = default(string), QuoteTypeEnum quoteType = default(QuoteTypeEnum), string field = default(string)) { // to ensure "key" is required (not null) if (key == null) { throw new InvalidDataException("key is a required property for MarketDataKeyRule and cannot be null"); } else { this.Key = key; } // to ensure "supplier" is required (not null) if (supplier == null) { throw new InvalidDataException("supplier is a required property for MarketDataKeyRule and cannot be null"); } else { this.Supplier = supplier; } // to ensure "dataScope" is required (not null) if (dataScope == null) { throw new InvalidDataException("dataScope is a required property for MarketDataKeyRule and cannot be null"); } else { this.DataScope = dataScope; } // to ensure "quoteType" is required (not null) if (quoteType == null) { throw new InvalidDataException("quoteType is a required property for MarketDataKeyRule and cannot be null"); } else { this.QuoteType = quoteType; } // to ensure "field" is required (not null) if (field == null) { throw new InvalidDataException("field is a required property for MarketDataKeyRule and cannot be null"); } else { this.Field = field; } }
/// <summary> /// Initializes a new instance of the <see cref="MarketDataKeyRule" /> class. /// </summary> /// <param name="key">A dot-separated string that defines a pattern for matching market data dependencies. The form of the string depends on the type of the dependency; see below for basic types and the Knowledge Base for further info. Quote lookup: \"Quote.{CodeType}.*\" e.g. \"Quote.RIC.*\" refers to 'any RIC quote' Fx rates: \"Fx.CurrencyPair.*\", which refers to 'any FX rate' Discounting curves: \"Rates.{Currency}.{Currency}OIS e.g. \"Rates.USD.USDOIS\" refers to the OIS USD discounting curve For non-fx and non-quote rules, trailing parameters can be replaced by the wildcard character '*'. e.g. \"Rates.*.*\" matches any dependency on a discounting curve. (required).</param> /// <param name="supplier">The market data supplier (where the data comes from) (required).</param> /// <param name="dataScope">The scope in which the data should be found when using this rule. (required).</param> /// <param name="quoteType">The available values are: Price, Spread, Rate, LogNormalVol, NormalVol, ParSpread, IsdaSpread, Upfront, Index, Ratio, Delta (required).</param> /// <param name="field">The conceptual qualification for the field, such as bid, mid, or ask. The field must be one of a defined set for the given supplier, in the same way as it is for the Finbourne.WebApi.Interface.Dto.Quotes.QuoteSeriesId (required).</param> /// <param name="quoteInterval">Shorthand for the time interval used to select market data. This must be a dot-separated string nominating a start and end date, for example '5D.0D' to look back 5 days from today (0 days ago). The syntax is <i>int</i><i>char</i>.<i>int</i><i>char</i>, where <i>char</i> is one of D(ay), W(eek), M(onth) or Y(ear)..</param> /// <param name="asAt">The AsAt predicate specification..</param> /// <param name="priceSource">The source of the quote. For a given provider/supplier of market data there may be an additional qualifier, e.g. the exchange or bank that provided the quote.</param> /// <param name="mask">Allows for partial or complete override of the market asset resolved for a dependency Either a named override or a dot separated string (A.B.C.D.*). e.g. for Rates curve 'EUR.*' will replace the resolve MarketAsset 'GBP/12M', 'GBP/3M' with the EUR equivalent, if there are no wildcards in the mask, the mask is taken as the MarketAsset for any dependency matching the rule..</param> public MarketDataKeyRule(string key = default(string), string supplier = default(string), string dataScope = default(string), QuoteTypeEnum quoteType = default(QuoteTypeEnum), string field = default(string), string quoteInterval = default(string), DateTimeOffset?asAt = default(DateTimeOffset?), string priceSource = default(string), string mask = default(string)) { // to ensure "key" is required (not null) this.Key = key ?? throw new ArgumentNullException("key is a required property for MarketDataKeyRule and cannot be null"); // to ensure "supplier" is required (not null) this.Supplier = supplier ?? throw new ArgumentNullException("supplier is a required property for MarketDataKeyRule and cannot be null"); // to ensure "dataScope" is required (not null) this.DataScope = dataScope ?? throw new ArgumentNullException("dataScope is a required property for MarketDataKeyRule and cannot be null"); this.QuoteType = quoteType; // to ensure "field" is required (not null) this.Field = field ?? throw new ArgumentNullException("field is a required property for MarketDataKeyRule and cannot be null"); this.QuoteInterval = quoteInterval; this.AsAt = asAt; this.PriceSource = priceSource; this.Mask = mask; }
/// <summary> /// Initializes a new instance of the <see cref="MarketDataKeyRule" /> class. /// </summary> /// <param name="key">The market data key pattern which this is a rule for. A dot separated string (A.B.C.D.*) (required).</param> /// <param name="supplier">The market data supplier (where the data comes from) (required).</param> /// <param name="dataScope">The scope in which the data should be found when using this rule. (required).</param> /// <param name="quoteType">The available values are: Price, Spread, Rate, LogNormalVol, NormalVol, ParSpread, IsdaSpread, Upfront (required).</param> /// <param name="field">The conceptual qualification for the field, such as bid, mid, or ask. The field must be one of a defined set for the given supplier, in the same way as it is for the Finbourne.WebApi.Interface.Dto.Quotes.QuoteSeriesId (required).</param> /// <param name="quoteInterval">Shorthand for the time interval used to select market data..</param> /// <param name="asAt">The AsAt predicate specification..</param> /// <param name="priceSource">The source of the quote. For a given provider/supplier of market data there may be an additional qualifier, e.g. the exchange or bank that provided the quote.</param> /// <param name="mask">Allows for partial or complete override of the market asset resolved for a dependency Either a named override or a dot separated string (A.B.C.D.*). e.g. for Rates curve 'EUR.*' will replace the resolve MarketAsset 'GBP/12M', 'GBP/3M' with the EUR equivalent, if there are no wildcards in the mask, the mask is taken as the MarketAsset for any dependency matching the rule..</param> public MarketDataKeyRule(string key = default(string), string supplier = default(string), string dataScope = default(string), QuoteTypeEnum quoteType = default(QuoteTypeEnum), string field = default(string), string quoteInterval = default(string), DateTimeOffset?asAt = default(DateTimeOffset?), string priceSource = default(string), string mask = default(string)) { // to ensure "key" is required (not null) if (key == null) { throw new InvalidDataException("key is a required property for MarketDataKeyRule and cannot be null"); } else { this.Key = key; } // to ensure "supplier" is required (not null) if (supplier == null) { throw new InvalidDataException("supplier is a required property for MarketDataKeyRule and cannot be null"); } else { this.Supplier = supplier; } // to ensure "dataScope" is required (not null) if (dataScope == null) { throw new InvalidDataException("dataScope is a required property for MarketDataKeyRule and cannot be null"); } else { this.DataScope = dataScope; } // to ensure "quoteType" is required (not null) if (quoteType == null) { throw new InvalidDataException("quoteType is a required property for MarketDataKeyRule and cannot be null"); } else { this.QuoteType = quoteType; } // to ensure "field" is required (not null) if (field == null) { throw new InvalidDataException("field is a required property for MarketDataKeyRule and cannot be null"); } else { this.Field = field; } this.QuoteInterval = quoteInterval; this.AsAt = asAt; this.PriceSource = priceSource; this.Mask = mask; this.QuoteInterval = quoteInterval; this.AsAt = asAt; this.PriceSource = priceSource; this.Mask = mask; }
private QuoteType(QuoteTypeEnum @enum) { Id = (int)@enum; Type = @enum.ToString(); Quotes = new HashSet <Quote>(); }