예제 #1
0
        public IActionResult Index()
        {
            GetterCex gc=new GetterCex();
            GetterKoineks gk=new GetterKoineks();
            USDInfo a=gc.getCoinUSD();
            var b=gk.getKoineksData();
            decimal usd2Tl = Convert.ToDecimal(ForexService.getForex(), new CultureInfo("en-US"));
            List<PriceComparison> comparisons = new List<PriceComparison>();
            foreach (Currency currency in a.data)
            {
                if(currency.symbol1=="ZEC" || currency.symbol1 == "BCH") continue;
                PriceComparison comparison = new PriceComparison
                {
                    Currency = currency.symbol1,
                    Ask = Convert.ToDecimal(currency.lprice, new CultureInfo("en-US")),
                    Exchange = "CEX"
                };
                comparisons.Add(comparison);
            }

            comparisons.Add(new PriceComparison
            {
                Currency = b.BTC.short_code,
                Ask = Convert.ToDecimal(b.BTC.ask, new CultureInfo("en-US")) / usd2Tl,
                Bid = Convert.ToDecimal(b.BTC.bid, new CultureInfo("en-US")) / usd2Tl,
                Disparity = decimal.Parse(b.BTC.bidUSD, new NumberFormatInfo() { NumberDecimalSeparator = "," })  - Convert.ToDecimal(a.data.Where(x => x.symbol1 == "BTC").Select(x => x.lprice).FirstOrDefault(), new CultureInfo("en-US")),
                Exchange = "Koineks"
            });

            comparisons.Add(new PriceComparison
            {
                Currency = b.ETH.short_code,
                Ask = Convert.ToDecimal(b.ETH.ask, new CultureInfo("en-US")) / usd2Tl,
                Bid = Convert.ToDecimal(b.ETH.bid, new CultureInfo("en-US")) / usd2Tl,
                Disparity = decimal.Parse(b.ETH.bidUSD, new NumberFormatInfo() { NumberDecimalSeparator = "," }) - Convert.ToDecimal(a.data.Where(x => x.symbol1 == "ETH").Select(x => x.lprice).FirstOrDefault(), new CultureInfo("en-US")),
                Exchange = "Koineks"
            });

            comparisons.Add(new PriceComparison
            {
                Currency = b.DASH.short_code,
                Ask = Convert.ToDecimal(b.DASH.ask, new CultureInfo("en-US"))/ usd2Tl,
                Bid = Convert.ToDecimal(b.DASH.bid, new CultureInfo("en-US"))/ usd2Tl,
                Disparity = decimal.Parse(b.DASH.bidUSD, new NumberFormatInfo() { NumberDecimalSeparator = "," }) - Convert.ToDecimal(a.data.Where(x => x.symbol1 == "DASH").Select(x => x.lprice).FirstOrDefault(), new CultureInfo("en-US")),
                Exchange = "Koineks"
            });


            return View(comparisons);
        }
예제 #2
0
        public USDInfo getCoinUSD()
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://cex.io/api/last_prices/USD/");

            request.Headers.Add("ContentType", "application/xml");
            request.Method            = WebRequestMethods.Http.Get;
            request.AllowAutoRedirect = true;
            request.Proxy             = null;
            HttpWebResponse response     = (HttpWebResponse)request.GetResponse();
            Stream          stream       = response.GetResponseStream();
            StreamReader    streamreader = new StreamReader(stream);
            string          jsonResponse = streamreader.ReadToEnd();
            USDInfo         mm           = JsonConvert.DeserializeObject <USDInfo>(jsonResponse);

            return(mm);
        }