public AnalyticsViewModel() { Factory = new SourceInstrumentDataFactory(); Mediator.Instance.PortfolioChanged += (s, e) => { UpdateCurrentPortfolio(e.Portfolio); Positions = RepositoryReader.LoadPositions(e.Portfolio); UpdateCurrentPortfolioPrices(e.Portfolio); PortfolioProfit = PortfolioAnalytics.CalculatePortFolioProfit(Positions); PortfolioReturn = PortfolioAnalytics.CalculatePortfolioReturn(Positions); s = this; e.AnalyticList = HistoricalReturnSeries; }; Mediator.Instance.AddPosition += (s, e) => { Positions.Add(e.Position); PortfolioProfit = PortfolioAnalytics.CalculatePortFolioProfit(Positions); PortfolioReturn = PortfolioAnalytics.CalculatePortfolioReturn(Positions); s = this; e.AnalyticList = HistoricalReturnSeries; }; }
public PositionViewModel() { SaveCommand = new RelayCommand(SaveExecute); SelectInstrumentCommand = new RelayCommand(SelectInstrumentExecute); Factory = new SourceInstrumentDataFactory(); Mediator.Instance.PortfolioChanged += (s, e) => { UpdateCurrentPortfolio(e.Portfolio); RepositoryReader = new XmlRepositoryReader(); Positions = RepositoryReader.LoadPositions(e.Portfolio); UpdateCurrentPortfolioPrices(e.Portfolio); }; Mediator.Instance.AddInstrument += (s, e) => { UpdateCurrentInstrument(e.Instrument); InitializeCurrentPosition(); }; }