Beispiel #1
0
        public void Execute()
        {
            GameManager manager  = new GameManager();
            StartReply  level    = manager.StartLevel("first_steps");
            int         instance = level.InstanceId;

            string account   = level.Account;
            string venueName = level.Venues[0];
            string symbol    = level.Stocks[0];

            Market market = new Market(account, level.Venues);

            market.MonitorStock(venueName, symbol);

            for (int i = 0; i < 100; i++)
            {
                GetQuoteReply quote = market.GetQuote(venueName, symbol);
                market.PlaceOrder(venueName, symbol, new Fill(quote.AskSize, 1, Utils.Direction.Buy), Utils.OrderType.Limit);
            }

            Console.ReadKey();

            //var values = market.GetQuotes(venueName, symbol).Where(x => x.Ask != 0 && x.Bid != 0);
            //string csv = string.Join(Environment.NewLine, values.Select(d => d.LastTrade.ToString("HH:mm:ss.ffffff") + "," + d.Ask + "," + d.Bid + "," + d.Last));

            manager.StopLevel(instance);
        }
        public static T GetProxy <T> (BusType bus_type, string bus_name, string object_path, bool start)
        {
            if (bus_name == null)
            {
                throw new ArgumentNullException("bus_name");
            }
            else if (object_path == null)
            {
                throw new ArgumentNullException("object_path");
            }
            else if (bus_type < BusType.Session || bus_type > BusType.System)
            {
                throw new ArgumentOutOfRangeException("bus_type");
            }

            Bus bus = null;

            switch (bus_type)
            {
            case BusType.Session:
                bus = Bus.Session;
                break;

            case BusType.System:
                bus = Bus.System;
                break;
            }

            if (!bus.NameHasOwner(bus_name))
            {
                StartReply reply = bus.StartServiceByName(bus_name);
                if (reply != StartReply.Success && reply != StartReply.AlreadyRunning)
                {
                    throw new DBusProxyObjectNotFound(typeof(T).FullName);
                }
            }

            T proxy = bus.GetObject <T> (bus_name, new ObjectPath(object_path));

            if (proxy == null)
            {
                throw new DBusProxyObjectNotFound(typeof(T).FullName);
            }

            return(proxy);
        }