Beispiel #1
0
        public async Task Initialize()
        {
            if (status == BootupStatus.Initializing || status == BootupStatus.Initialized)
            {
                return;
            }

            status = BootupStatus.Initializing;

            var client = new ApiHttpClient();
            var dict   = await client.Public.GetTicker();

            foreach (var item in dict)
            {
                var val  = item.Value;
                var tick = new Tick
                {
                    CurrencyPair  = item.Key,
                    Last          = val.Last,
                    LowestAsk     = val.LowestAsk,
                    HighestBid    = val.HighestBid,
                    PercentChange = val.PercentChange,
                    BaseVolume    = val.BaseVolume,
                    QuoteVolume   = val.Quotevolume,
                    IsFrozen      = val.IsFrozen,
                };
                map[tick.CurrencyPair] = tick;
            }

            status = BootupStatus.Initialized;
        }
Beispiel #2
0
        static async void StartInitialization()
        {
            status        = BootupStatus.Initializing;
            currencyPairs = await MarketsHelper.GetMarkets();

            status = BootupStatus.Initialized;
            initializationTask.TrySetResult(0);
        }
Beispiel #3
0
        public static Task Initialize()
        {
            if (status == BootupStatus.None)
            {
                status = BootupStatus.Initializing;
                StartInitialization();
            }

            return(initializationTask.Task);

            /*async void init()
             * {
             *  initializationTask = new TaskCompletionSource<int>();
             *  status = BootupStatus.Initializing;
             *  currencyPairs = await MarketsHelper.GetMarkets();
             *  status = BootupStatus.Initialized;
             *  initializationTask.TrySetResult(0);
             * }*/
        }
Beispiel #4
0
        public static async Task Initialize()
        {
            if (status == BootupStatus.Initializing || status == BootupStatus.Initialized)
            {
                return;
            }

            status = BootupStatus.Initializing;

            // boot up the Poloniex websocket client
            var client = new PoloniexWebSocketClient();
            await client.Connect();

            await client.SubscribeToTicker();

            // boot up the user list
            users = await LoadUsers();

            Ticker.Current.Subscribe("BTC_ETH", ProcessTick);

            status = BootupStatus.Initialized;
        }