Ejemplo n.º 1
0
        private void Reset()
        {
            Invoke((Action) delegate
            {
                this.portfolio = Framework.Current.PortfolioManager.Portfolios.GetByIndex(0);
                if (this.portfolio == null)
                {
                    return;
                }
                foreach (var p in Framework.Current.PortfolioManager.Portfolios)
                {
                    var portfolio  = new SmartQuant.Controls.Portfolios.Portfolio();
                    portfolio.Dock = DockStyle.Fill;
                    portfolio.Name = p.Name;
                    portfolio.Init(dataLoader.PortfolioEventQueue, new [] { p.Name });

                    var tpage = new TabPage();
                    tpage.Controls.Add(portfolio);
                    tpage.Name = portfolio.Name;
                    tpage.Text = portfolio.Name;
                    this.tabControl1.Controls.Add(tpage);
                    portfolio.UpdateGUI();
                }

                var accountData  = new SmartQuant.Controls.Data.Account.AccountData();
                accountData.Dock = DockStyle.Fill;
                accountData.Name = "Account";

                var page = new TabPage();
                page.Controls.Add(accountData);
                page.Name = accountData.Name;
                page.Text = accountData.Name;
                this.tabControl1.Controls.Add(page);

                var performance = this.portfolio.Performance;
                this.chart3.Reset();
                this.chart3.SetMainSeries(performance.EquitySeries, false, Color.White);
                this.chart3.AddPad();
                this.chart3.DrawSeries(performance.DrawdownSeries, 2, Color.White, SimpleDSStyle.Line, SearchOption.ExactFirst, SmoothingMode.HighSpeed);
                this.chart3.UpdateStyle = ChartUpdateStyle.WholeRange;
                performance.Updated    += (sender, e) => this.chart3.OnItemAdded();
            });
        }
Ejemplo n.º 2
0
        private void Reset()
        {
            Invoke((Action)delegate
            {
                this.portfolio = Framework.Current.PortfolioManager.Portfolios.GetByIndex(0);
                if (this.portfolio == null)
                    return;
                foreach (var p in Framework.Current.PortfolioManager.Portfolios)
                {
                    var portfolio = new SmartQuant.Controls.Portfolios.Portfolio();
                    portfolio.Dock = DockStyle.Fill;
                    portfolio.Name = p.Name;
                    portfolio.Init(dataLoader.PortfolioEventQueue, new []{p.Name});

                    var tpage = new TabPage();
                    tpage.Controls.Add(portfolio);
                    tpage.Name = portfolio.Name;
                    tpage.Text = portfolio.Name;
                    this.tabControl1.Controls.Add(tpage);
                    portfolio.UpdateGUI();
                }

                var accountData = new SmartQuant.Controls.Data.Account.AccountData();
                accountData.Dock = DockStyle.Fill;
                accountData.Name = "Account";

                var page = new TabPage();
                page.Controls.Add(accountData);
                page.Name = accountData.Name;
                page.Text = accountData.Name;
                this.tabControl1.Controls.Add(page);

                var performance = this.portfolio.Performance;
                this.chart3.Reset();
                this.chart3.SetMainSeries(performance.EquitySeries, false, Color.White);
                this.chart3.AddPad();
                this.chart3.DrawSeries(performance.DrawdownSeries, 2, Color.White, SimpleDSStyle.Line, SearchOption.ExactFirst, SmoothingMode.HighSpeed);
                this.chart3.UpdateStyle = ChartUpdateStyle.WholeRange;
                performance.Updated += (sender, e) => this.chart3.OnItemAdded();
            });
        }