コード例 #1
0
        public TabData(IDataService data, bool flagMaster)
            : base("Данные")
        {
            FlagMaster = flagMaster;
            if (flagMaster)
            {
                base.Header = "Master Data";
                Flag        = Visibility.Collapsed;
            }
            else
            {
                base.Header = "Work Data";
                Flag        = Visibility.Visible;
            }
            Files        = new ObservableCollection <FileViewModel>();
            Points       = new ObservableCollection <PointModel>();
            _dataService = data;
            List <FileArrModel> f = data.GetFileArrs();

            foreach (var i in f)
            {
                if (i.Work)
                {
                    Files.Add(new FileViewModel(i));
                    ListComboBoxItems.Add(i.Tiker);
                }
            }
            listScaleItems.Add("60");
            listScaleItems.Add("D");
            iterator = IteratorModel.GetInstance(data.GetMasterPoints(), data.GetFileArrs());
        }
コード例 #2
0
ファイル: TabVM2.cs プロジェクト: ascar1/Mvvm_Treeview
        private void GetArrData(string name)
        {
            IteratorModel     iterator   = IteratorModel.GetInstance(null, null);
            List <PointModel> points     = iterator.GetListPoint(Tiker, Scale);
            List <string>     items      = new List <string>();
            List <ResultArr>  resultArrs = new List <ResultArr>();

            foreach (var item in  points[points.Count() - 2].AnalysisResults.Find(i => i.Name == name).ResultArr)
            {
                items.Add(item.Name);
            }
            GetTable(items);
            foreach (var tmp in points)
            {
                var tmpItem = tmp.AnalysisResults.Find(i => i.Name == name);
                if (tmpItem != null)
                {
                    resultArrs.Clear();
                    foreach (var item in tmpItem.ResultArr)
                    {
                        resultArrs.Add(item);
                    }
                    GetRows(tmp.Date, resultArrs);
                }
            }
        }
コード例 #3
0
ファイル: TabVM2.cs プロジェクト: ascar1/Mvvm_Treeview
        private void GetListComboBoxItems()
        {
            IteratorModel     iterator = IteratorModel.GetInstance(null, null);
            List <PointModel> points   = iterator.GetListPoint(Tiker, Scale);

            foreach (var tmp in points[points.Count() - 2].AnalysisResults)
            {
                ListComboBoxItems.Add(tmp.Name);
            }
        }
コード例 #4
0
ファイル: TabVM2.cs プロジェクト: ascar1/Mvvm_Treeview
        private void LoadData()
        {
            IteratorModel iterator = IteratorModel.GetInstance(null, null);
            //List<PointModel> points = iterator.GetListPoint(Tiker, Scale);

            List <ResultArr>     resultArrs = new List <ResultArr>();
            List <string>        items      = new List <string>();
            Type                 type;
            IEnumerable <object> _list;

            if (NameType == "Ордера")
            {
                type  = Type.GetType("MainApp.Model.OrderModel");
                _list = iterator.orderModels.FindAll(i => i.Tiker == Tiker);
            }
            else //if (NameType == "Сделки")
            {
                type  = Type.GetType("MainApp.Model.DealModel");
                _list = iterator.dealModels.FindAll(i => i.Tiker == Tiker);
            }

            foreach (var tmp in type.GetProperties())
            {
                items.Add(tmp.Name);
            }
            GetTable(items);

            foreach (var tmp in _list)
            {
                DataRow       row  = Table.NewRow();
                List <object> list = new List <object>();
                list.Add(null);

                foreach (var tmp1 in type.GetProperties())
                {
                    PropertyInfo fi;
                    if (NameType == "Ордера")
                    {
                        fi = typeof(OrderModel).GetProperty(tmp1.Name.ToString());
                    }
                    else //if (NameType == "Сделки")
                    {
                        fi = typeof(DealModel).GetProperty(tmp1.Name.ToString());
                    }

                    list.Add(fi.GetValue(tmp).ToString());
                }
                row.ItemArray = list.ToArray();
                Table.Rows.Add(row);
            }
            InitializeRolesColumns();
        }
コード例 #5
0
ファイル: ToTXT.cs プロジェクト: ascar1/Mvvm_Treeview
        public void UpLoadDeal()
        {
            string        path     = @"C:\TXT\Deal.txt";
            IteratorModel iterator = IteratorModel.GetInstance(null, null);
            Type          type     = Type.GetType("MainApp.Model.DealModel");

            using (FileStream fstream = new FileStream(path, FileMode.Create))
            {
                string str = "";
                foreach (var tmp in type.GetProperties())
                {
                    if (str != "")
                    {
                        str = str + "^" + tmp.Name.ToString();
                    }
                    else
                    {
                        str = tmp.Name.ToString();
                    }
                }
                AddText(fstream, str + "\r\n");

                foreach (var tmp in iterator.dealModels)
                {
                    str = "";
                    foreach (var tmp1 in type.GetProperties())
                    {
                        PropertyInfo fi = typeof(DealModel).GetProperty(tmp1.Name.ToString());
                        if (str != "")
                        {
                            str = str + "^" + fi.GetValue(tmp).ToString();
                        }
                        else
                        {
                            str = fi.GetValue(tmp).ToString();
                        }
                    }
                    AddText(fstream, str + "\r\n");
                }
                Console.WriteLine("Текст записан в файл");
            }
        }
コード例 #6
0
        public ChartViewModel3(IteratorModel _iterator)
        {
            From     = 1;
            To       = 10;
            KolSkale = 50;

            Iterator         = _iterator;
            SeriesCollection = new SeriesCollection
            {
                new OhlcSeries()
                {
                    Values = new ChartValues <OhlcPoint>
                    {
                        new OhlcPoint(32, 35, 30, 32),
                        new OhlcPoint(33, 38, 31, 37),
                        new OhlcPoint(35, 42, 30, 40),
                        new OhlcPoint(37, 40, 35, 38),
                        new OhlcPoint(35, 38, 32, 33)
                    }
                },
                new LineSeries
                {
                    Values = new ChartValues <double> {
                        30, 32, 35, 30, 28
                    },
                    Fill = Brushes.Transparent
                }
            };

            Labels = new List <string>()
            {
                DateTime.Now.ToString("dd MMM"),
                DateTime.Now.AddDays(1).ToString("dd MMM"),
                DateTime.Now.AddDays(2).ToString("dd MMM"),
                DateTime.Now.AddDays(3).ToString("dd MMM"),
                DateTime.Now.AddDays(4).ToString("dd MMM"),
            };
        }
コード例 #7
0
        private static RenderSequenceModel PrepareRsm(RenderPackModel renderPack, RenderActionsModel renderActionsPack,
                                                      int renderId, bool draftMode = true, bool continueRender = false)
        {
            var cores    = Environment.ProcessorCount;
            var symmetry = renderPack.ViewSettings.Symmetry;
            var totalPointsPerIteration = renderPack.RenderSettings.ShotsPerIteration;
            var imageSize         = new Size(renderPack.ViewSettings.ImageWidth, renderPack.ViewSettings.ImageHeight);
            var renderColorMode   = renderPack.RenderSettings.RenderColorMode;
            var translationMatrix = Matrix.FromViewSettings(renderPack.ViewSettings);
            var colorCount        = renderPack.Transformations.Length;
            var iterators         = new IteratorModel[cores];

            for (var i = 0; i < cores; i++)
            {
                iterators[i] = new IteratorModel(renderPack);
            }
            var sector = Math.PI * 2.0 / symmetry;

            LogDisplayModel display;

            if (continueRender && HasRender)
            {
                display = Display;
            }
            else
            {
                display = new LogDisplayModel((int)imageSize.Width, (int)imageSize.Height,
                                              renderPack.Transformations.Length, renderPack.ViewSettings.BackColor);
            }
            display.RenderColorMode = renderColorMode;


            _transformationColors         = new Color[colorCount];
            _transformationGradientValues = new double[colorCount];
            for (var i = 0; i < colorCount; i++)
            {
                _transformationColors[i] = renderPack.Transformations[i].Color;
            }
            for (var i = 0; i < colorCount; i++)
            {
                _transformationGradientValues[i] = renderPack.Transformations[i].ColorPosition;
            }

            _gradModel = renderPack.GradModelCopy;

            var rsm = new RenderSequenceModel
            {
                TotalIterations       = renderPack.RenderSettings.Iterations,
                Cores                 = cores,
                Iterators             = iterators,
                TotalPointsPerCore    = totalPointsPerIteration / cores / symmetry,
                Symmetry              = symmetry,
                TranslationArray      = translationMatrix.Array,
                CenterPoint           = new Point(renderPack.ViewSettings.HalfWidth, renderPack.ViewSettings.HalfHeight),
                ImageSize             = imageSize,
                Display               = display,
                RenderActionsPack     = renderActionsPack,
                RenderId              = renderId,
                DraftMode             = draftMode,
                RenderPack            = renderPack,
                IsDrawingIntermediate = false,
                SectorCos             = Math.Cos(sector),
                SectorSin             = Math.Sin(sector)
            };

            return(rsm);
        }
コード例 #8
0
ファイル: ToTXT.cs プロジェクト: ascar1/Mvvm_Treeview
        public void UpLoadAnalysis()
        {
            string        path     = @"C:\TXT\Analysis.txt";
            IteratorModel iterator = IteratorModel.GetInstance(null, null);

            Type type = Type.GetType("MainApp.Model.DealModel");

            using (FileStream fstream = new FileStream(path, FileMode.Create))
            {
                string str = "";
                #region Шапка
                foreach (var tmp in type.GetProperties())
                {
                    if (str != "")
                    {
                        str = str + "^" + tmp.Name.ToString();
                    }
                    else
                    {
                        str = tmp.Name.ToString();
                    }
                }
                AddText(fstream, str + "\r\n");
                #endregion
                #region Тело отчета
                List <string> tmplist = new List <string>();
                foreach (var tmp in iterator.WorkPoints)
                {
                    DateModel Points = tmp.Data.Find(i => i.Scale == "D");
                    foreach (var tmp1 in Points.Points)
                    {
                        tmplist.Add(tmp.Tiker.ToString());
                        tmplist.Add(tmp1.Date.ToString());

                        tmplist.Add(tmp1.Open.ToString());
                        tmplist.Add(tmp1.High.ToString());
                        tmplist.Add(tmp1.Low.ToString());
                        tmplist.Add(tmp1.Close.ToString());
                        //DateTime date = new DateTime(2019, 11, 12, 11, 00, 00);
                        //if (tmp1.Date == date) { MessageBox.Show("!"); }
                        foreach (var results in tmp1.AnalysisResults)
                        {
                            tmplist.Add(results.Name);
                            foreach (var result in results.ResultArr)
                            {
                                tmplist.Add(result.Name);
                                List <string> AtrStr = result.ValStr.Split(';').ToList();
                                AtrStr.ForEach(i => { tmplist.Add(i); });
                            }
                            tmplist.Add(results.Result);
                        }
                        int index = Points.Points.FindIndex(i => i.Date == tmp1.Date);
                        if ((index != -1) && (index + 1 < Points.Points.Count()))
                        {
                            tmplist.Add(Points.Points[index + 1].Date.ToString());
                            tmplist.Add(Points.Points[index + 1].Open.ToString());
                            tmplist.Add(Points.Points[index + 1].Close.ToString());
                        }

                        str = "";
                        foreach (var tmpstr in tmplist)
                        {
                            if (str != "")
                            {
                                str = str + "^" + tmpstr;
                            }
                            else
                            {
                                str = tmpstr;
                            }
                        }

                        tmplist.Clear();
                        if (tmp1.AnalysisResults.Count != 0)
                        {
                            AddText(fstream, str + "\r\n");
                        }
                    }
                }
                #endregion
                Console.WriteLine("Текст записан в файл");
            }
        }