コード例 #1
0
ファイル: Program.cs プロジェクト: GVNCoder/BFTickMeter
        public static void Main(string[] args)
        {
            // get all machine adapters
            var adapters = AdapterHelper.GetAdapters();

            // print adapters with index for select
            PrintAdapters(adapters);

            // getting adapter index from user
            var adapterUserIndex = SelectAdapterIndex();
            var adapterIndex     = adapterUserIndex - 1;
            var adapter          = adapters[adapterIndex];

            // getting ip settings
            var settingsLoader = SettingsLoader.CreateInstance();

            settingsLoader.Load(out var settings, __BaseDirectory);

            // clear console
            Console.Clear();

            var tracker = new TickTracker(adapter, settings);

            tracker.Update += (sender, e) =>
            {
                // update console view here
                Console.Clear();
                Console.WriteLine($"Tickrate: Stamp: {e.CurrentRate} Avg: {e.Average} Max: {e.MaxRate} Min {e.MinRate}");
            };
            tracker.Start();

            Console.Read();
        }
コード例 #2
0
ファイル: TestTickTracker.cs プロジェクト: antonywu/tradelink
        public void Basics()
        {
            kt = new TickTracker();

            // startup tests
            Assert.IsFalse(kt[sym].isValid,"valid tick at startup");
            Assert.IsFalse(kt[sym].isTrade,"trade at startup");
            Assert.IsFalse(kt[sym].isQuote,"quote at startup");
            Assert.IsFalse(kt[sym].hasAsk,"ask at startup");
            Assert.IsFalse(kt[sym].hasBid,"bid at startup");

            // trade occurs
            kt.newTick(TickImpl.NewTrade(sym, p, s));

            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym),"wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsFalse(kt[sym].hasBid, "bid at startup");

            // bid
            kt.newTick(TickImpl.NewBid(sym, p, s));
            // verify bid
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.AreEqual(p, kt.Bid(sym), "wrong bid price");
            Assert.AreEqual(ss, kt[sym].bs, "wrong bid size");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // verify trade still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym), "wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // ask
            kt.newTick(TickImpl.NewAsk(sym, p, s));
            // verify ask
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isFullQuote, "no quote at startup");
            Assert.AreEqual(p, kt.Ask(sym), "wrong ask price");
            Assert.AreEqual(ss, kt[sym].os, "wrong ask size");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");


            // verify trade still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym), "wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // verify bid still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isFullQuote, "no quote at startup");
            Assert.AreEqual(p, kt.Bid(sym), "wrong bid price");
            Assert.AreEqual(ss, kt[sym].bs, "wrong bid size");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");


            

            
        }
コード例 #3
0
        public void Basics()
        {
            kt = new TickTracker();

            // startup tests
            Assert.IsFalse(kt[sym].isValid, "valid tick at startup");
            Assert.IsFalse(kt[sym].isTrade, "trade at startup");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsFalse(kt[sym].hasBid, "bid at startup");

            // trade occurs
            kt.newTick(TickImpl.NewTrade(sym, p, s));

            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym), "wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsFalse(kt[sym].hasBid, "bid at startup");

            // bid
            kt.newTick(TickImpl.NewBid(sym, p, s));
            // verify bid
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.AreEqual(p, kt.Bid(sym), "wrong bid price");
            Assert.AreEqual(ss, kt[sym].bs, "wrong bid size");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // verify trade still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym), "wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsFalse(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // ask
            kt.newTick(TickImpl.NewAsk(sym, p, s));
            // verify ask
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isFullQuote, "no quote at startup");
            Assert.AreEqual(p, kt.Ask(sym), "wrong ask price");
            Assert.AreEqual(ss, kt[sym].os, "wrong ask size");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");


            // verify trade still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isTrade, "no trade at startup");
            Assert.AreEqual(p, kt.Last(sym), "wrong trade price");
            Assert.AreEqual(s, kt[sym].size, "wrong trade size");
            Assert.IsFalse(kt[sym].isQuote, "quote at startup");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");

            // verify bid still shows
            Assert.IsTrue(kt[sym].isValid, "no valid tick at startup");
            Assert.IsTrue(kt[sym].isFullQuote, "no quote at startup");
            Assert.AreEqual(p, kt.Bid(sym), "wrong bid price");
            Assert.AreEqual(ss, kt[sym].bs, "wrong bid size");
            Assert.IsTrue(kt[sym].hasAsk, "ask at startup");
            Assert.IsTrue(kt[sym].hasBid, "bid at startup");
        }