public void OnTick(long id, SymbolInfo anotherSymbol, Tick anotherTick)
        {
            if (trace)
            {
                log.Trace("Sending tick: " + anotherTick);
            }

            if (anotherSymbol.BinaryIdentifier >= lastTicks.Length)
            {
                ExtendLastTicks();
            }

            if (ProviderSimulator.NextSimulateSymbolId >= currentTicks.Length)
            {
                ExtendCurrentTicks();
            }

            var currentTick = currentTicks[id];

            currentTick.TickIO.Inject(anotherTick.Extract());
            currentTick.Symbol = anotherSymbol;
            currentTick.State  = TickState.Tick;

            TryFindTick();
        }
예제 #2
0
 public void StartTick(Tick lastTick)
 {
     if (trace)
     {
         log.Trace("StartTick(" + lastTick + ")");
     }
     currentTick.Inject(lastTick.Extract());
 }
예제 #3
0
 public void OnOpen(Tick tick)
 {
     if (trace)
     {
         log.Trace("OnOpen(" + tick + ")");
     }
     isOpenTick = true;
     openTime   = tick.Time;
     currentTick.Inject(tick.Extract());
 }
 public void StartTick(Tick lastTick)
 {
     if (trace)
     {
         log.Trace("StartTick(" + lastTick + ")");
     }
     if (!lastTick.IsQuote && !lastTick.IsTrade)
     {
         throw new ApplicationException("tick w/o either trade or quote data? " + lastTick);
     }
     currentTick.Inject(lastTick.Extract());
     hasCurrentTick = true;
     IsChanged      = true;
 }
 public void OnOpen(Tick tick)
 {
     if (trace)
     {
         log.Trace("OnOpen(" + tick + ")");
     }
     isOpenTick = true;
     openTime   = tick.Time;
     if (!tick.IsQuote && !tick.IsTrade)
     {
         throw new ApplicationException("tick w/o either trade or quote data? " + tick);
     }
     currentTick.Inject(tick.Extract());
     hasCurrentTick = true;
     IsChanged      = true;
 }