private String GetTickDataPath(String code, int date)
        {
            int month = date / 100;

            CodeIdParser parser      = new CodeIdParser(code);
            VarietyInfo  varietyInfo = dataLoader_Variety.GetVariety(parser.VarietyId);

            if (varietyInfo == null)
            {
                return(null);
            }
            string market = varietyInfo.Exchange;

            if (market.Equals("DL"))
            {
                market = "dc";
            }
            else if (market.Equals("SQ"))
            {
                market = "sc";
            }
            else if (market.Equals("ZZ"))
            {
                market = "zc";
            }

            string path = srcDataPath + "\\" + month + "\\" + market + "\\" + GetFullCode(code, parser, market == "zc") + "_" + date + ".csv";

            return(path);

            //return srcDataPath + "\\" + dataLoader_InstrumentInfo.GetBelongMarket(code) + "\\" + date + "\\" + code + "_" + date + ".csv";
        }
Esempio n. 2
0
        private String GetCodePath(String code, int date)
        {
            CodeIdParser parser      = new CodeIdParser(code);
            VarietyInfo  varietyInfo = dataLoader_Variety.GetVariety(parser.VarietyId);

            return(srcDataPath + "\\" + varietyInfo.Exchange + "\\" + date + "\\"
                   + CodeInfoUtils.GetSimpleCodeId(code) + "_" + date + ".csv");
        }
Esempio n. 3
0
        public List <double[]> GetUpdatedTradingSessionDetail(string code, int date)
        {
            CodeIdParser parser      = new CodeIdParser(code);
            string       variety     = parser.VarietyId;
            VarietyInfo  varietyInfo = dataLoader_Variety.GetVariety(variety);

            if (varietyInfo == null)
            {
                return(null);
            }
            string exchange = varietyInfo.Exchange;

            return(dataLoader_TradingSessionDetail.GetTradingSessionDetail(exchange, variety, date));
        }
Esempio n. 4
0
 public IActionResult AddVariety([FromBody] VarietyInfo varietyInfo)
 {
     if (varietyInfo.name == null || varietyInfo.plantSpeciesId == 0)
     {
         return(BadRequest());
     }
     else
     {
         Variety newVariety = VarietyInfo.CreateVariety(varietyInfo.plantSpeciesId, varietyInfo.name);
         if (newVariety.name.Equals(varietyInfo.name))
         {
             return(Ok());
         }
     }
     return(BadRequest());
 }
Esempio n. 5
0
        private void InitOptionFormInfo()
        {
            this.SuspendLayout();
            {
                m_TreeNodeSetting.Nodes.Add(m_TreeNodeSettingSub);

                m_SettingControl         = new OptionAControl();
                m_SettingControl.Dock    = DockStyle.Fill;
                m_SettingControl.Visible = false;

                this.m_AllOptionControlInfo.Add(m_TreeNodeSetting, m_SettingControl);
                this.m_AllOptionControlInfo.Add(m_TreeNodeSettingSub, m_SettingControl);

                this.Panel.Controls.Add(m_SettingControl);

                m_SettingControl.CheckBoxPopupInfo.Checked = GlobalSetting.IsPopStartupInfo;
                m_SettingControl.NumericUpDownKLine.Value  = (decimal)GlobalSetting.ShowKLineLength;
                m_SettingControl.TrackBarKLine.Value       = (int)GlobalSetting.ShowKLineLength;
                m_SettingControl.SetConfigFile            += new EventHandlerNone(SettingControl_SetConfigFile);

                this.TreeView.Nodes.Add(m_TreeNodeSetting);
                //-------------------------------------

                PlateInfo[] plateInfos = GlobalSetting.PlateInfos;
                for (int iIndex = 0; iIndex < plateInfos.Length; iIndex++)
                {
                    PlateInfo plateInfo = plateInfos[iIndex];

                    TreeNode newTreeNodePlate     = new TreeNode(plateInfo.Name);
                    TreeNode newTreeNodePlateSub  = new TreeNode("常规");
                    TreeNode newTreeNodePlateSub2 = new TreeNode("所有股票");

                    newTreeNodePlate.Nodes.Add(newTreeNodePlateSub);
                    newTreeNodePlate.Nodes.Add(newTreeNodePlateSub2);

                    OptionBControl optionBControl = new OptionBControl {
                        Dock = DockStyle.Fill, Visible = false
                    };

                    this.m_AllOptionControlInfo.Add(newTreeNodePlate, optionBControl);
                    this.m_AllOptionControlInfo.Add(newTreeNodePlateSub, optionBControl);

                    this.Panel.Controls.Add(optionBControl);

                    OptionFControl optionFControl = new OptionFControl {
                        Dock = DockStyle.Fill, Visible = false
                    };

                    this.m_AllOptionControlInfo.Add(newTreeNodePlateSub2, optionFControl);

                    this.Panel.Controls.Add(optionFControl);

                    //
                    for (int iIndex2 = 0; iIndex2 < plateInfo.VarietyInfos.Length; iIndex2++)
                    {
                        VarietyInfo varietyInfo = plateInfo.VarietyInfos[iIndex2];

                        TreeNode newTreeNodePlateSub3 = new TreeNode(varietyInfo.Name);
                        newTreeNodePlate.Nodes.Add(newTreeNodePlateSub3);

                        OptionCControl optionCControlSub3 = new OptionCControl {
                            Dock = DockStyle.Fill, Visible = false
                        };

                        this.m_AllOptionControlInfo.Add(newTreeNodePlateSub3, optionCControlSub3);

                        this.Panel.Controls.Add(optionCControlSub3);

                        for (int iIndex3 = 0; iIndex3 < varietyInfo.FileInfos.Length; iIndex3++)
                        {
                            Demo.Stock.X.Common.FileInfo fileInfo = varietyInfo.FileInfos[iIndex3];

                            StockManager stockManager = GlobalStockManager.GetStockManagerByPlateAndVariety(plateInfo.Name, varietyInfo.Name);
                            StockInfo    stockInfo    = stockManager.GetStockDataByStockCode(fileInfo.StockName + "[" + fileInfo.StockSymbol + "]");

                            ListViewItem listViewItem = new ListViewItem(stockInfo.StockName, 0);
                            listViewItem.SubItems.Add(stockInfo.StockSymbol);
                            listViewItem.SubItems.Add(stockInfo.Periodicity.ToString());
                            listViewItem.SubItems.Add(stockInfo.FirstDate.ToShortDateString());
                            listViewItem.SubItems.Add(stockInfo.LastDate.ToShortDateString());
                            listViewItem.SubItems.Add(stockInfo.FirstTime.ToLongTimeString());
                            listViewItem.SubItems.Add(stockInfo.LastTime.ToLongTimeString());
                            listViewItem.SubItems.Add(stockInfo.StartTime.ToShortTimeString());
                            listViewItem.SubItems.Add(stockInfo.EndTime.ToShortTimeString());
                            listViewItem.SubItems.Add(stockInfo.CollectionDate.ToShortDateString());

                            optionCControlSub3.ListViewStockInfo.Items.Add(listViewItem);
                        }
                    }

                    this.TreeView.Nodes.Add(newTreeNodePlate);
                }
                //----------------------------------------------

                // 搜索结果
                m_TreeNodeSearch.Nodes.Add(m_TreeNodeSearchSub);

                m_SearchControl         = new OptionDControl();
                m_SearchControl.Dock    = DockStyle.Fill;
                m_SearchControl.Visible = false;

                this.m_AllOptionControlInfo.Add(m_TreeNodeSearch, m_SearchControl);
                this.m_AllOptionControlInfo.Add(m_TreeNodeSearchSub, m_SearchControl);

                this.Panel.Controls.Add(m_SearchControl);

                this.TreeView.Nodes.Add(m_TreeNodeSearch);
                //----------------------------------------------

                this.TreeView.SelectedNode = m_TreeNodeSettingSub;
            }
            this.ResumeLayout(false);
        }
Esempio n. 6
0
        private void ReloadOptionFormInfo()
        {
            this.SuspendLayout();
            {
                m_AllOptionControlInfo.Clear();
                m_CurrentOptionControl = null;

                List <Control> controlList = new List <Control>();
                foreach (Control control in this.Panel.Controls)
                {
                    if (control != m_SettingControl && control != m_SearchControl)
                    {
                        controlList.Add(control);
                    }
                }

                foreach (Control control in controlList)
                {
                    this.Panel.Controls.Remove(control);
                }

                this.TreeView.Nodes.Clear();

                this.m_AllOptionControlInfo.Add(m_TreeNodeSetting, m_SettingControl);
                this.m_AllOptionControlInfo.Add(m_TreeNodeSettingSub, m_SettingControl);

                this.TreeView.Nodes.Add(m_TreeNodeSetting);

                PlateInfo[] plateInfos = GlobalSetting.PlateInfos;
                for (int iIndex = 0; iIndex < plateInfos.Length; iIndex++)
                {
                    PlateInfo plateInfo = plateInfos[iIndex];

                    TreeNode newTreeNodePlate     = new TreeNode(plateInfo.Name);
                    TreeNode newTreeNodePlateSub  = new TreeNode("常规");
                    TreeNode newTreeNodePlateSub2 = new TreeNode("所有股票");

                    newTreeNodePlate.Nodes.Add(newTreeNodePlateSub);
                    newTreeNodePlate.Nodes.Add(newTreeNodePlateSub2);

                    OptionBControl optionBControl = new OptionBControl {
                        Dock = DockStyle.Fill, Visible = false
                    };

                    this.m_AllOptionControlInfo.Add(newTreeNodePlate, optionBControl);
                    this.m_AllOptionControlInfo.Add(newTreeNodePlateSub, optionBControl);

                    this.Panel.Controls.Add(optionBControl);

                    OptionFControl optionFControl = new OptionFControl {
                        Dock = DockStyle.Fill, Visible = false
                    };

                    this.m_AllOptionControlInfo.Add(newTreeNodePlateSub2, optionFControl);

                    this.Panel.Controls.Add(optionFControl);

                    for (int iIndex2 = 0; iIndex2 < plateInfo.VarietyInfos.Length; iIndex2++)
                    {
                        VarietyInfo varietyInfo = plateInfo.VarietyInfos[iIndex2];

                        TreeNode newTreeNodePlateSub3 = new TreeNode(varietyInfo.Name);
                        newTreeNodePlate.Nodes.Add(newTreeNodePlateSub3);

                        OptionCControl optionCControlSub3 = new OptionCControl {
                            Dock = DockStyle.Fill, Visible = false
                        };

                        this.m_AllOptionControlInfo.Add(newTreeNodePlateSub3, optionCControlSub3);

                        this.Panel.Controls.Add(optionCControlSub3);

                        for (int iIndex3 = 0; iIndex3 < varietyInfo.FileInfos.Length; iIndex3++)
                        {
                            Demo.Stock.X.Common.FileInfo fileInfo = varietyInfo.FileInfos[iIndex3];

                            StockManager stockManager = GlobalStockManager.GetStockManagerByPlateAndVariety(plateInfo.Name, varietyInfo.Name);
                            StockInfo    stockInfo    = stockManager.GetStockDataByStockCode(GlobalSetting.GetStockCode(fileInfo.StockName, fileInfo.StockSymbol));
                            if (stockInfo == null)
                            {
                                continue;
                            }

                            ListViewItem listViewItem = new ListViewItem(stockInfo.StockName, 0);
                            listViewItem.SubItems.Add(stockInfo.StockSymbol);
                            listViewItem.SubItems.Add(stockInfo.Periodicity.ToString());
                            listViewItem.SubItems.Add(stockInfo.FirstDate.ToShortDateString());
                            listViewItem.SubItems.Add(stockInfo.LastDate.ToShortDateString());
                            listViewItem.SubItems.Add(stockInfo.FirstTime.ToLongTimeString());
                            listViewItem.SubItems.Add(stockInfo.LastTime.ToLongTimeString());
                            listViewItem.SubItems.Add(stockInfo.StartTime.ToShortTimeString());
                            listViewItem.SubItems.Add(stockInfo.EndTime.ToShortTimeString());
                            listViewItem.SubItems.Add(stockInfo.CollectionDate.ToShortDateString());

                            optionCControlSub3.ListViewStockInfo.Items.Add(listViewItem);
                        }
                    }

                    this.TreeView.Nodes.Add(newTreeNodePlate);
                }

                // 搜索结果
                this.m_AllOptionControlInfo.Add(m_TreeNodeSearch, m_SearchControl);
                this.m_AllOptionControlInfo.Add(m_TreeNodeSearchSub, m_SearchControl);

                m_TreeNodeSearch.Nodes.Clear();
                m_TreeNodeSearch.Nodes.Add(m_TreeNodeSearchSub);

                this.TreeView.Nodes.Add(m_TreeNodeSearch);

                this.TreeView.SelectedNode = m_TreeNodeSetting;
            }
            this.ResumeLayout(false);
        }
Esempio n. 7
0
        private void LoadConfigFormInfo()
        {
            if (m_IsInitializing == false)
            {
                ConfigForm_Load(this, EventArgs.Empty);
            }

            this.TreeView.Nodes.Clear();
            this.Panel.Controls.Clear();

            PlateInfo[] plateInfos = GlobalSetting.PlateInfos;

            for (int iIndex = 0; iIndex < plateInfos.Length; iIndex++)
            {
                PlateInfo plateInfo = plateInfos[iIndex];

                TreeNode newTreeNodeParent = new TreeNode(plateInfo.Name);

                //
                TreeNodePlateName treeNodePlateName = new TreeNodePlateName();
                treeNodePlateName.PlateName = plateInfo.Name;

                TreeNode newTreeNodeAll = new TreeNode("所有的股票");
                newTreeNodeParent.Nodes.Add(newTreeNodeAll);

                ConfigBControl configBControlAll = new ConfigBControl();
                configBControlAll.Visible = false;
                configBControlAll.Dock    = DockStyle.Fill;

                this.m_AllConfigControlInfo.Add(newTreeNodeParent, configBControlAll);
                this.m_AllConfigControlInfo.Add(newTreeNodeAll, configBControlAll);

                for (int iIndex2 = 0; iIndex2 < plateInfo.VarietyInfos.Length; iIndex2++)
                {
                    VarietyInfo varietyInfo = plateInfo.VarietyInfos[iIndex2];

                    TreeNode newTreeNodeSub = new TreeNode(varietyInfo.Name);
                    newTreeNodeParent.Nodes.Add(newTreeNodeSub);

                    //
                    treeNodePlateName.VarietyName.Add(newTreeNodeSub, varietyInfo.Name);

                    ConfigAControl configAControlSub = new ConfigAControl();
                    configAControlSub.Visible            = false;
                    configAControlSub.Dock               = DockStyle.Fill;
                    configAControlSub.ButtonSaveChanged += new EventHandler(ConfigAControl_ButtonSaveChanged);

                    this.m_AllConfigControlInfo.Add(newTreeNodeSub, configAControlSub);

                    for (int iIndex3 = 0; iIndex3 < varietyInfo.FileInfos.Length; iIndex3++)
                    {
                        FileInfo fileInfo = varietyInfo.FileInfos[iIndex3];

                        ListViewItem listViewItemSub = new ListViewItem(fileInfo.StockName);
                        ListViewItem.ListViewSubItem listViewSubItemSub1 = new ListViewItem.ListViewSubItem(listViewItemSub, fileInfo.StockSymbol);
                        ListViewItem.ListViewSubItem listViewSubItemSub2 = new ListViewItem.ListViewSubItem(listViewItemSub, fileInfo.FilePath);

                        listViewItemSub.SubItems.Add(listViewSubItemSub1);
                        listViewItemSub.SubItems.Add(listViewSubItemSub2);

                        configAControlSub.ListView.Items.Add(listViewItemSub);

                        ListViewItem listViewItemAll = new ListViewItem(fileInfo.StockName);
                        ListViewItem.ListViewSubItem listViewSubItemAll1 = new ListViewItem.ListViewSubItem(listViewItemAll, fileInfo.StockSymbol);
                        ListViewItem.ListViewSubItem listViewSubItemAll2 = new ListViewItem.ListViewSubItem(listViewItemAll, fileInfo.FilePath);

                        listViewItemAll.SubItems.Add(listViewSubItemAll1);
                        listViewItemAll.SubItems.Add(listViewSubItemAll2);

                        configBControlAll.ListView.Items.Add(listViewItemAll);
                    }

                    this.Panel.Controls.Add(configAControlSub);
                }

                this.TreeView.Nodes.Add(newTreeNodeParent);
                this.Panel.Controls.Add(configBControlAll);

                m_PlateName.Add(newTreeNodeParent, treeNodePlateName);
            }
        }
Esempio n. 8
0
        private void SaveConfigFormInfo()
        {
            List <PlateInfo> plateInfoList = new List <PlateInfo>();

            for (int iIndex = 0; iIndex < this.TreeView.Nodes.Count; iIndex++)
            {
                TreeNode treeNodeParent = this.TreeView.Nodes[iIndex];
                if (treeNodeParent == null)
                {
                    continue;
                }

                PlateInfo plateInfo = new PlateInfo();
                plateInfo.Name         = treeNodeParent.Text;
                plateInfo.VarietyInfos = new VarietyInfo[0];

                plateInfoList.Add(plateInfo);

                List <VarietyInfo> varietyInfoList = new List <VarietyInfo>();

                for (int iIndex2 = 1; iIndex2 < treeNodeParent.Nodes.Count; iIndex2++)
                {
                    TreeNode treeNodeParentSub = treeNodeParent.Nodes[iIndex2];
                    if (treeNodeParentSub == null)
                    {
                        continue;
                    }

                    VarietyInfo varietyInfo = new VarietyInfo();
                    varietyInfo.Name      = treeNodeParentSub.Text;
                    varietyInfo.FileInfos = new FileInfo[0];

                    varietyInfoList.Add(varietyInfo);

                    UserControl outUserControl = null;
                    if (m_AllConfigControlInfo.TryGetValue(treeNodeParentSub, out outUserControl) == true)
                    {
                        ConfigAControl outConfigAControl = outUserControl as ConfigAControl;
                        if (outConfigAControl != null)
                        {
                            List <FileInfo> fileInfoList = new List <FileInfo>();

                            for (int iIndex3 = 0; iIndex3 < outConfigAControl.ListView.Items.Count; iIndex3++)
                            {
                                ListViewItem listViewItem = outConfigAControl.ListView.Items[iIndex3];

                                FileInfo fileInfo = new FileInfo();
                                fileInfo.StockName   = listViewItem.Text;
                                fileInfo.StockSymbol = listViewItem.SubItems[1].Text;
                                fileInfo.FilePath    = listViewItem.SubItems[2].Text;

                                fileInfoList.Add(fileInfo);
                            }

                            varietyInfo.FileInfos = fileInfoList.ToArray();
                        }
                    }
                }

                plateInfo.VarietyInfos = varietyInfoList.ToArray();
            }

            GlobalSetting.SaveConfigSetting(GlobalSetting.ConfigFilePath, plateInfoList.ToArray());
        }