Example #1
0
        /// <summary>
        /// 获取目录
        /// </summary>
        /// <returns>目录</returns>
        public String getDirectory()
        {
            String fileName = FCStrEx.convertDBCodeToFileName(m_code);
            String dir      = DataCenter.getDataPath() + "\\" + m_identifier;

            dir += "\\" + fileName.Replace(".txt", "");
            return(dir);
        }
Example #2
0
        /// <summary>
        /// 获取通达信的历史数据的字符串
        /// </summary>
        /// <param name="code">股票代码</param>
        /// <param name="path">本地文件路径</param>
        /// <returns>数据字符串</returns>
        public static String getTdxHistoryDatasStrByCode(String code, String path)
        {
            String fileName = FCStrEx.convertDBCodeToFileName(code);
            String result   = "";
            String filePath = path + fileName;

            if (FCFile.isFileExist(filePath))
            {
                FCFile.read(filePath, ref result);
            }
            return(result);
        }
Example #3
0
        /// <summary>
        /// 获取分时数据
        /// </summary>
        public static void getMinuteDatas()
        {
            if (m_minuteDatas.Count > 0)
            {
                return;
            }
            String appPath = DataCenter.getAppPath();

            foreach (String code in m_codedMap.Keys)
            {
                String fileName = m_newFileDir + FCStrEx.convertDBCodeToFileName(code);
                if (!FCFile.isFileExist(fileName))
                {
                    fileName = m_newFileDir + FCStrEx.convertDBCodeToSinaCode(code).ToUpper() + ".txt";
                }
                if (FCFile.isFileExist(fileName))
                {
                    String text = "";
                    FCFile.read(fileName, ref text);
                    List <SecurityData> datas = new List <SecurityData>();
                    StockService.getHistoryDatasByMinuteStr(text, datas);
                    if (datas.Count > 0)
                    {
                        int rindex   = 0;
                        int dataSize = datas.Count;
                        while (rindex < dataSize)
                        {
                            SecurityData d = datas[rindex];
                            if (rindex == 0)
                            {
                                d.m_avgPrice = d.m_close;
                            }
                            else
                            {
                                SecurityData ld = datas[rindex - 1];
                                d.m_avgPrice = (ld.m_avgPrice * rindex + d.m_close) / (rindex + 1);
                            }
                            rindex++;
                        }
                        m_minuteDatas[code] = datas;
                    }
                }
            }
        }