public bool IsNewMinute()
 {
     lock (LockObj)
     {
         if (CurrentMinute != LastMinute)
         {
             AlgoTraderMethods.Pause();
             LastMinute = CurrentMinute;
             return(true);
         }
         else
         {
             AlgoTraderMethods.UnPause();
             return(false);
         }
     }
 }
        public void RefreshTime()
        {
            // lock is set in wrapping calling code (AlgoTraderProcess.TimerCallback)
            lock (LockObj)
            {
                if (!AlgoTraderState.PauseSim)
                {
                    if (IsSim)
                    {
                        if (AlgoTraderState.TradingManagerRunning)
                        {
                            AlgoTraderMethods.Pause();
                        }
                        Time = Time.PlusMinutes(IncrementMinutes);
                    }
                    else
                    {
                        Time = UCDT.GetCurrentEastCoastTime();
                    }

                    CurrentMinute = Time.Minute;
                }
            }
        }