public void UpdatePortfolio(PortfolioVM pVM) { var portfolio = new PBPortfolio(); portfolio.Name = pVM.Name; portfolio.HedgeDelay = pVM.Delay; portfolio.Threshold = pVM.Threshold; portfolio.Hedging = pVM.Hedging; portfolio.HedgeVolume = pVM.HedgeVolume; MessageWrapper.SendMessage((uint)BusinessMessageID.MSG_ID_MODIFY_PORTFOLIO, portfolio); }
public void UpdateHedgeContracts(HedgeVM hVM, string PortfolioName) { var hedge = new PBHedgeContract(); hedge.Exchange = hVM.Exchange; hedge.Contract = hVM.Contract; hedge.Underlying = hVM.Underlying; var portfolio = new PBPortfolio(); portfolio.Name = PortfolioName; portfolio.HedgeContracts.Add(hedge); MessageWrapper.SendMessage((uint)BusinessMessageID.MSG_ID_HEDGE_CONTRACT_UPDATE, portfolio); }
private void OnPortfolioUpdated(PBPortfolio portfolio) { var port = PortfolioVMCollection.FirstOrDefault(p => p.Name == portfolio.Name); if (port == null) { PortfolioVMCollection.Add(new PortfolioVM(this) { Name = portfolio.Name, Delay = portfolio.HedgeDelay, Threshold = portfolio.Threshold, Hedging = portfolio.Hedging, HedgeVolume = portfolio.HedgeVolume }); } else { port.Delay = portfolio.HedgeDelay; port.Threshold = portfolio.Threshold; port.Hedging = portfolio.Hedging; port.HedgeVolume = portfolio.HedgeVolume; } }
private void OnPortfolioHedgeContracts(PBPortfolio portfolio) { var port = PortfolioVMCollection.FirstOrDefault(p => p.Name == portfolio.Name); if (port != null) { foreach (var hc in portfolio.HedgeContracts) { var hc_current = port.HedgeContractParams.FirstOrDefault(h => hc.Exchange == hc.Exchange && h.Underlying == hc.Underlying); if (hc_current == null) { hc_current = new HedgeVM { Exchange = hc.Exchange, Underlying = hc.Underlying, Contract = hc.Contract }; port.HedgeContractParams.Add(hc_current); } else { hc_current.Contract = hc.Contract; } } } }