public IRuleResult RuleExecuted(Solbot solbot) { var result = new SequencedRuleResult(); try { var tickerContext = new TickerContext(_binanceClient); var currentPrice = tickerContext.GetPriceValue(solbot.Strategy.AvailableStrategy); if (currentPrice.Success) { solbot.Communication.Price = new PriceMessage { Current = currentPrice.Result }; result.Success = true; result.Message = LogGenerator.SequenceSuccess(SequenceName, $"{currentPrice.Result}"); } else { result.Success = false; result.Message = LogGenerator.SequenceError(SequenceName, currentPrice.Message); } } catch (Exception e) { result.Success = false; result.Message = LogGenerator.SequenceException(SequenceName, e); } return(result); }
public IQueryable <Ticker> GetTickers() { var _db = new TickerContext(ConfigurationManager.ConnectionStrings["TickerSQLConnection"].ConnectionString); IQueryable <Ticker> query = _db.Tickers; return(query); }
public void Dispose() { if (_db != null) { _db.Dispose(); _db = null; } }
public void GetConfig([QueryString("id")] string tickerName) { var _db = new TickerContext(ConfigurationManager.ConnectionStrings["TickerSQLConnection"].ConnectionString); Ticker ticker = _db.Tickers.Where(o => o.TickerName.Equals(tickerName)).FirstOrDefault(); lblCurrent.Text = string.Format("$ {0:#,##0.00}", double.Parse(ticker.Current.ToString())); lblLastRead.Text = ticker.LastRead.ToString(); lblTicker.Text = tickerName; txtHigh.Text = (ticker.Current + 0.5m).ToString(); txtLow.Text = (ticker.Current - 0.5m).ToString(); }
public TaskListnerRepository(TickerContext context, ILogger <TaskListnerRepository> logger) { _context = context; _logger = logger; }
static void Main(string[] args) { TwilioConf tw = new TwilioConf() { Token = ConfigurationManager.AppSettings["SMSKeyToken"], From = ConfigurationManager.AppSettings["SMSFrom"], Account = ConfigurationManager.AppSettings["SMSAccount"] }; FinProvider fin = new FinProvider() { Name = ConfigurationManager.AppSettings["FinProviderName"], Match = ConfigurationManager.AppSettings["FinProviderMatch"], Replace = ConfigurationManager.AppSettings["FinProviderReplace"], Url = ConfigurationManager.AppSettings["FinProviderURL"] }; Console.WriteLine("Starting TickerUpdater cycle"); TickerContext _db = new TickerContext(ConfigurationManager.ConnectionStrings["TickerSQLConnection"].ConnectionString); // Initialize the product database. Database.SetInitializer(new TickerDatabaseInit()); while (true) { try { foreach (Ticker ticker in _db.Tickers) { ticker.LastRead = DateTime.UtcNow; var currRead = HTTPhandy.TickerFromAPI(fin, ticker.TickerName); ticker.Current = currRead > 0 ? currRead: ticker.Current; Console.WriteLine(ticker.TickerName + ": " + ticker.Current); } _db.SaveChanges(); } catch (Exception ex) { Console.WriteLine(ex.Message); } try { var results = from t1 in _db.Tickers join t2 in _db.TickerSMSSettings on t1.TickerName equals t2.TickerName where (t1.Current <= t2.Low) || (t1.Current >= t2.High) select new { t1.TickerName, t1.Current, t2.Mobile, t2.Low, t2.High, t1.LastRead }; TickerSMSSettings found; foreach (var smsSettings in results.ToList()) { Console.WriteLine(smsSettings.TickerName + " " + smsSettings.Mobile + " " + smsSettings.Current); found = _db.TickerSMSSettings.Where(s => s.Mobile == smsSettings.Mobile) .FirstOrDefault <TickerSMSSettings>(); found.TickerDate = smsSettings.LastRead; HTTPhandy.SendSMS(tw, found, smsSettings.Current); _db.TickerSMSSettings.Remove(found); } _db.SaveChanges(); } catch (Exception ex) { Console.WriteLine(ex.Message); } Thread.Sleep(5000); } }
public TaskRepository(TickerContext context, IMapper mapper, ILogger <TaskRepository> logger) { _context = context; _mapper = mapper; _logger = logger; }