private async Task <Unit> PriceUpdated(Ticker ticker) { if (!IsInTestMode) { await _traderGrain.UpdateTrades(TraderState.Trades); await _hubNotifier.UpdateTicker(ticker); } return(Unit.Default); }
private async Task <Unit> PriceUpdated(Ticker ticker) { Ticker = ticker; if (_lastCandleUpdateTime.Expired(TimeSpan.FromMinutes(30), DateTime.UtcNow)) { _lastCandleUpdateTime = DateTime.UtcNow; var candlesResponse = await _cryptoApi.GetCandlesAsync(Market, TickInterval.OneHour); _coinTrader.Candles = candlesResponse.Content; } if (!IsInTestMode) { await _traderGrain.UpdateTrades(TraderState.Trades); await _traderGrain.UpdatePriceAsync(ticker); await _hubNotifier.UpdateTicker(ticker); } return(Unit.Default); }
public async Task <Unit> UpdatePrice(Ticker ticker) { if (IsInTestMode) { (_cryptoApi as FakeBittrexApi)?.UpdateBuyOrders(Ticker); } Ticker = ticker; if (_firstTicker == null) { _firstTicker = Ticker; } if (_tickerIndex == 1784) { Console.WriteLine("found one"); } _tickerIndex++; if (ticker.Timestamp == default) { ticker.Timestamp = DateTime.UtcNow; } Debug.WriteLine($"Update {_tickerIndex}\t{ticker.Bid}\t{ticker.Bid.GetReadablePercentageChange(_firstTicker.Bid)}%"); await UpdateTrades(); if (!IsInTestMode) { await _traderGrain.UpdateTrades(Trades); await _hubNotifier.UpdateTicker(ticker); } if (IsInTestMode) { (_cryptoApi as FakeBittrexApi)?.UpdateSellOrders(Ticker); } return(Unit.Default); }