コード例 #1
0
 private void OnRequestQuoteEvent(OrderScreen model)
 {
     Log.DebugFormat("Beginning RFQ");
     _quoteId = Guid.NewGuid();
     _status  = QuoteStatus.Requesting;
     _inFlightRfqQuoteDetails = new InFlightRfqQuoteDetails
     {
         QuoteId      = _quoteId,
         CurrencyPair = model.Inputs.CurrencyPair.Value,
         Notional     = model.Inputs.Notional.Value.Value
     };
     _orderDisposable.Disposable = _rfqGateway.BegingGetQuote(
         _inFlightRfqQuoteDetails.QuoteId,
         _inFlightRfqQuoteDetails.CurrencyPair,
         _inFlightRfqQuoteDetails.Notional
         );
 }
コード例 #2
0
 private void OnOrderResponseReceivedEvent(OrderResponseReceivedEvent e)
 {
     if (e.QuoteId != _quoteId)
     {
         return;
     }
     Log.DebugFormat("RFQ response received");
     if (e.HasException)
     {
         // todo
     }
     else
     {
         _rate   = e.Rate;
         _status = e.Status;
     }
     if (_status.IsEndState())
     {
         _inFlightRfqQuoteDetails = null;
         _quoteId = Guid.Empty;
     }
 }