Beispiel #1
0
        private string GetBTCUSDavg(int days)
        {
            DateTime dtto   = DateTime.Now;
            DateTime dtfrom = DateTime.Now.AddDays(days * -1);

            System.Text.StringBuilder sb = new System.Text.StringBuilder();



            sb.Append("{");

            sb.Append("\"BTCUSD\": [");
            BLL.ProfitRecordingCollection profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitfinex, BLL.ProfitRecording.enCurrency.USD, dtfrom, dtto, 1440, "BTC");
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"btcusds\":" + pf.ExchangeAsk);

                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("]");


            sb.Append("}");
            return(sb.ToString());
        }
Beispiel #2
0
        public static ProfitRecording GetLatestByExchangeAndCurrnecy(enExchange exchange, enCurrency currency, string arbSymbol)
        {
            ProfitRecording obj = new ProfitRecording();
            DataSet         ds  = new DAL.ProfitRecordings().GetLatestByExchangeAndCurrnecy(exchange, currency, arbSymbol);

            if (obj.MapData(ds) == false)
            {
                obj = null;
            }

            return(obj);
        }
Beispiel #3
0
        public static ProfitRecording GetById(int id)
        {
            ProfitRecording obj = new ProfitRecording();
            DataSet         ds  = new DAL.ProfitRecordings().GetById(id);

            if (obj.MapData(ds) == false)
            {
                obj = null;
            }

            return(obj);
        }
Beispiel #4
0
        private void BindPage()
        {
            lblProfits.InnerHtml += "<br>";

            string  strcolor = "green";
            decimal usdzar   = 0;
            decimal eurzar   = 0;
            decimal gbpzar   = 0;

            decimal cexusd      = 0;
            decimal bitfinexusd = 0;

            decimal biggestProfit = -100;


            System.Collections.Generic.List <BLL.ProfitRecording> pfs = new List <BLL.ProfitRecording>();


            BLL.ProfitRecording pf = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.USD, "BTC");

            //strcolor = (pf.ProfitPerc < 0 ? "red" : "green");
            //lblProfits.InnerHtml += "Bitlish USD: $" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" +strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            //usdzar = pf.CurrencyToZARExchangeRate;
            //pfs.Add(pf);
            //if (pf.ProfitPerc > biggestProfit) biggestProfit = pf.ProfitPerc;

            //pf = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitlish, BLL.ProfitRecording.enCurrency.EUR, "BTC");
            //strcolor = (pf.ProfitPerc < 0 ? "red" : "green");
            //lblProfits.InnerHtml += "Bitlish EUR: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            //eurzar = pf.CurrencyToZARExchangeRate;
            //pfs.Add(pf);
            //if (pf.ProfitPerc > biggestProfit) biggestProfit = pf.ProfitPerc;

            //lblProfits.InnerHtml += "<br>";



            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitstamp, BLL.ProfitRecording.enCurrency.USD, "BTC");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "Bitstamp USD: $" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            usdzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);
            if (pf.ProfitPerc > biggestProfit)
            {
                biggestProfit = pf.ProfitPerc;
            }

            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitstamp, BLL.ProfitRecording.enCurrency.EUR, "BTC");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "Bitstamp EUR: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            eurzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);
            if (pf.ProfitPerc > biggestProfit)
            {
                biggestProfit = pf.ProfitPerc;
            }

            lblProfits.InnerHtml += "<br>";



            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.USD, "BTC");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX USD: $" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            usdzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);
            if (pf.ProfitPerc > biggestProfit)
            {
                biggestProfit = pf.ProfitPerc;
            }
            cexusd = pf.ExchangeAsk;


            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.EUR, "BTC");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX EUR: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            pfs.Add(pf);
            if (pf.ProfitPerc > biggestProfit)
            {
                biggestProfit = pf.ProfitPerc;
            }

            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.GBP, "BTC");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX GBP: &pound;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            gbpzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);
            if (pf.ProfitPerc > biggestProfit)
            {
                biggestProfit = pf.ProfitPerc;
            }

            lblProfits.InnerHtml += "<br>";

            pf = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitfinex, BLL.ProfitRecording.enCurrency.USD, "BTC");
            //  strcolor = (pf.ProfitPerc < 0 ? "red" : "green");
            // lblProfits.InnerHtml += "Bitfinex USD: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            pfs.Add(pf);
            bitfinexusd = pf.ExchangeAsk;

            //    BLL.ProfitRecording latest = pfs.Find(delegate (BLL.ProfitRecording p) { return p.TimeStamp == pfs.Max(t => t.TimeStamp); });


            // lblProfits.InnerHtml += "<br>";
            lblProfits.InnerHtml += "Luno ZAR: R" + pf.LunoBid.ToString("0") + "<br>";
            lblProfits.InnerHtml += "<br>";
            lblProfits.InnerHtml += "USDZAR: R" + usdzar.ToString("0.00") + "<br>";
            lblProfits.InnerHtml += "EURZAR: R" + eurzar.ToString("0.00") + "<br>";
            lblProfits.InnerHtml += "GBPZAR: R" + gbpzar.ToString("0.00") + "<br>";



            lblCEXBitfinex.InnerHtml += "<br>CEX:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$" + cexusd.ToString("0");
            lblCEXBitfinex.InnerHtml += "<br>Bitfinex:&nbsp;&nbsp;$" + bitfinexusd.ToString("0");
            lblCEXBitfinex.InnerHtml += "<br>Perc difference:  " + (((cexusd / bitfinexusd) * 100) - 100).ToString("0.00") + "%";



            ((CryptoTrader.Template.Site) this.Page.Master).PageTitle = "Crypto Trades " + biggestProfit.ToString("0.00") + "%";
        }
Beispiel #5
0
        private static void GenerateETHProfitRecordings()
        {
            ProfitRecording pf = new ProfitRecording();

            var luno = LunoApi.GetLunoResult(10.00001M, LunoSymbolEnum.ETHZAR);

            //  decimal bestprice = ((luno.ask.price + luno.bid.price) / 2);

            //var bitlishUSD = BitlishApi.GetBestPrices(BitlsihSymbolEnum.EthUsd, 0.01m);
            //var bitlishEUR = BitlishApi.GetBestPrices(BitlsihSymbolEnum.EthEur, 0.01m);

            var cexUSD = CexApi.GetBestPrices(CEXSymbolEnum.Eth_Usd, 0.01m);
            var cexEUR = CexApi.GetBestPrices(CEXSymbolEnum.Eth_Eur, 0.01m);
            var cexGBP = CexApi.GetBestPrices(CEXSymbolEnum.Eth_Gbp, 0.01m);


            decimal usdzar = 0m;
            decimal eurzar = 0m;
            decimal rubzar = 0m;
            decimal gbpzar = 0m;


            try
            {
                usdzar = CurrencyHelper.ConvertToZAR(1, CurrencyHelper.CurrencyEnum.Usd);
                eurzar = CurrencyHelper.ConvertToZAR(1, CurrencyHelper.CurrencyEnum.Eur);
                rubzar = CurrencyHelper.ConvertToZAR(1, CurrencyHelper.CurrencyEnum.Rub);
                gbpzar = CurrencyHelper.ConvertToZAR(1, CurrencyHelper.CurrencyEnum.Gbp);
            }
            catch
            {
                // failed to get live rates - use latest
                ProfitRecording recEUR = GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.EUR, "BTC");
                ProfitRecording recUSD = GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.USD, "BTC");
                ProfitRecording recGBP = GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.GBP, "BTC");

                eurzar = recEUR.CurrencyToZARExchangeRate;
                usdzar = recUSD.CurrencyToZARExchangeRate;
                gbpzar = recGBP.CurrencyToZARExchangeRate;
            }

            decimal profPerc = 0;

            // Bitlish USD;
            //try
            //{
            //    profPerc = GetProfit(bitlishUSD.ask.price, luno.bid.price, usdzar, 0.4M, 4.84M, 2000);

            //    pf = new ProfitRecording();
            //    pf.Exchange = enExchange.Bitlish;
            //    pf.Currency = enCurrency.USD;
            //    pf.LunoBid = luno.bid.price;
            //    pf.ExchangeAsk = bitlishUSD.ask.price;
            //    pf.CurrencyToZARExchangeRate = usdzar;
            //    pf.ProfitPerc = profPerc;
            //    pf.ArbSymblol = "ETH";
            //    pf.Save();
            //}
            //catch
            //{// duplicate last recording

            //    ProfitRecording pflast = ProfitRecording.GetLatestByExchangeAndCurrnecy(enExchange.Bitlish, enCurrency.USD, "ETH");
            //    pf = new ProfitRecording();
            //    pf.Exchange = pflast.Exchange;
            //    pf.Currency = pflast.Currency;
            //    pf.LunoBid = pflast.LunoBid;
            //    pf.ExchangeAsk = pflast.ExchangeAsk;
            //    pf.CurrencyToZARExchangeRate = pflast.CurrencyToZARExchangeRate;
            //    pf.ProfitPerc = pflast.ProfitPerc;
            //    pf.ArbSymblol = "ETH";
            //    pf.Save();
            //}

            //// Bitlish EUR;
            //try
            //{
            //    profPerc = GetProfit(bitlishEUR.ask.price, luno.bid.price, eurzar, 0.4M, 4.35M, 1500);
            //    pf = new ProfitRecording();
            //    pf.Exchange = enExchange.Bitlish;
            //    pf.Currency = enCurrency.EUR;
            //    pf.LunoBid = luno.bid.price;
            //    pf.ExchangeAsk = bitlishEUR.ask.price;
            //    pf.CurrencyToZARExchangeRate = eurzar;
            //    pf.ProfitPerc = profPerc;
            //    pf.ArbSymblol = "ETH";
            //    pf.Save();
            //}
            //catch
            //{// duplicate last recording
            //    ProfitRecording pflast = ProfitRecording.GetLatestByExchangeAndCurrnecy(enExchange.Bitlish, enCurrency.EUR, "ETH");
            //    pf = new ProfitRecording();
            //    pf.Exchange = pflast.Exchange;
            //    pf.Currency = pflast.Currency;
            //    pf.LunoBid = pflast.LunoBid;
            //    pf.ExchangeAsk = pflast.ExchangeAsk;
            //    pf.CurrencyToZARExchangeRate = pflast.CurrencyToZARExchangeRate;
            //    pf.ProfitPerc = pflast.ProfitPerc;
            //    pf.ArbSymblol = "ETH";
            //    pf.Save();
            //}


            // CEX USD;
            try
            {
                profPerc       = GetProfit(cexUSD.ask.price, luno.bid.price, usdzar, 0.4M, 2.99M, 3000);
                pf             = new ProfitRecording();
                pf.Exchange    = enExchange.Cex;
                pf.Currency    = enCurrency.USD;
                pf.LunoBid     = luno.bid.price;
                pf.ExchangeAsk = cexUSD.ask.price;
                pf.CurrencyToZARExchangeRate = usdzar;
                pf.ProfitPerc = profPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }
            catch
            {// duplicate last recording
                ProfitRecording pflast = ProfitRecording.GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.USD, "ETH");
                pf             = new ProfitRecording();
                pf.Exchange    = pflast.Exchange;
                pf.Currency    = pflast.Currency;
                pf.LunoBid     = pflast.LunoBid;
                pf.ExchangeAsk = pflast.ExchangeAsk;
                pf.CurrencyToZARExchangeRate = pflast.CurrencyToZARExchangeRate;
                pf.ProfitPerc = pflast.ProfitPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }

            // CEX EUR;
            try
            {
                profPerc       = GetProfit(cexEUR.ask.price, luno.bid.price, eurzar, 0.4M, 2.99M, 3000);
                pf             = new ProfitRecording();
                pf.Exchange    = enExchange.Cex;
                pf.Currency    = enCurrency.EUR;
                pf.LunoBid     = luno.bid.price;
                pf.ExchangeAsk = cexEUR.ask.price;
                pf.CurrencyToZARExchangeRate = eurzar;
                pf.ProfitPerc = profPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }
            catch
            {// duplicate last recording
                ProfitRecording pflast = ProfitRecording.GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.EUR, "ETH");
                pf             = new ProfitRecording();
                pf.Exchange    = pflast.Exchange;
                pf.Currency    = pflast.Currency;
                pf.LunoBid     = pflast.LunoBid;
                pf.ExchangeAsk = pflast.ExchangeAsk;
                pf.CurrencyToZARExchangeRate = pflast.CurrencyToZARExchangeRate;
                pf.ProfitPerc = pflast.ProfitPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }

            // CEX GBP;
            try
            {
                profPerc       = GetProfit(cexGBP.ask.price, luno.bid.price, gbpzar, 0.4M, 2.99M, 2000);
                pf             = new ProfitRecording();
                pf.Exchange    = enExchange.Cex;
                pf.Currency    = enCurrency.GBP;
                pf.LunoBid     = luno.bid.price;
                pf.ExchangeAsk = cexGBP.ask.price;
                pf.CurrencyToZARExchangeRate = gbpzar;
                pf.ProfitPerc = profPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }
            catch
            { // duplicate last recording
                ProfitRecording pflast = ProfitRecording.GetLatestByExchangeAndCurrnecy(enExchange.Cex, enCurrency.GBP, "ETH");
                pf             = new ProfitRecording();
                pf.Exchange    = pflast.Exchange;
                pf.Currency    = pflast.Currency;
                pf.LunoBid     = pflast.LunoBid;
                pf.ExchangeAsk = pflast.ExchangeAsk;
                pf.CurrencyToZARExchangeRate = pflast.CurrencyToZARExchangeRate;
                pf.ProfitPerc = pflast.ProfitPerc;
                pf.ArbSymblol = "ETH";
                pf.Save();
            }
        }
Beispiel #6
0
        private string GetProfitJSON(int days, string arbSymbol)
        {
            DateTime dtto   = DateTime.Now;
            DateTime dtfrom = DateTime.Now.AddDays(days * -1);

            System.Text.StringBuilder sb = new System.Text.StringBuilder();



            sb.Append("{");

            sb.Append("\"BitlishUSD\": [");
            BLL.ProfitRecordingCollection profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitlish, BLL.ProfitRecording.enCurrency.USD, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("],");
            sb.Append("\"BitlishEUR\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitlish, BLL.ProfitRecording.enCurrency.EUR, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }

            sb.Append("],");
            sb.Append("\"BitstampUSD\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitstamp, BLL.ProfitRecording.enCurrency.USD, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("],");
            sb.Append("\"BitstampEUR\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitstamp, BLL.ProfitRecording.enCurrency.EUR, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }

            sb.Append("],");
            sb.Append("\"CEXUSD\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.USD, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("],");
            sb.Append("\"CEXEUR\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.EUR, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("],");
            sb.Append("\"CEXGBP\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.GBP, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("],");
            sb.Append("\"BitFinexUSD\": [");
            profits = BLL.ProfitRecordingCollection.GetByExchangeAndCurrecyBetween(BLL.ProfitRecording.enExchange.Bitfinex, BLL.ProfitRecording.enCurrency.USD, dtfrom, dtto, days, arbSymbol);
            for (int x = 0; x < profits.Count; x++)
            {
                BLL.ProfitRecording pf = profits[x];
                sb.Append("{");
                sb.Append("\"id\":" + pf.Id.ToString() + ",");
                sb.Append("\"ts\":\"" + pf.TimeStamp.ToString("d MMM yyyy, HH:mm") + "\",");
                sb.Append("\"p\":" + pf.ProfitPerc + ",");
                sb.Append("\"rate\":" + pf.CurrencyToZARExchangeRate + ",");
                sb.Append("\"ask\":" + pf.ExchangeAsk + ",");
                sb.Append("\"bid\":" + pf.LunoBid + "");
                sb.Append("}");

                if (x < profits.Count - 1)
                {
                    sb.Append(",");
                }
            }
            sb.Append("]");


            sb.Append("}");
            return(sb.ToString());
        }
Beispiel #7
0
        private void BindPage()
        {
            lblProfits.InnerHtml += "<br>";

            string  strcolor = "green";
            decimal usdzar   = 0;
            decimal eurzar   = 0;
            decimal gbpzar   = 0;

            decimal cexusd      = 0;
            decimal bitfinexusd = 0;

            System.Collections.Generic.List <BLL.ProfitRecording> pfs = new List <BLL.ProfitRecording>();


            BLL.ProfitRecording pf = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitlish, BLL.ProfitRecording.enCurrency.USD, "ETH");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "Bitlish USD: $" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            usdzar = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);

            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Bitlish, BLL.ProfitRecording.enCurrency.EUR, "ETH");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "Bitlish EUR: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            eurzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);

            lblProfits.InnerHtml += "<br>";

            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.USD, "ETH");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX USD: $" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            usdzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);
            cexusd = pf.ExchangeAsk;


            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.EUR, "ETH");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX EUR: &euro;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            pfs.Add(pf);
            pf                    = BLL.ProfitRecording.GetLatestByExchangeAndCurrnecy(BLL.ProfitRecording.enExchange.Cex, BLL.ProfitRecording.enCurrency.GBP, "ETH");
            strcolor              = (pf.ProfitPerc < 0 ? "red" : "green");
            lblProfits.InnerHtml += "CEX GBP: &pound;" + pf.ExchangeAsk.ToString("0") + ":  <font color=\"" + strcolor + "\">" + pf.ProfitPerc.ToString("0.00") + "%</font> @ " + pf.TimeStamp.ToString("d MMM yyyy, HH:mm:ss") + " <br>";
            gbpzar                = pf.CurrencyToZARExchangeRate;
            pfs.Add(pf);

            lblProfits.InnerHtml += "<br>";



            BLL.ProfitRecording latest = pfs.Find(delegate(BLL.ProfitRecording p) { return(p.TimeStamp == pfs.Max(t => t.TimeStamp)); });


            lblProfits.InnerHtml += "<br>";
            lblProfits.InnerHtml += "Luno ZAR: R" + latest.LunoBid.ToString("0") + "<br>";
            lblProfits.InnerHtml += "<br>";
            lblProfits.InnerHtml += "USDZAR: R" + usdzar.ToString("0.00") + "<br>";
            lblProfits.InnerHtml += "EURZAR: R" + eurzar.ToString("0.00") + "<br>";
            lblProfits.InnerHtml += "GBPZAR: R" + gbpzar.ToString("0.00") + "<br>";
        }