コード例 #1
0
ファイル: MsMkt.cs プロジェクト: zdomokos/MetaStockDb
        private void ProcessTableWeekly()
        {
            RecMktDay day = (RecMktDay)null;

            _result = new MsMktList();
            int    num1 = -1;
            double num2 = 0.0;

            if (_dlyList.Reset())
            {
                do
                {
                    RecMktDay get      = _dlyList.Get;
                    RecDay    dtd      = get.dtd;
                    DateTime  dateTime = DateTime.FromOADate((double)get.dtd.d);
                    if (day == null)
                    {
                        day       = new RecMktDay(dtd);
                        day.dtd.v = 0.0f;
                        day.dtd.i = 0.0f;
                        num1      = -1;
                        num2      = (double)get.dtd.d;
                    }

                    if (dateTime.DayOfWeek <= (DayOfWeek)num1 || (double)get.dtd.d - num2 > 6.0)
                    {
                        _result.Add(ref day);
                        day       = new RecMktDay(dtd);
                        day.dtd.v = 0.0f;
                        day.dtd.i = 0.0f;
                    }

                    if ((double)dtd.h > (double)day.dtd.h)
                    {
                        day.dtd.h = dtd.h;
                    }
                    if ((double)dtd.l < (double)day.dtd.l)
                    {
                        day.dtd.l = dtd.l;
                    }
                    day.dtd.c  = dtd.c;
                    day.dtd.d  = dtd.d;
                    day.dtd.v += dtd.v;
                    day.dtd.i  = dtd.i;
                    num1       = (int)dateTime.DayOfWeek;
                    num2       = (double)dtd.d;
                } while (_dlyList.Next());
            }

            if (day == null)
            {
                return;
            }
            _result.Add(ref day);
        }
コード例 #2
0
ファイル: MsMkt.cs プロジェクト: zdomokos/MetaStockDb
        public void SaveToTxtFile(string fn)
        {
            StreamWriter streamWriter = new StreamWriter(fn);

            if (_result.Reset())
            {
                do
                {
                    RecDay dtd = _result.Get.dtd;
                    string str =
                        $"{(object)CalFunc.Jd2cymds(dtd.d)},{(object)FormatPrice((double)dtd.o)},{(object)FormatPrice((double)dtd.h)},{(object)FormatPrice((double)dtd.l)},{(object)FormatPrice((double)dtd.c)},{(object)FormatVoi((double)dtd.v)},{(object)FormatVoi((double)dtd.i)}";
                    streamWriter.WriteLine(str);
                } while (_result.Next());
            }

            streamWriter.Close();
        }
コード例 #3
0
ファイル: RecMktDay.cs プロジェクト: zdomokos/MetaStockDb
 public RecMktDay()
 {
     dtd = new RecDay();
     msd = new RecMsDay();
 }
コード例 #4
0
ファイル: RecMktDay.cs プロジェクト: zdomokos/MetaStockDb
 public RecMktDay(RecDay day)
 {
     dtd = new RecDay(day.d, day.o, day.h, day.l, day.c, day.v, day.i);
     msd = new RecMsDay();
 }
コード例 #5
0
ファイル: MsMkt.cs プロジェクト: zdomokos/MetaStockDb
        private void ProcessTableMonthly()
        {
            RecMktDay day      = (RecMktDay)null;
            int       num1     = 0;
            int       num2     = 0;
            DateTime  minValue = DateTime.MinValue;

            _result = new MsMktList();
            if (!_dlyList.Reset())
            {
                return;
            }
            do
            {
                RecMktDay get      = _dlyList.Get;
                RecDay    dtd      = get.dtd;
                DateTime  dateTime = DateTime.FromOADate((double)get.dtd.d);
                DateTime  date1;
                if (day == null)
                {
                    day       = new RecMktDay(dtd);
                    day.dtd.v = 0.0f;
                    day.dtd.i = 0.0f;
                    date1     = dateTime.Date;
                    num1      = date1.Month;
                    date1     = dateTime.Date;
                    num2      = date1.Year;
                }

                date1 = dateTime.Date;
                if (date1.Month == num1)
                {
                    date1 = dateTime.Date;
                    if (date1.Year == num2)
                    {
                        goto label_6;
                    }
                }

                date1 = dateTime.Date;
                num1  = date1.Month;
                date1 = dateTime.Date;
                num2  = date1.Year;
                _result.Add(ref day);
                day       = new RecMktDay(dtd);
                day.dtd.v = 0.0f;
                day.dtd.i = 0.0f;
label_6:
                if ((double)dtd.h > (double)day.dtd.h)
                {
                    day.dtd.h = dtd.h;
                }
                if ((double)dtd.l < (double)day.dtd.l)
                {
                    day.dtd.l = dtd.l;
                }
                day.dtd.c  = dtd.c;
                day.dtd.d  = dtd.d;
                day.dtd.v += dtd.v;
                day.dtd.i  = dtd.i;
                DateTime date2 = dateTime.Date;
            } while (_dlyList.Next());

            if (day == null)
            {
                return;
            }
            _result.Add(ref day);
        }