




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘要目录摘要IVAbstractVI第一章 引言81.1 研究背景及意义81.2 国内外研究现状91.3 本文的研究内容及创新点91.4 本文的组织结构10第二章 基于数据挖掘技术的股票分析系统112.1 相关理论概述112.1.1 数据挖掘(data mining)技术112.1.2 数据挖掘技术在股票分析系统上的应用122.1.3 指标分析在证券分析系统中的应用132.1.4 C#语言简介142.1.5 开发环境和运行环境142.2 需求分析142.3 系统设计152.3.1 系统的总体设计152.3.2 指标分析子系统的设计16第三章 数据库设计193.1 数据库选择193.1.1 数据
2、库开发工具简介193.1.2 数据库的创建193.2 实体关系设计193.2.1 股票数据仓库维表实体定义193.2.2 股票数据仓库事实表实体定义213.325第四章 指标分析模块的设计及实现264.1 表示层设计264.1.1 主界面模块设计264.1.2 数据修复模块264.2 业务层设计274.2.1 K线具体数据显示模块274.2.2 选股模块284.2.3 K线显示模块284.2.4 成交量显示模块294.2.5 数据业务模块304.3 数据层设计314.3.1 数据库访问模块314.3.2 主程序流程图32第五章 编码335.1 图形绘画基础335.1.1 GDI+的原理335.
3、1.2 绘图的程序实现335.1.3 分层绘图的实现345.2 自定义控件355.2.1 自定义控件基础355.2.2 自定义控件的运行时移动及可控缩放的实现355.3 数据库编程365.3.1 ADO.NET简介365.3.2 连接数据库375.3.3 数据库操作37第六章 设计结果396.1 界面介绍396.2 功能与操作40第七章 结束语42第八章 参考文献43摘要股票交易行业在经过多年发展后,积累了大量的历史数据,这些数据蕴藏着关于股票市场未来发展趋势的重要信息。如何利用已有的海量的股票数据分析企业经营状况;分析与预测股市未来发展趋势,为投资者提供优秀的客户服务,成为证券企业提高市场竞
4、争力的重要手段。在软硬件飞速发展的今天,利用电脑软件来控制证券交易成为主流趋势。能够快速、真实、方便的将股票数据以图形化的方式呈现在用户面前,成为证券软件的必备功能。基于上述理由,本文将探讨股票指标分析的软件实现。首先对软件三层开发模式以及相关技术做了深入的分析,利用软件工程学方法,根据实际应用需求,进行数据库的设计与开发,在完成了对系统的各个模块分析与设计之中,发现VS2008的控件都不能符合本系统的要求,所以决定利用自定义控件实现股票信息的显示。最后,我们进行的实际编码与优化,最终通过了测试完成了股票指标分析器。于此同时,为提高图形显示的效率以及效果,本文提出了基于C#.NET的分层绘图技
5、术以及自定义控件运行时移动和缩放的实现。关键词:股票、分层绘图、三层设计模式、自定义控件AbstractWith the development of stock business for many years, a great deal of history trading data has been accumulated. Much valuable information about the development of securities business in the future was hidden in these history data. How to utilize
6、these data, provide the factual reflection of the securities company; analyze and forecast the trend of future stock market, and provide investors for excellent customer service, these processes are the very important method to improve the competitiveness of securities company in the market. However
7、, the quantity of stocks data is so large that the storage of data is scattered, and there are redundancy , a lot of errors, etc. in data. These problems are hampering analyses of data and discovering unknown information. Data warehouse is oriented management of data, data warehouse technology enabl
8、es the effective management of stock data, then provides quality data for the enterprise to make the decision quickly. For above all reasons, this paper discusses how to manage stock data by using data warehouse . Firstly, research the architecture of data warehouse system deeply, then try to design
9、 and develop the system of stocks data warehouse based on the actual requirement with software engineering method. Establish the data market of stock trade, technical indicators and fundamental information about stock. These data markets provide better and basic data for analyszing the trend of stoc
10、k market, analyzing technical indicators of stock data and analysis of fundamental information. Meanwhile, for improving the efficiency of OLAP queries based on stock data warehouse, in the paper to build dimension layer code based on encoding bitmap index of dimension table. Replace the foreign key
11、 of dimension table with dimension layer code which is shorter than the foreign key. When search some data in DW, we can get the scope of dimension layer attributes through searching dimension layer code instead of data tables keywords. So we convert a large number of multi-table connections in OLAP
12、 query into scope query in fact table. So as to reduce and simplify the multi-table connections between case table and dimension table significantly. Thereby, increase the efficiency of the OLAP queriesKeywords: stock, data warehouse, encoding bitmap index, dimension layer cod41引言1.1 研究背景及意义近年来,伴随我国
13、宏观经济的逐渐复苏和市场经济改革的不断深入,国内证券市场已经得到了了长足的发展。截至2009年11月底,境内上市公司总数达到1,693家,沪、深两市股票市场总市值已达23.95万亿元,已进入二级市场流通的市值14.35万亿元,投资者开设的股票有效账户数达到11,882.78万户。2009年1-11月境内证券市场筹资累计3,809.15亿元,沪、深股市股票基金成交总额达483,871.72亿元。社会经济的进一步大规模发展,使股市行情的变动以及其它一些金融市场的变化,如黄金市场,汇率市场等等都越来越强烈地影响着经济的发展。对其变化规律的研究有很低重要的现实意义。股市出现以来,人们一直不断地观察分析
14、股市的变化情况,已经总结出了很多理论和方法。实践证明股市价格的变化莫测是具有一定的可预测性的。但是,由于影响股市价格变化的因素太多,股票市场不仅受经济的影响,还受政治等因素的作用,其中还有很多难以量化、模糊的因素,其内部规律非常复杂,变化周期无序,同时我国股市具有特殊性,这些给对股市的分析与预测带来了挑战。数据挖掘Error! Reference source not found.是一个利用各种分析工具在海量数据中发现模型和数据间关系的过程,这些模型和关系可以用来预测和决策。由于数据挖掘带来的显著的经济效益,使数据挖掘越来越普及。数据挖掘可以应用在各个不同的领域。对于证券领域而言,数据挖掘技术
15、主要应用于对证券公司的客户关系的管理和对证券交易行情数据的预测。而对于证券投资者来说,这些对证券交易行情的预测数据将影响到未来的投资策略,所以,投资者们需要一个人性化、图像化、直观明了的数据查询工具,能够方便地帮助他们获得所需要的各种股票指标和数据。1.2 国内外研究现状数据仓库查询技术的研究主要集中在提高查询性能上,比如对物化视图、索引、数据立方体、并行处理、数据压缩等技术的研究。其中,物化视图是利用冗余的数据来提高查询性能,即将经常使用的查询先进行计算后就保存结果,当真正处理查询时,直接查询该实视图,而不需要对多个基表进行连接或聚集操作;使用索引技术查找时,无需对整个表进行扫描就可以在其中
16、找到符合查询条件的记录,由于数据仓库中的数据很少更新,使用合适的索引已成为一个提高查询性能的重要方法;数据立方体是实现多维数据查询与分析的一种重要手段,对于它的研究主要集中在数据立方体的计算上;使用并行化策略来处理数据仓库的大量数据,是减少查询响应时间较为常用的手段;数据压缩技术是为了减少查询扫描的数据,以此提高查询速度。目前,在国外,各个研究机构已经开展了大量的研究工作,并取得了一定的成果,例如斯坦福大学的WHIPS项目、IBM Almaden研究中心和微软的Quest项目、Bell实验室的AQUA项目以及威斯康辛大学和AT&T的研究等。其中,WHIPS的研究目标是要生成一个高效的、
17、自动集成异构数据源的算法和工具;Quest的研究重点是多维数据库的建模与组织;AQUA对于抽样在连接操作和聚集操作中存在的问题进行了深入了研究;威斯康辛大学和AT&T则侧重于实视图、OLAP数据组织、数据立方体计算等的研究。在系统开发方面,各大数据库厂商也对数据仓库的研制给予了相当的关注,如IBM、Oracle和Sybase都分别推出了各自的数据仓库整体解决方案。在国内,这方面的研究正在起步,一些学校和研究所也对数据仓库技术进行了研究,比如中国人民大学、南京大学、哈尔滨工业大学等,他们的研究则主要集中在数据仓库的体系结构、数据仓库的建模、数据仓库中数据的组织与存储、数据立方体的计算等方
18、面。1.3 本文的研究内容及创新点指标分析的设计和实现要建立在股票分析系统的分析结果上,忠于原数据,忠于指标的运算公式,才能得到正确的,有利用价值的指标分析结果。从实际的需求出发,本文对以下两个方面做了重点研究实践。第一图形化控件的研究。按照软件工程的步骤,对股票分析系统指标分析的设计和实现进行需求分析,在需求的基础上进行指标设计与开发,并最终通过实际应用案例来验证指标系统的设计的合理性。本文设计与开发的指标系统旨在将股票分析系统的分析结果以图形化的方式展示出来,为进一步开发更为完善的指标系统提供参考。第二三层设计模式的研究。本设计利用软件开发的三层设计模式,将指标系统的实现分为数据层、业务层
19、和表示层。数据层主要和数据库交互,从数据库中查询所需要的数据并进行处理;业务层处理系统的业务逻辑;表示层通过业务层得到的最终数据将指标图以图形化的方式显示出来。第三数据库使用的研究。本设计需要用到大量的数据,所以必须以数据库存储。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点。所以,正确而熟练地使用数据库对于本设计具有重要的意义。1.4 本文的组织结构本文共分为七个部分,组织结构如下:第1章 引言第2章
20、基于数据挖掘技术的股票分析系统第3章 数据库设计第4章 指标分析模块的设计及实现第5章 编码第6章 设计结果第7章 总结与展望 基于数据挖掘技术的股票分析系统1.5 相关理论概述1.5.1 数据挖掘(data mining)技术近年来,信息技术不断发展,先进的科技手段为各个领域中大量数据的产生和存储提供了可能。大量的数据被描述为“数据丰富,但信息贫乏”。有调查表明,在科学研究中产生的数据有90%从未被使用过,造成这一局面的一个根本原因是缺乏利用数据的手段。虽然采用数据库技术将数据组织起来大大提高了检索速度并能提供简单的分析功能,但是它无法发现数据中隐藏的具有相当价值的规律。因此,人们迫切需要能
21、够对大量的数据进行存储、管理、对比、检索,并能从中寻找出相关性,挖掘出数据中所隐藏的规律的新技术。在这种迫切需求下,数据挖掘技术出现了并得到了迅速的发展,它是信息技术自然演化的结果。数据挖掘Error! Reference source not found.是从大量的数据中挖掘出隐含的、未知的、用户可能感兴趣的和对决策有潜在价值的知识和规则。这些规则蕴含了数据库中一组对象之间的特定关系,揭示出一些有用的信息,可以为经营决策、市场策划和金融预测等方面提供依据。数据挖掘是多个学科相关技术融合的产物,包括数据库技术、统计学、机器学习、模式识别、神经网络等。作为一门具有广泛应用的新兴学科,数据挖掘得到
22、了广泛的应用。由于数据挖掘有较强的容错性,输入数据在某些部分上的错误对数据挖掘最终结果的正确性影响不大。如果我们所使用的数据越多越全面,则其中所蕴含的事物本身的规律性就越强,利用数据挖掘从中所抽取的知识就越具有普遍性,因而就更准确。以非线性大规模并行分布处理为特点的数据挖掘理论突破了传统的线性处理模式,以其高度的并行性,良好的容错性和自适应能力成为人们探索和研究某些复杂大系统的有力工具。因为支持这种技术的三种基础技术(海量数据搜集,强大的多处理器计算机,数据挖掘已经发展成熟,现在数据挖掘技术已经具备切实的可行性。目前,数据挖掘技术广泛应用于如金融、电信、保险、交通、零售等领域。1.5.2 数据
23、挖掘技术在股票分析系统上的应用随着经济全球化和信息处理技术的飞速发展,财经数据急剧增加,涌现出了大量使用数据挖掘技术解决金融难题的研究和应用。如贸易模型发展,投资选择,投资优化,借贷评估,欺诈检测,破产预测,不动产估价等等。通过数据挖掘,可以在增加税收、降低成本以及更大程度的改善市场的灵敏度方面体现出竞争优势。数据挖掘在证券市场上的应用主要是对证券公司的客户关系管理和对证券交易行情数据的预测分析。其中针对股票的预测分析最具有挑战性,这也是本文研究的重点。进行数据挖掘一般需要建立数据仓库,所以我们实现了一个针对股票数据的数据仓库。由于股票交易行情数据本质上是一个非线性时间序列,所以对股票的预测其
24、实就是针对时间序列模式进行挖掘。时间序列中的某个字段的值是随着时间而不断变化的,设一个变量为Y,表示某一支股票每天的收盘价,则Y可以看作是时间t的函数。近年来,人工智能研究取得了突破性的进展,涌现了一大批人工智能的研究成果,如支持向量机,神经网络,聚类,模糊理论,粗糙集和遗传算法等广泛应用于各个学科领域(包括股票交易行情预测)。数据挖掘作为人工智能的重要技术,已经逐渐在证券分析领域应用开来,目前应用最广的主要有以下几种:1、关联规则分析时间序列关联规则的抽取:通过固定长度的窗口将时间序列离散化成一系列子序列,研究子序列之间的相似性,然后将相似的子序列进行聚类形成模式,应用关联规则的研究方法从各
25、种模式中抽取关联规则,可以得到一个时间序列内部不同模式之间的关联规则或不同时间序列之间模式的关联规则。其规则形如 “如果第一天Microsoft上涨而且Intel下降,则IBM第二天上涨”。2、聚类分析聚类分析能够综合多项财务指标来反映上市公司的盈利能力和水平,所得聚类结果与公司的实际财务状况和经营状况相吻合。并据此归结出整个板块股票的分类及其特点,为投资者和市场各参与主体有效把握中小企业上市公司及其成长趋势提供参考。我们还可以对所选出的各个板块的龙头潜力股再进行聚类分析,找出最具实力的板块龙头股。3、神经网络神经网络由于其强大的非线性逼近和泛化能力,得到了最为广泛的应用。Lapedes等最早
26、发表了将神经网络用于预测的文章。90年代以来,国外利用神经网络对股票交易价格进行预测的报道层出不穷24-25。近年来,国内一些学者也开始利用神经网络方法对我国股市的股票交易价格进行预测26-28。基于神经网络的股票预测方法,主要利用神经网络进行股票交易数据的学习训练,然后使用训练出的模型进行股市预测。另外还可以采用遗传算法对神经网络的学习权值调节,使神经网络模型更加逼近系统模型。4、模糊专家模型模糊模型本质上就是一种非线性模型,宜于表达复杂系统的动态特性,具有逼近任何非线性映射的能力。采用模糊模型技术进行预测,主要是依据专家经验、或统计方法建立模糊模型进行预测。5、数据挖掘的进化遗传模拟相关研
27、究表明,证券市场中的群体的心理和行为的影响左右着个体的心理和行为,进化理论不仅是生物学的统一理论,而且可以作为所有智能过程的统一描述;特别是对社会群体心理和行为的研究。近年来,国内外的进化计算与混合认知智能预测取得了良好的效果,数据挖掘技术的研究将极大地提高其有效性和精度。1.5.3 指标分析在证券分析系统中的应用K线图又称蜡烛线、阴阳线或棒线,原来是日本米市商人用来记录米市当中的行情波动,后因其标画方法具有独到之处,因而在股市及期市中被广泛引用。K线将买卖双方力量 的增减与转变过程及实战结果用图形表示出来。经过近百年来的使用与改进,K线理论被投资人广泛接受。 画法: K线之开盘价与收盘价之间
28、以实体表示。若收盘价高于开盘价,以中空实体表示,称红线或阳线;若收盘价低于开盘价,则以黑色实体表示,称黑线或阴线。 若当天最高价高于实体之高价,则在实体上方另加细线,称为上影线;当天最低价低于实体之低价,也在实体下方另加细线,称为下影线。K线时其他技术指标的基础,所以K线的设计和实现是指标系统的基础。1.5.4 C#语言简介C#是一种安全的、稳定的、简单的、优雅的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性
29、和便捷的面向组件编程的支持成为.NET开发的首选语言。 并且C#成为ECMA与ISO标准规范。C#看似基于C+写成,但又融入其它语言如Pascal、Java、VB等。1.5.5 开发环境和运行环境开发环境:Microsoft Visual Studio 2008、Microsoft SQL Server 2000运行环境:Microsoft XP/VISTA/2007 (.net framework 3.5)1.6 需求分析基于数据挖掘技术的股票分析系统,可以在增加税收、降低成本以及更大程度的改善市场的灵敏度方面体现出竞争优势。数据挖掘在证券市场上的应用主要是对证券公司的客户关系管理Error
30、! Reference source not found.和对证券交易行情数据的预测分析Error! Reference source not found.。良好的指标分析的设计与实现对于股票分析系统的分析结果来说是非常重要的,只有真实无误地把分析结果以图形化的方式展示在用户眼前,才能让用户的到一个感性的任何,更有利于其做出准确的判断。所以,指标分析的设计和实现有如下需求:1、以基于数据挖掘技术的股票分析系统为基础,需正确地展示其分析结果。2、指标的设计和实现必须忠于原数据,忠于原公式,保证数据得到最精确的体现。3、功能丰富完整,操作方便简单,界面简洁、大方、人性化,能够让用户容易地查询各种数
31、据。1.7 系统设计1.7.1 系统的总体设计图 4.1 股票数据仓库系统结构从图4.1可以看出,股票数据仓库系统可以分为数据抽取转换装载模块、数据存储以及管理模块(股票数据仓库)、数据挖掘分析模块、多维分析模块和用户交互模块。数据抽取转换装载模块负责对数据源的数据进行清洗、转换,最后将数据加载到数据仓库中;数据存储以及管理模块负责确定数据的物理存储结构,管理数据仓库元数据;数据挖掘分析模块主要利用各种数据挖掘算法,对股票数据仓库中的数据进行计算分析,发现大量数据中隐藏的有价值的信息;多维分析模块主要根据实际情况建立面向不同主题的多个多维数据集,使决策人员能够面向多个主题、多个角度分析数据;用
32、户交互模块负责将多维分析结果及数据挖掘结果以易于理解和直观的界面向用户进行前端展示,前端工具主要包括各种数据分析工具、报表工具、查询工具等。(2)系统功能 在股票数据仓库建设完成后,我们设计了一系列基于数据仓库的系统功能,具体功能描述如图4.2所示。系统各种功能依赖于OLAP分析或数据挖掘或两者的结合。基于股票数据仓库的系统功能数量会随着需求的变化而不断增加,我们在初始阶段不能实现所有功能。现阶段系统只实现少数几个功能,包括行情趋势分析和指标技术分析。股票数据仓库系统OLAP分析数据挖掘经营状况分析行情趋势分析交易状况分析技术指标分析盈利情况分析图 4.2 系统功能1.7.2 指标分析子系统的
33、设计一、.NET的三层架构三层架构包含表示层、业务层和数据层三层。对于应用系统来讲,表示层和用户交互并显示数据,业务层负责访问数据层并向表示层提交数据,数据层负责数据的存储。采用分层设计的软件会达到诸如可维护性、可重用性、可伸缩性、可靠性和安全性等运行要求。以下是三层架构的详细含义和组成: 表示层它主要是只与用户交互的界面,它接受用户的输入,但并不包括任何实际的业务处理,它只是简单地数据转交给业务层,同时它负责展现业务层传递过来的数据,当后台业务逻辑更新数据时,表示层就会显示这些更新。表示层提供应用层序的用户界面(UI),通常包括Windows窗体和ASP.NET Web窗体的使用。 业务层它
34、代表了应用程序的核心功能,负责处理数据层的数据,实现业务逻辑。业务层是业务概念的软件实现。业务层封装业务逻辑,业务逻辑实现某种规则的业务处理以匹配特定公司的需要。对于解决大型方案,所有与借贷有关的业务逻辑可能都封装在单独的一个借贷组建中。 数据层负责访问数据库,并将存储在数据库中的数据提交给业务层。该层涉及到的主要.NET技术是ADO.NET,但是,在这里也经常用到一些.NET XML的功能。微软的三层架构示意图:表示层业务层数据层二、子系统的三层架构模块设计 表示层 数据修复模块主界面模块业务层 选股模块K显示模块数据库业务模块K线数据显示数据层数据库访问模块 数据库设计1.8 数据库选择鉴
35、于兼容性和获得更好的支持度,数据库开发工具选择Microsoft SQL Server 20001.8.1 数据库开发工具简介SQL Server 是一个关系数据库管理系统,它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本;Sybase 则较专注于SQL Serv
36、er在UNIX 操作系统上的应用。在本书中介绍的是Microsoft SQL Server 以后简称为SQL Server或MS SQL Server。 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。1.8.2 数据库的创建创建股票数据数据库Stoc
37、kData_Test。1.9 实体关系设计1.9.1 股票数据仓库维表实体定义维表里记录了对事实表的描述信息,用户可以根据维度从不同的角度去观察事实数据。日期维度在所有的主题中都应该存在的,考虑股票数据分析的时间跨度因素,我们创建了季度维度(Dim_Quarter)、日期维度(Dim_Date)和时间维度(Dim_Time),三个维表的详细情况请参见表4.3、4.4和4.5;表4.6描述了行业板块维表的信息;表4.7描述了地域维表的信息;表4.8描述了股票类型维表的信息;在计算各种技术指标常用到各种技术参数,表4.9描述了技术指标参数维表的信息。 季度维度(Dim_Quarter)属性名称类型
38、Quarter_Code编码CHARYear年CHARQuarter季度CHAR 4.3 季度维表实体定义表 日期维度(Dim_Date)属性名称类型Date_ID日期编号NUMBERDate实际日期DATEYear_Code年编码CHARQuarter_Code季度编码CHARMonth_Code月编码CHARWeek_Code周编码CHAR4.4 时间维表实体定义表时间维度(Dim_Time)属性名称类型Time_ID时间编号NUMBERTime_Start起始时间DATETime _End结束时间DATEHour_Code小时编码CHARM_30_Code三十分钟编码CHARM_15_C
39、ode十五分钟编码CHARM_5_Code五分钟编码CHARM_1_Code一分钟编码CHAR表4.5 时间维表实体定义行业板块维度(Dim_Plate)属性名称类型Plate_ID行业编号NUMBERPlate_Name行业名称VARCHARPlate_Des行业描述信息VARCHARStart_Date有效起始日期DATEEnd_Date失效日期DATE4.6 行业板块维表实体定义表地域维度(Dim_Region)属性名称类型Region _ID地域编号NUMBERRegion _Name地域名称VARCHARRegion _Des地域描述信息VARCHARStart_Date有效起始日期
40、DATEEnd_Date失效日期DATE表4.7 地域维表实体定义股票类型维度(Dim_Stock_Type)属性名称类型Type _ID类型编号NUMBERType _Name股票类型名称VARCHARType_Des类型描述信息VARCHARStart_Date有效起始日期DATEEnd_Date失效日期DATE表4.8 股票类型维表实体定义技术参数维表(Tech_PARAM)属性名称类型PARAM_ID参数编号NUMBERPARAM_CODE参数代码VARCHARPARAM_DESP参数描述NUMBERPARAM_VALUE参数值NUMBERPARAM_DATE参数创建日期DATE表4.
41、9 技术标参数维表实体定义1.9.2 股票数据仓库事实表实体定义股票基本面信息记录了股票基本信息、股本结构信息和财务信息,基本面信息包含了:股票基本信息事实表,如表4.10所示;股本结构事实表,如表4.11所示;财务事实表,如表4.12所示。股票基本信息事实表(Base_Stock)属性名称类型Stock _ID股票编号NUMBERStock _Code股票代码VARCHARStock _Name股票名称VARCHARPlate_ID行业编号NUMBERRegion _ID地域编号NUMBERType _ID类型编号NUMBERStart_Date有效起始日期DATEEnd_Date失效日期D
42、ATEStock _Des地域描述信息VARCHAR 表4.10股票基本信息事实表实体定义股本结构事实表(Base_Stock_Share)属性名称类型Stock _Share_ID股本结构编号NUMBERStock _ID股票编号NUMBERQuarter_Code季度编号NUMBERStock _Share_Total股票总股本NUMBERStock _Share_Nation国有股NUMBERStock _Share_ Initiate发起法人股NUMBERStock _Share_Legal法人股NUMBERStock _Share_Staff职工股NUMBERStock _Share
43、_A流通A股NUMBERStock _Share_BB股NUMBERStock _Share_HH股NUMBERStock _Share_Distri转配股NUMBERStart_Date有效起始日期DATEEnd_Date失效日期DATE表4.11股本结构事实表实体定义财务事实表(Base_Stock_Finance)属性名称类型Stock_Finance _ID每期财务编号NUMBERStock _ID股票编号NUMBERQuarter_Code季度编号NUMBERStock _Total_Assets总资产NUMBERStock _Fixed_Assets固定资产NUMBERStock
44、_Liquidity流动资产NUMBERStock _Intangibles无形资产NUMBERLong-term_Investments长期投资NUMBERFlow _Liabilities流动负债NUMBERLong _ Liabilities长期负债NUMBER表4.12财务事实表实体定义图 4.4股票基本信息事实表的维度关系图 4.5财务与股本结构事实表的维度关系股票交易主题记录了股票的交易情况。股票交易的历史信息按照时间划分可分为:分笔交易数据、五分钟数据、十分钟数据、半小时数据、日交行情数据和周行情数据等,本文出于篇幅考虑,只描述了日行情数据,如表4.13所示。日行情事实表(Tra
45、ns_Stock_Day)属性名称类型Stock_Day _ID日交易编号NUMBERStock_ID股票编号NUMBERDate_ID日期编号NUMBERShare_Close_Price收盘价NUMBERShare_Open_Price开盘价NUMBERShare_Highest_Price最高价NUMBERShare_Lowest_Price最低价NUMBERYesterday_Close_Price昨日收盘价NUMBERStock _ Average _ Price成交均价NUMBERStock _Trade_ Volume成交量NUMBERStock _Trade_ Amount成交
46、额NUMBERStock _Change涨跌NUMBERStock _ Change_Range涨跌幅NUMBERStock _ Turnover换手率NUMBERRw_Open_Price复权后开盘价NUMBERRw_Close_Price复权后收盘价NUMBERRw_Highest_Price复权后最高价NUMBERRw_Lowest_Price复权后最低价NUMBERRw _Y_Close_Price复权后昨日收盘价NUMBER表4.13日行情事实表实体定义图 4.5日行情事实表的维度关系指数指标主题记录了用于指标分析的指标数据。用于股票分析的技术指标种类繁多,有的是用于长线分析,有的是
47、用于短线分析,有的指标则二者兼顾。下面我们只给出了2种技术指标的事实表:MACD指标(如表4.14所示)和KDJ指标(如表4.15所示)。MACD指标事实表(Tech_MACD)属性名称类型Stock_MACD _IDMACD指标编号NUMBERStock_ID股票编号NUMBERDate_ID日期编号NUMBERPARAM_IDMACD参数编号NUMBERMACD_DIFFDIFF线NUMBERMACD_DEADEA线NUMBERMACD_BAR柱状值NUMBER表4.14 MACD指标事实表实体定义KDJ指标事实表(Tech_KDJ)属性名称类型Stock_ KDJ _IDMACD指标编号
48、NUMBERStock_ID股票编号NUMBERDate_ID日期编号NUMBERPARAM_IDKDJ参数编号NUMBERKDJ _RVS未成熟随机指标NUMBERKDJ _K快速确定线NUMBERKDJ _D慢速确定线NUMBERKDJ _J方向敏感线NUMBER表4.15 KDJ指标事实表实体定义图 4.6两种指标事实表的维度关系1.10指标分析模块的设计及实现本设计采用.NET的三层架构模型来设计,分为表示层、业务层、数据层三个层。下面将详细介绍着三个层的设计。1.11 表示层设计1.11.1 主界面模块设计主窗口类关系图:类说明:类名称说明SelectStock自定义控件,显示所有股
49、票的列表,供用户选择股票。KLineControl自定义控件,负责显示K线图。DataDisplayPannel自定义控件,负责显示选中K线的具体信息。MainForm主窗口界面,实现SelectStock、KLineControl,提供用户查询自选股票的K线图的功能。1.11.2 数据修复模块由于在将从外部获取的股票源数据导入数据库文件时格式发生混乱,导致了股票名出现了乱码。同时源数据的某些股票也与当前的股票不一致,所以有必要需要一个数据修复器来更正错误的数据。根据显示需求,数据修复模块提供数据的修改和数据的删除两个功能。功能一:数据修改。此模块提供两种数据修改方式,单项修改和集合修改。单项
50、修改,通过在代码文本框中填写需要修改的股票代码,然后在股票名文本框中填写目标股票名,点击单项修改按钮。集合修改,通过在几何修改文本框中以说明的格式填写需要修改的股票代码和目标股票名,点击集合修改按钮。功能二:数据删除。此模块提供了两种数据删除方式,单项删除和集合删除。单项删除,通过在代码文本框中填写需要删除的股票代码,点击单项删除按钮。集合删除,通过在集合删除文本框中以说明的格式填写需要删除的股票代码,点击集合删除按钮。下图为数据修复器的窗口:1.12 业务层设计1.12.1 K线具体数据显示模块DataDisplay控件的类关系图:类描述:类名称说明BaseData基本K线数据类,K线单元的
51、数据传输体。DataDisplayPanel自定义控件,负责显示选中K线的具体信息。实现BaseData,并将其实例对象的数据显示在面板上。1.12.2 选股模块SelectSock控件的类关系图:类描述:类名称说明ListView.NET基本控件类,可以需要进行列表展示。SelectSock自定义控件,显示所有股票的列表,供用户选择股票。实现ListView,通过数据库查询,获得所有股票的数据,在ListView实例上显示出来。1.12.3 K线显示模块KLineControl控件类关系图类描述:类名称说明BasicDrawInfo基本绘图信息类,创建实例以存储绘画K线图所需的基本信息,如客
52、户区大小、K线宽度、K线起始位置等。DrawInfoK线绘画信息类,创建实例以存储绘画一根K线的所有信息,包括该K线的开盘价、收盘价、最高价、最低价、时间。IGetDrawInfo获得绘图信息接口,提供获得基本绘图信息和K线绘图信息的方法。Drawing绘图初始化类,集成自IGetDrawInfo,实现BasicDrawInfo和DrawInfo类。实现IGetDrawInfo中获得基本绘图信息和K线绘图信息的方法。DataDisplayPannel自定义控件,负责显示选中K线的具体信息。BaseData基本K线数据类,K线单元的数据传输体。KLDataK线集合类,K线集合的数据传输体。并提供
53、该集合中最大值和最小值的属性。KLineControl自定义控件,负责显示K线图。实现Drawing、DataDisplay、KLData、BaseData、DrawInfo。通过Drawing实例获得所要显示的K线集合数据,并提供选择用户选择K线功能,通过DataDisplay将用户所选择的K线的具体数据显示。1.12.4 成交量显示模块该模块负责将每一根K线对应的成交量以柱形的图形显示出来,并显示选中K线的总手数目。效果图如下:1.12.5 数据业务模块 KLDataManger类关系图类描述:类名称说明KLDataManger数据业务处理模块,供表示层调用。此类通过调用数据层模块中的类以实现获得个中数据的功能。KLDataK线集合类,K线集合的数据传输体。并提供该集合中最大值和最小值的属性。BaseData基本K线数据类,K线单元的数据传输体。1.13 数据层设计1.13.1 数据库访问模块 DataAccess类关系图:类描述:类名称说明DataAccess数据库访问模块,供业务层模块调用,直接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit8 Our Blue Planet 第5课时 Grammar in use.教学设计-2024-2025学年仁爱科普版(2024)七年级英语下册
- 2024年农艺师考试相关法规试题及答案
- 五年级语文下册 第二单元 快乐读书吧教学设计 新人教版
- 市场营销师市场竞争策略试题及答案
- 物业运维考核试题及答案
- 拍卖房屋腾退协议
- 农业科技创新与发展思考试题及答案
- 2025年高三班主任学期工作总结(15篇)
- 系统分析师考试的模型与案例分析:2024年试题及答案
- 园艺土壤改良技术试题及答案
- 茂名热电厂5机组厂区基础土石方爆破开挖工程施工组织设计
- T∕ZZB 2449-2021 预应力钢筒混凝土管
- 钢筋混凝土排水管一级管配筋设计图册
- 施工现场质量安全生产管理体系报审表表
- 新版药品经营质量管理规范应知应会
- DISC性格测试(完全版)
- 初一下册生物期中考试复习提纲
- APQP培训-经典案例(完整版)
- 最全的L13J1建筑工程做法(共170页)
- 政策执行地路径
- 钢筋混凝土检查井技术交底
评论
0/150
提交评论