private void GetTrades(BinanceSymbolViewModel symbol = null)
        {
            if (symbol == null)
            {
                symbol = SelectedSymbol;
            }

            using (var client = new BinanceClient())
            {
                //var result = client.GetMyTrades(Global.GetBinanceSymbolName(symbol.Symbol)); // Not sure if this will fix IOTA or not
                var result = client.GetMyTrades(symbol.Symbol);
                if (result.Success)
                {
                    //SelectedSymbol.AggregateTrades = new ObservableCollection<AggregateTradeViewModel>(result.Data.OrderByDescending(d => d.Timestamp).Select(t => new AggregateTradeViewModel(symbol, t)));
                    symbol.Trades = new ObservableCollection <TradeViewModel>(result.Data.OrderByDescending(d => d.Time).Select(t => new TradeViewModel(symbol.Symbol, t)
                    {
                        TradeSymbol = AllPrices.Where(price => price.Symbol == symbol.Symbol).FirstOrDefault()
                    }));

                    var ledgerAsset = Ledger.Where(ledge => ledge.Asset == symbol.SymbolAsset).FirstOrDefault();
                    if (ledgerAsset != null)
                    {
                        ledgerAsset.AddTrades(symbol.Trades);
                    }
                }
                else
                {
                    messageBoxService.ShowMessage($"Error getting trade data for [{symbol.Symbol}]: {result.Error.Message}", "error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
        private void GetOrders(BinanceSymbolViewModel symbol = null)
        {
            if (symbol == null)
            {
                symbol = SelectedSymbol;
            }
            if (symbol == null)
            {
                return;
            }

            using (var client = new BinanceClient())
            {
                var result = client.GetAllOrders(symbol.Symbol);
                if (result.Success)
                {
                    symbol.AddOrders(result.Data.OrderByDescending(d => d.Time).Select(o => new OrderViewModel()
                    {
                        Id = o.OrderId,
                        ExecutedQuantity = o.ExecutedQuantity,
                        OriginalQuantity = o.OriginalQuantity,
                        Price            = o.Price,
                        Side             = o.Side,
                        Status           = o.Status,
                        Symbol           = o.Symbol,
                        Time             = o.Time,
                        Type             = o.Type
                    }));
                }
                else
                {
                    messageBoxService.ShowMessage($"Error getting orders.\n{result.Error.Message}", $"Error Code: {result.Error.Code}", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }