public void testTicks() { var actual = new List <Tick>(); var listener = new Symbol.JTickListener(actual.Add, true); var d = O.now(); var firstTick = new JTick(3.0, 100, 2.0, 4.0, 1.5, O.jDate(d)); listener.onTick(firstTick); var opensLow = new List <Tick> { new Tick(2.0, 0, d), new Tick(1.5, 0, d), new Tick(4.0, 0, d), new Tick(3.0, 100, d) }; AreEqual(opensLow, actual); actual.Clear(); var nextTick = new JTick(2.5, 100, 2.0, 4.0, 1.5, O.jDate(d)); listener.onTick(nextTick); AreEqual(new Tick(2.5, 100, d), O.the(actual)); actual.Clear(); listener = new Symbol.JTickListener(actual.Add, true); // reset firstTick = new JTick(1.5, 100, 2.0, 2.5, 1.0, O.jDate(d)); listener.onTick(firstTick); var opensHigh = new List <Tick> { new Tick(2.0, 0, d), new Tick(2.5, 0, d), new Tick(1.0, 0, d), new Tick(1.5, 100, d) }; AreEqual(opensHigh, actual); }
public void testLiveData() { const string name = "testone"; systemdb.metadata.SystemTimeSeriesTable.SYSTEM_TS.insert(name, "ASCII", "ActiveMQ", "atopic"); var service = new LiveData(); service.Connect(new RE.ServiceConnectOptions()); var testSymbol = new Symbol(new RE.Symbol(name)); var symbols = O.list(testSymbol.re()); var ticks = new List <RE.TickData>(); RE.GotTickData reTickListener = delegate(RE.Symbol s, RE.TickData t) { Bomb.unless(s.Equals(testSymbol.re()), () => "unexpected symbol: " + s.Name); ticks.Add(t); }; service.TickListener = reTickListener; service.SetWatchedSymbols(symbols); var jSymbol = testSymbol.javaSymbol(); var tick = new JTick(3.0, 20, 2.0, 4.0, 1.0, O.jDate(O.now())); jSymbol.jmsLive().publish(tick); O.sleep(100); var reTicks = Tick.reTicks(tick); logTick(reTicks[0]); logTick(ticks[12]); AreEqual(reTicks[0].time, ticks.GetRange(12, 4)[0].time); AreEqual(reTicks, ticks.GetRange(12, 4)); HasCount(16, ticks); }
public void testOldTicksGetSkipped() { var actual = new List <Tick>(); var listener = new Symbol.JTickListener(actual.Add, true); O.freezeNow("2008/09/29 09:18:00"); var oldTick = new JTick(3.0, 100, 2.0, 4.0, 1.5, util.Dates.date("2008/09/27 09:17:59")); listener.onTick(oldTick); IsEmpty(actual); var newTick = new JTick(3.0, 100, 2.0, 4.0, 1.5, util.Dates.date("2008/09/27 09:18:00")); listener.onTick(newTick); HasCount(4, actual); }
public Bar(systemdb.data.Tick tick) : this(tick.open, tick.high, tick.low, tick.last, date(tick.time)) { }
public Tick(JTick tick) : this(tick.last, (ulong)tick.volume, date(tick.time)) { }