public QuotePolicy2QuotationDict GetQuotations(Guid instrumentId) { QuotePolicy2QuotationDict result = null; this.TryGetValue(instrumentId, out result); return(result); }
internal bool TryGetValue(Guid instrumentId, out QuotePolicy2QuotationDict quotationList) { quotationList = null; for (int i = 0; i < _instrument2QuotationsDict.Count; i++) { var eachItem = _instrument2QuotationsDict[i]; if (eachItem.Key.Equals(instrumentId)) { quotationList = eachItem.Value; return(true); } } return(false); }
internal bool TryGetQuotation(Guid instrumentId, IQuotePolicyProvider quotePolicyProvider, out Quotation quotation) { quotation = null; QuotePolicy2QuotationDict quotations = null; if (this.TryGetValue(instrumentId, out quotations)) { quotation = quotePolicyProvider.Get <Quotation>(delegate(Guid id, out Quotation q) { return(quotations.TryGetValue(id, out q)); }); } return(quotation != null); }
private void Initialize(OverridedQ[] overridedQs) { _timeStamp = Market.MarketManager.Now; foreach (OverridedQ eachOverridedQuotation in overridedQs) { Quotation quotation = Quotation.Create(eachOverridedQuotation); if (quotation == null) { continue; } QuotePolicy2QuotationDict quotationList; if (!this.TryGetValue(eachOverridedQuotation.InstrumentID, out quotationList)) { quotationList = new QuotePolicy2QuotationDict(); _instrument2QuotationsDict.Add(new KeyValuePair <Guid, QuotePolicy2QuotationDict>(eachOverridedQuotation.InstrumentID, quotationList)); } if (quotationList.ContainsKey(eachOverridedQuotation.QuotePolicyID)) { throw new ApplicationException("Can't have more than one price for one instrument + quotepolicy in a batch of quotation"); } quotationList.Add(eachOverridedQuotation.QuotePolicyID, quotation); } }