public OrderInfo CheckOrder(String symbol, int orderId) { lock (_lock) { return(BinanceService.CheckOrderStatus(symbol, orderId)); } }
public bool CancelOrder(String symbol, int orderId) { lock (_lock) { return(BinanceService.CancelOrder(symbol, orderId)); } }
public OrderInfo PlaceSellOrder(String symbol, double amount, double price) { lock (_lock) { return(BinanceService.PlaceSellOrder(symbol, amount, price, "LIMIT")); } }
public AccountInfo GetAccountInfo() { lock (_lock) { return(BinanceService.GetAccountInfo());; } }
public List <TradeInfo> GetTradeHistory(String symbol) { lock (_lock) { return(BinanceService.GetTrades(symbol)); } }
private void Refresh() { if (Monitor.TryEnter(_lock)) { try { List <Prices> latestPrices = BinanceService.ListPrices(); OnExchangeRateReady?.Invoke(latestPrices); lock (_tradeDataCallbacks) { foreach (KeyValuePair <String, Action <List <TradeInfo> > > entry in _tradeDataCallbacks) { if (entry.Value != null) { List <TradeInfo> tradeInfo = BinanceService.GetTrades(entry.Key); entry.Value.Invoke(tradeInfo); } } } } finally { Monitor.Exit(_lock); } } }
/// <summary>コンストラクタ</summary> /// <param name="config">設定(DI)</param> /// <param name="binance">バイナンスサービス(DI)</param> /// <param name="csv">CSV(DI)</param> public MarketFunction(Settings config, BinanceService binance, ICSVManipulator csv, IExchengerates exchengerates) { Config = config; Binance = binance; CSV = csv; Excheangerates = exchengerates; }
public BinanceNewOrderCheckHandler(BinanceService exchangeService, ILogger <BinanceService> log, IMicroBus bus, BinanceConfig config) { _exchangeService = exchangeService; _log = log; _bus = bus; _config = config; }
public void ReportTest() { var binance = new Mock <IBinanceManipulator>(); var discord = new Mock <IDiscordManipulator>(); var assert = new List <IEnumerable <Summary> >(); discord.Setup(x => x.PostTable(It.IsAny <IEnumerable <Summary> >())).Callback <IEnumerable <Summary> >(x => assert.Add(x)); var target = new BinanceService(binance.Object, new SQLite(new Settings() { SQLiteConnectionString = "Data Source=..\\..\\..\\TestData\\Report.sqlite" }), discord.Object); var symbol = new[] { "BTCUSDT" }; target.Report(symbol, 100); $"{string.Join(",", symbol)}の情報を取得すること" .x(() => { binance.Verify(d => d.GetMarket(symbol), Times.Once); }); "Discordへポストすること" .x(() => { discord.Verify(d => d.PostTable(It.IsAny <IEnumerable <Summary> >()), Times.Exactly(2)); }); "ポストするデータのチェック" .x(() => { assert.Should().HaveCount(2); assert[0].Should().HaveCount(1); assert[1].Should().HaveCount(0); }); }
public void Test1() { var binanceClient = new BinanceClient(Configuration); var bs = new BinanceService(binanceClient, Log, repo); var accInfo = bs.GetSymbolValuesForAccount(); Assert.Pass(); }
public BinanceDepositWithdrawalHandler( BinanceService binanceService, BinanceConfig config, GeneralConfig generalConfig, IMicroBus bus) { _binanceService = binanceService; _config = config; _generalConfig = generalConfig; _bus = bus; }
public BinanceBagAndDustHandler( IMicroBus bus, BinanceConfig config, BinanceService binanceService, DatabaseService databaseService, GeneralConfig generalConfig) { _bus = bus; _config = config; _binanceService = binanceService; _databaseService = databaseService; _generalConfig = generalConfig; }
public async Task <IActionResult> UzzoBinance(SearchPrice obj_SearchPrice) { BinanceService objBinanceService = new BinanceService(_configuration, db_UzzoBinance); await objBinanceService.SearchPrice(); //Instanciando serviço que será utilizado UzzoPayService obj_ListSymbolPrice = new UzzoPayService(db_UzzoBinance); //Retornando para viewModel o resultado do select List <SymbolPrice> obj_ViewModel = obj_ListSymbolPrice.SelectLastPrices(); //Retornando para view os últimos preços salvos return(View(obj_ViewModel)); }
public DiscordClient(GuidService guidService, CoursesService coursesService, BalanceService balanceService, AccountService accountService, BinanceService binanceService, HostConfig config) { this.guidService = guidService; this.coursesService = coursesService; this.balanceService = balanceService; this.accountService = accountService; this.binanceService = binanceService; this.config = config; client = new DiscordSocketClient(); client.Log += LogAsync; client.Ready += ReadyAsync; client.MessageReceived += MessageReceivedAsync; }
static void Main(string[] args) { if (args.Count() != 2) { Console.WriteLine("Error. Usage BinanceExecute.exe [binance key] [binance secret]"); Console.WriteLine("Press enter to exit"); Console.ReadLine(); Environment.Exit(0); } TimeSpan maxTradeData = TimeSpan.FromHours(12); TimeSpan refreshData = TimeSpan.FromSeconds(1); string key = args[0]; string secret = args[1]; var binanceClient = new BinanceClient.BinanceClient(key, secret); var binanceService = new BinanceService(binanceClient); IBinanceDataPool binanceDataPool = new BinanceDataPool(binanceService); binanceDataPool.Start(refreshData); List <ICurrency> allCurrencies = Currency.AllCurrencies.Where(curr => curr != Currency.UsDollar).ToList(); List <IExchangeRate> allExchangeRates = allCurrencies.Select(curr => (IExchangeRate) new ExchangeRate(curr, Currency.UsDollar, binanceDataPool, maxTradeData)).ToList(); IExchangeRate liteCoinExchangeRate = allExchangeRates.FirstOrDefault(exc => exc.ReferenceCurrency == Currency.UsDollar && exc.MainCurrency == Currency.LiteCoin); Account account = new Account(binanceDataPool, allCurrencies, allExchangeRates, maxTradeData); DoWork(account, refreshData, binanceDataPool, false); /* List<ITrade> trades = allCurrencies.Select(currency => allCurrencies. * Select(referenceCurrency => new KeyValuePair<ICurrency, ICurrency>(currency, referenceCurrency)). * Where(keyPairVal => keyPairVal.Key != keyPairVal.Value)). * SelectMany(keyPairVals => keyPairVals).Select(keyPairVal => * new Trade(binanceDataPool, keyPairVal.Key, keyPairVal.Value, allExchangeRates) as ITrade).ToList(); * */ /*IExchangeRate exchangeRate = new ExchangeRate(Currency.Ethereum, Currency.Bitcoin, binanceService, exchangeRatePool, maxTradeData); * Order order = new Order(exchangeRate, 0.0056, binanceService); * order.PlaceBuyOrder(); */ /* * var getAccount = binanceService.GetAccountAsync(); * Task.WaitAll(getAccount); * dynamic account = getAccount.Result; * Console.WriteLine(account);*/ //GET TICKER DEPTH /*var getDepth = binanceService.GetDepthAsync("BTCUSDT"); * Task.WaitAll(getDepth); * dynamic depth = getDepth.Result; * Console.WriteLine(depth);*/ /*IExchangeRatePool exchangeRatePool = new BinanceDataPool(binanceService); * exchangeRatePool.Start(TimeSpan.FromSeconds(0.5)); * * IExchangeRate bitCoinExchangeRate = new ExchangeRate(Currency.Bitcoin, Currency.UsDollar, binanceService, exchangeRatePool, maxTradeData); * IExchangeRate binanceCoinExchangeRate = new ExchangeRate(Currency.BinanceCoin, Currency.UsDollar, binanceService, exchangeRatePool, maxTradeData); * IExchangeRate ethereumExchangeRate = new ExchangeRate(Currency.Ethereum, Currency.UsDollar, binanceService, exchangeRatePool, maxTradeData); * IExchangeRate liteCoinExchangeRate = new ExchangeRate(Currency.LiteCoin, Currency.UsDollar, binanceService, exchangeRatePool, maxTradeData); * * * Thread.Sleep(500000);*/ /* * //GET ACCOUNT INFORMATION * var getAccount = binanceService.GetAccountAsync(); * Task.WaitAll(getAccount); * dynamic account = getAccount.Result; * Console.WriteLine(account); * * //GET ORDERS FOR SYMBOL * var getOrders = binanceService.GetOrdersAsync("BNBBTC", 100); * Task.WaitAll(getOrders); * dynamic orders = getOrders.Result; * Console.WriteLine(orders); * * //GET MY TRADES * var getMyTrades = binanceService.GetTradesAsync("WTCBTC"); * Task.WaitAll(getAccount); * dynamic trades = getMyTrades.Result; * Console.WriteLine(trades); * * //GET ALL PRICES * List<Prices> prices = new List<Prices>(); * prices = binanceService.ListPrices(); * Console.WriteLine(prices);*/ //GET PRICE OF SYMBOL /*double symbol = binanceService.GetPriceOfSymbol("BTCUSDT"); * Console.WriteLine("Price of BNB: " + symbol);*/ /*//PLACE BUY ORDER * var placeBuyOrder = binanceService.PlaceBuyOrderAsync("NEOBTC", 1.00, 00.008851); * Task.WaitAll(placeBuyOrder); * dynamic buyOrderResult = placeBuyOrder.Result; * Console.WriteLine(buyOrderResult); * * //PLACE SELL ORDER * var placeSellOrder = binanceService.PlaceSellOrderAsync("NEOBTC", 1.00, 00.008851); * Task.WaitAll(placeSellOrder); * dynamic sellOrderResult = placeSellOrder.Result; * Console.WriteLine(sellOrderResult); * * //TEST ORDER--------------------------------------------------------------------------- * var placeOrderTest = binanceService.PlaceTestOrderAsync("NEOBTC", "SELL", 1.00, 00.006151); * Task.WaitAll(placeOrderTest); * dynamic testOrderResult = placeOrderTest.Result; * Console.WriteLine(testOrderResult); * //------------------------------------------------------------------------------------- * * //CHECK ORDER STATUS BY ID * var checkOrder = binanceService.CheckOrderStatusAsync("NEOBTC", 5436663); * Task.WaitAll(checkOrder); * dynamic checkOrderResult = checkOrder.Result; * Console.WriteLine(checkOrderResult); * * //DELETE ORDER BY ID * var deleteOrder = binanceService.CancelOrderAsync("NEOBTC", 5436663); * Task.WaitAll(deleteOrder); * dynamic deleteOrderResult = deleteOrder.Result; * Console.WriteLine(deleteOrderResult);*/ Console.ReadLine(); }
static void Main(string[] args) { var binanceClient = new BinanceAPI.BinanceClient(); var binanceService = new BinanceService(binanceClient); //GET TICKER DEPTH var getDepth = binanceService.GetDepthAsync("BNBBTC"); Task.WaitAll(getDepth); dynamic depth = getDepth.Result; Console.WriteLine(depth); //GET ACCOUNT INFORMATION var getAccount = binanceService.GetAccountAsync(); Task.WaitAll(getAccount); dynamic account = getAccount.Result; Console.WriteLine(account); //GET ORDERS FOR SYMBOL var getOrders = binanceService.GetOrdersAsync("BNBBTC", 100); Task.WaitAll(getOrders); dynamic orders = getOrders.Result; Console.WriteLine(orders); //GET MY TRADES var getMyTrades = binanceService.GetTradesAsync("WTCBTC"); Task.WaitAll(getAccount); dynamic trades = getMyTrades.Result; Console.WriteLine(trades); //GET ALL PRICES List <Prices> prices = new List <Prices>(); prices = binanceService.ListPrices(); Console.WriteLine(prices); //GET PRICE OF SYMBOL double symbol = binanceService.GetPriceOfSymbol("BNBBTC"); Console.WriteLine("Price of BNB: " + symbol); //PLACE BUY ORDER var placeBuyOrder = binanceService.PlaceBuyOrderAsync("NEOBTC", 1.00, 00.008851); Task.WaitAll(placeBuyOrder); dynamic buyOrderResult = placeBuyOrder.Result; Console.WriteLine(buyOrderResult); //PLACE SELL ORDER var placeSellOrder = binanceService.PlaceSellOrderAsync("NEOBTC", 1.00, 00.008851); Task.WaitAll(placeSellOrder); dynamic sellOrderResult = placeSellOrder.Result; Console.WriteLine(sellOrderResult); //TEST ORDER--------------------------------------------------------------------------- var placeOrderTest = binanceService.PlaceTestOrderAsync("NEOBTC", "SELL", 1.00, 00.006151); Task.WaitAll(placeOrderTest); dynamic testOrderResult = placeOrderTest.Result; Console.WriteLine(testOrderResult); //------------------------------------------------------------------------------------- //CHECK ORDER STATUS BY ID var checkOrder = binanceService.CheckOrderStatusAsync("NEOBTC", 5436663); Task.WaitAll(checkOrder); dynamic checkOrderResult = checkOrder.Result; Console.WriteLine(checkOrderResult); //DELETE ORDER BY ID var deleteOrder = binanceService.CancelOrderAsync("NEOBTC", 5436663); Task.WaitAll(deleteOrder); dynamic deleteOrderResult = deleteOrder.Result; Console.WriteLine(deleteOrderResult); }
public BinanceBalanceCheckHandler(BinanceService exchangeService, BinanceConfig config, IMicroBus bus) { _exchangeService = exchangeService; _config = config; _bus = bus; }
public PriceService(BittrexService bittrexService, PoloniexService poloniexService, BinanceService binanceService) { _bittrexService = bittrexService; _poloniexService = poloniexService; _binanceService = binanceService; }
public BinanceSymbolGenerateHandler(BinanceService binanceService) { _binanceService = binanceService; }
public TelegramMessageUpdateController(MainService mainService, BinanceService binanceService) { this.mainService = mainService; this.binanceService = binanceService; }