Exemplo n.º 1
0
        public void NewOrder(Common.StockExchange.Types.StockExchange stockExchange, string currency)
        {
            //AccountBalance accountBalance = new AccountBalance(stockExchange.ToString());

            BaseRequest baseRequest = new BaseRequest("/v1/order/new", GetNonce());
            string      response    = SendRequest(baseRequest, "POST");

            JArray resultsJson = JsonConvert.DeserializeObject <JArray>(response);

            foreach (JToken ticker in resultsJson)
            {
                //string account = ticker["type"].ToString();
                //string currencyTicker = ticker["currency"].ToString().ToUpper();
                //decimal availableBalance = Convert.ToDecimal(ticker["available"]);
                //decimal amountBalance = Convert.ToDecimal(ticker["amount"]);

                //if(currencyTicker.Equals(currency))
                //{
                //    //accountBalance.Balances.Add(new Balance(account, currencyTicker, availableBalance, amountBalance));
                //}
            }
        }
Exemplo n.º 2
0
        public async Task <string> GetSelectedPairs(Common.StockExchange.Types.StockExchange stockExchange, string pairs, List <string> selectedPairs)
        {
            StringBuilder stringBuilder = new StringBuilder();
            string        results       = string.Empty;

            await Task.Run(() =>
            {
                if (selectedPairs.Count > 0)
                {
                    switch (stockExchange)
                    {
                    case Common.StockExchange.Types.StockExchange.Bitfinex:
                        foreach (string pair in pairs.Split(','))
                        {
                            foreach (string selectedPair in selectedPairs)
                            {
                                if (pair.TrimStart('t').Equals(selectedPair.Replace("/", string.Empty)))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;

                    case Common.StockExchange.Types.StockExchange.Bitstamp:
                        foreach (string selectedPair in selectedPairs)
                        {
                            foreach (string pair in pairs.Split(','))
                            {
                                if (pair.Equals(selectedPair.Replace("/", string.Empty).ToLower()))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;

                    case Common.StockExchange.Types.StockExchange.Gdax:
                        foreach (string selectedPair in selectedPairs)
                        {
                            foreach (string pair in pairs.Split(','))
                            {
                                if (pair.Equals(selectedPair.Replace("/", "-")))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;

                    case Common.StockExchange.Types.StockExchange.Gemini:
                        foreach (string selectedPair in selectedPairs)
                        {
                            foreach (string pair in pairs.Split(','))
                            {
                                if (pair.Equals(selectedPair.Replace("/", string.Empty).ToLower()))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;

                    case Common.StockExchange.Types.StockExchange.QuadrigaCx:
                        foreach (string selectedPair in selectedPairs)
                        {
                            foreach (string pair in pairs.Split(','))
                            {
                                if (pair.Replace("_cad", "_usd").Equals(selectedPair.Replace("/", "_").ToLower()))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;

                    case Common.StockExchange.Types.StockExchange.Kraken:
                        foreach (string selectedPair in selectedPairs)
                        {
                            foreach (string pair in pairs.Split(','))
                            {
                                if (pair.Replace("XBT", "BTC").Replace("DASH", "DSH").Equals(selectedPair.Replace("/", string.Empty)))
                                {
                                    stringBuilder = stringBuilder.Append(pair).Append(",");
                                }
                            }
                        }
                        results = stringBuilder.ToString().TrimEnd(',');
                        break;
                    }
                }
                else
                {
                    results = pairs;
                }
            });

            return(results);
        }
Exemplo n.º 3
0
        public async Task <ITickers> GetTicker([FromBody] CompositeStockExchangeObject compositeStockExchangeObject)
        {
            decimal exchangeRate = compositeStockExchangeObject.ExchangeRate;

            Common.StockExchange.Types.StockExchange selectedStockExchange = compositeStockExchangeObject.StockExchange;
            string selectedPairs = compositeStockExchangeObject.SelectedPairs;

            IStockExchanges stockExchanges;

            switch (selectedStockExchange)
            {
            case Common.StockExchange.Types.StockExchange.Binance:
                stockExchanges = new Binance();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Bitfinex:
                stockExchanges = new Bitfinex();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Bitmex:
                stockExchanges = new Bitmex();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Bitstamp:
                stockExchanges = new Bitstamp();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Bittrex:
                stockExchanges = new Bittrex();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Cex:
                stockExchanges = new Cex();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Exmo:
                stockExchanges = new Exmo();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Gdax:
                stockExchanges = new Gdax();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Gemini:
                stockExchanges = new Gemini();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Kraken:
                stockExchanges = new Kraken();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.Poloniex:
                stockExchanges = new Poloniex();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            case Common.StockExchange.Types.StockExchange.QuadrigaCx:
                stockExchanges = new QuadrigaCx();
                return(await stockExchanges.GetTickers(selectedPairs, exchangeRate));

            default:
                throw new NullStockExchangeException("Invalid StockExchange Selection");
            }
        }