protected void OnOpenSession(string providerid)
 {
     if(null == _provider)
     {
         ProviderId = providerid;
         _provider = new MarketData(providerid);
         var task = Task.Factory.StartNew(() =>
             {
                 _provider.StreamMarketData(OnNewDataReceivedHandler);
             });
     }
     ResetCounter();
     Connect();
     Resume();
 }
        protected void OnEndSessionEvent()
        {
            if (null != _provider)
                _provider.Disconnect();

            if (IsConnected)
            {
                Disconnect();
                Resume();
                _provider = null;
            }
        }