Exemple #1
0
 /// <summary>
 /// Deaktywacja odbioru informacji o statusie sesji.
 /// </summary>
 public void TradingSessionStatusStop()
 {
     if (!statusOn)
     {
         return;
     }
     Debug.WriteLine("\nTradingSessionStatusStop...");
     using (Socket socket = GetSyncSocket())
     {
         TrdSesStatusRequestMsg request = new TrdSesStatusRequestMsg();
         request.Type = SubscriptionRequestType.CancelSubscription;
         request.Send(socket);
         TradingSessionStatusMsg response = new TradingSessionStatusMsg(socket);
         if (response.RequestId != request.Id)
         {
             throw new FixmlException("Unexpected TrdgSesStat ReqID.");
         }
         // mamy taki status - ale czy to tego requesta dotyczy, to ja tylko zgadywać mogę... :/
         if (response.SessionStatus == TradingSessionStatus.RequestRejected)
         {
             throw new FixmlException("TrdgSesStat rejected, reason = " + response.RejectReason);
         }
     }
     Debug.WriteLine("TradingSessionStatusStop OK\n");
     statusOn = false;
 }
        // wywoływane przez NolClient po otrzymaniu komunikatu 'TrdgSesStat'
        void HandleSessionStatusMsgEvent(TradingSessionStatusMsg msg)
        {
            var symbol = msg.Instrument != null ? msg.Instrument.Symbol : null;

            Trace.WriteLine(string.Format("{0,-10} {1}", symbol, msg.SessionPhase));
        }