/// <summary> /// Create stop-order /// </summary> /// <param name="accountID">Account id</param> /// <param name="time">Date and time</param> /// <param name="insID">Instrum id</param> /// <param name="bs">Buy or sell</param> /// <param name="st">StopLoss or TakeProfit</param> /// <param name="endTime">End time or null</param> /// <param name="alertPrice">Alert price</param> /// <param name="price">Order price or null</param> /// <param name="lotCount">Lots count</param> /// <param name="status">Stop order status</param> /// <param name="completeTime">Complete date and time</param> /// <param name="stopOrderNo">Global stop-order number</param> /// <returns>New stop-order</returns> public StopOrder CreateStopOrder(int accountID, DateTime time, int insID, BuySell bs, StopOrderType st, DateTime?endTime, decimal alertPrice, decimal?price, int lotCount, StopOrderStatus status, DateTime?completeTime, long stopOrderNo) { StopOrder stopOrder = new StopOrder() { AccountID = accountID, Time = time, InsID = insID, BuySell = bs, StopType = st, EndTime = endTime, AlertPrice = alertPrice, Price = price, LotCount = lotCount, Status = status, CompleteTime = completeTime, StopOrderNo = stopOrderNo }; using (var db = new DaContext(_options)) { db.StopOrder.Add(stopOrder); db.SaveChanges(); } return(stopOrder); }
/// <summary> /// Insert replications /// </summary> /// <param name="replObject">Replication object</param> /// <param name="rid_lid">Replications (key=remoteId, val=localId)</param> public void InsertReplications(ReplObjects replObject, Dictionary <int, int> rid_lid) { if (rid_lid == null) { throw new ArgumentNullException(); } if (!rid_lid.Any()) { return; } using (var db = new DaContext(_options)) { foreach (var rid in rid_lid.Keys) { int lid = rid_lid[rid]; var isFound = db.Replication.Any(r => r.ReplObject == replObject && r.LocalID == lid && r.RemoteID == rid); if (!isFound) { db.Replication.Add(new Replication() { LocalID = lid, RemoteID = rid, ReplObject = replObject }); } } db.SaveChanges(); } }
/// <summary> /// Update TestConfig /// </summary> /// <param name="testConfig">TestConfig</param> public void UpdateTestConfig(DbTestConfig testConfig) { using (var db = new DaContext(_options)) { db.Update(testConfig); db.SaveChanges(); } }
/// <summary> /// Update user data /// </summary> /// <param name="user">User object</param> public void UpdateUser(User user) { using (var db = new DaContext(_options)) { db.Update <User>(user); db.SaveChanges(); } }
/// <summary> /// Update account data /// </summary> /// <param name="account">Account data</param> public void UpdateAccount(Account account) { using (var db = new DaContext(_options)) { db.Update(account); db.SaveChanges(); } }
/// <summary> /// Update Order object /// </summary> /// <param name="order">Order object (OrderID > 0)</param> public void UpdateOrder(Order order) { using (var db = new DaContext(_options)) { db.Update(order); db.SaveChanges(); } }
/// <summary> /// Update Holding object /// </summary> /// <param name="holding">Holding object</param> public void UpdateHolding(Holding holding) { using (var db = new DaContext(_options)) { db.Update(holding); db.SaveChanges(); } }
/// <summary> /// Update StopOrder object /// </summary> /// <param name="stopOrder">StopOrder object (StopOrderID > 0)</param> public void UpdateStopOrder(StopOrder stopOrder) { using (var db = new DaContext(_options)) { db.Update(stopOrder); db.SaveChanges(); } }
/// <summary> /// Update tickSource /// </summary> /// <param name="tickSource">TickSource</param> public void UpdateTickSource(DbTickSource tickSource) { using (var db = new DaContext(_options)) { db.Update(tickSource); db.SaveChanges(); } }
/// <summary> /// Update repository object /// </summary> /// <param name="ro"></param> public void Update(CommonData.ReposObject ro) { using (var db = new DaContext(_options)) { db.Update <ReposObject>(ro); db.SaveChanges(); } }
/// <summary> /// Update cash object /// </summary> /// <param name="cash">Cash object (CashID > 0)</param> public void UpdateCash(CommonData.Cash cash) { using (var db = new DaContext(_options)) { db.Update(cash); db.SaveChanges(); } }
/// <summary> /// Update position /// </summary> /// <param name="pos">Position object</param> public void UpdatePosition(Position pos) { using (var db = new DaContext(_options)) { db.Update <Position>(pos); db.SaveChanges(); } }
/// <summary> /// Add PosTrade relation /// </summary> /// <param name="posID">Position id</param> /// <param name="tradeID">Trade id</param> public void AddPosTrade(int posID, int tradeID) { PosTrade pt = new PosTrade(posID, tradeID); using (var db = new DaContext(_options)) { db.PosTrade.Add(pt); db.SaveChanges(); } }
/// <summary> /// Insert new testConfig /// </summary> /// <param name="testConfig">TestConfig</param> /// <returns>New TestConfig id</returns> public int InsertTestConfig(DbTestConfig testConfig) { using (var db = new DaContext(_options)) { db.TestConfig.Add(testConfig); db.SaveChanges(); } return(testConfig.TestConfigID); }
/// <summary> /// Insert new tickSource /// </summary> /// <param name="tickSource">TickSource</param> /// <returns>New tickSource id</returns> public int InsertTickSource(DbTickSource tickSource) { using (var db = new DaContext(_options)) { db.TickSource.Add(tickSource); db.SaveChanges(); } return(tickSource.TickSourceID); }
public void CreateValues(IEnumerable <SeriesValue> values) { using (var db = new DaContext(_options)) { foreach (var v in values) { db.SeriesValue.Add(v); } db.SaveChanges(); } }
/// <summary> /// Delete Instrum object by Id /// </summary> /// <param name="insID">Id</param> public void DeleteInstrumByID(int insID) { using (var db = new DaContext(_options)) { var ins = db.Instrum.Find(insID); if (ins != null) { db.Instrum.Remove(ins); db.SaveChanges(); } } }
/// <summary> /// Update insStore /// </summary> /// <param name="insStoreID">ID</param> /// <param name="isEnable">IsEnable</param> public void UpdateInsStore(int insStoreID, bool isEnable) { using (var db = new DaContext(_options)) { var isr = db.InsStore.Find(insStoreID); if (isr != null) { isr.IsEnable = isEnable; db.SaveChanges(); } } }
/// <summary> /// Delete TickSource by Id /// </summary> /// <param name="tickSourceID">Id</param> public void DeleteTickSourceByID(int tickSourceID) { using (var db = new DaContext(_options)) { var ts = db.TickSource.Find(tickSourceID); if (ts != null) { db.TickSource.Remove(ts); db.SaveChanges(); } } }
/// <summary> /// Delete InsStore by Id /// </summary> /// <param name="insStoreID">InsStore ID</param> public void DeleteInsStoreByID(int insStoreID) { using (var db = new DaContext(_options)) { var insStore = db.InsStore.Find(insStoreID); if (insStore != null) { db.Remove(insStore); db.SaveChanges(); } } }
/// <summary> /// Delete TestConfig /// </summary> /// <param name="testConfigID">Id</param> public void DeleteTestConfig(int testConfigID) { using (var db = new DaContext(_options)) { var ts = db.TestConfig.Find(testConfigID); if (ts != null) { db.TestConfig.Remove(ts); db.SaveChanges(); } } }
/// <summary> /// Delete account, all account data (trades, orders, etc) must be deleted before /// </summary> /// <param name="accountID">AccountID</param> public void DeleteAccount(int accountID) { using (var db = new DaContext(_options)) { var account = db.Account.Find(accountID); if (account != null) { db.Account.Remove(account); db.SaveChanges(); } } }
/// <summary> /// Delete holding /// </summary> /// <param name="holdingID">Holding id</param> public void DeleteHolding(int holdingID) { using (var db = new DaContext(_options)) { var holding = db.Holding.Find(holdingID); if (holding != null) { db.Holding.Remove(holding); db.SaveChanges(); } } }
/// <summary> /// Delete from repository by Id /// </summary> /// <param name="reposID"></param> public void Delete(int reposID) { using (var db = new DaContext(_options)) { var ro = db.Repository.Find(reposID); if (ro == null) { return; } db.Remove <ReposObject>(ro); db.SaveChanges(); } }
/// <summary> /// Delete user by id /// </summary> /// <param name="userID">User id</param> public void DeleteUser(int userID) { using (var db = new DaContext(_options)) { var user = db.User.Find(userID); if (user == null) { return; } db.Remove <User>(user); db.SaveChanges(); } }
/// <summary> /// Delete tick history data by instrum id and date /// </summary> /// <param name="insID">Instrum id</param> /// <param name="date">History date</param> public void DeleteData(int insID, DateTime date) { using (var db = new DaContext(_options)) { var hists = db.DbTickHistory.Where(r => r.InsID == insID && r.Date == date); if (hists.Any()) { foreach (var hist in hists) { db.DbTickHistory.Remove(hist); } db.SaveChanges(); } } }
/// <summary> /// Update chart data /// </summary> /// <param name="chartID">Chart Id</param> /// <param name="xData">New chart data</param> public void UpdateChart(int chartID, XDocument xData) { using (var db = new DaContext(_options)) { var chart = db.Chart.Find(chartID); if (chart == null) { return; } chart.Data = xData.ToString(); db.Chart.Update(chart); db.SaveChanges(); } }
/// <summary> /// Create repository object /// </summary> /// <param name="key">Unique string key</param> /// <param name="data">Serialized data</param> /// <returns>Repository object</returns> public ReposObject Create(string key, string data) { var ro = new ReposObject() { ReposID = 0, Key = key != null ? key : "", Data = data != null ? data : "" }; using (var db = new DaContext(_options)) { db.Repository.Add(ro); db.SaveChanges(); } return(ro); }
/// <summary> /// Create InsStore (array of fin. instrument quotes) /// </summary> /// <param name="insID">Instrument</param> /// <param name="tf">Timeframe</param> /// <param name="isEnable">Active for sync</param> /// <returns></returns> public int CreateInsStore(int insID, Timeframes tf, bool isEnable) { var insStore = new CommonData.InsStore() { InsID = insID, Tf = tf, IsEnable = isEnable }; using (var db = new DaContext(_options)) { db.InsStore.Add(insStore); db.SaveChanges(); } return(insStore.InsStoreID); }
/// <summary> /// Create holding record /// </summary> /// <param name="accountID">Account id</param> /// <param name="insID">Instrum id</param> /// <param name="lotCount">Lot count</param> /// <returns>Holding record</returns> public Holding CreateHolding(int accountID, int insID, int lotCount) { Holding holding = new Holding() { AccountID = accountID, InsID = insID, LotCount = lotCount }; using (var db = new DaContext(_options)) { db.Holding.Add(holding); db.SaveChanges(); } return(holding); }