基于数据挖掘技术的股票分析系统的指标分析的实现的总体设计方案.docx
- 文档编号:10493285
- 上传时间:2023-02-14
- 格式:DOCX
- 页数:45
- 大小:775.42KB
基于数据挖掘技术的股票分析系统的指标分析的实现的总体设计方案.docx
《基于数据挖掘技术的股票分析系统的指标分析的实现的总体设计方案.docx》由会员分享,可在线阅读,更多相关《基于数据挖掘技术的股票分析系统的指标分析的实现的总体设计方案.docx(45页珍藏版)》请在冰豆网上搜索。
基于数据挖掘技术的股票分析系统的指标分析的实现的总体设计方案
目录
摘要IV
AbstractVI
第一章引言8
1.1研究背景及意义8
1.2国内外研究现状9
1.3本文的研究内容及创新点9
1.4本文的组织结构10
第二章基于数据挖掘技术的股票分析系统11
2.1相关理论概述11
2.1.1数据挖掘(datamining)技术11
2.1.2数据挖掘技术在股票分析系统上的应用12
2.1.3指标分析在证券分析系统中的应用13
2.1.4C#语言简介14
2.1.5开发环境和运行环境14
2.2需求分析14
2.3系统设计15
2.3.1系统的总体设计15
2.3.2指标分析子系统的设计16
第三章数据库设计19
3.1数据库选择19
3.1.1数据库开发工具简介19
3.1.2数据库的创建19
3.2实体关系设计19
3.2.1股票数据仓库维表实体定义19
3.2.2股票数据仓库事实表实体定义21
3.325
第四章指标分析模块的设计及实现26
4.1表示层设计26
4.1.1主界面模块设计26
4.1.2数据修复模块26
4.2业务层设计27
4.2.1K线具体数据显示模块27
4.2.2选股模块28
4.2.3K线显示模块28
4.2.4成交量显示模块29
4.2.5数据业务模块30
4.3数据层设计31
4.3.1数据库访问模块31
4.3.2主程序流程图32
第五章编码33
5.1图形绘画基础33
5.1.1GDI+的原理33
5.1.2绘图的程序实现33
5.1.3分层绘图的实现34
5.2自定义控件35
5.2.1自定义控件基础35
5.2.2自定义控件的运行时移动及可控缩放的实现35
5.3数据库编程36
5.3.1ADO.NET简介36
5.3.2连接数据库37
5.3.3数据库操作37
第六章设计结果39
6.1界面介绍39
6.2功能与操作40
第七章结束语42
第八章参考文献43
摘要
股票交易行业在经过多年发展后,积累了大量的历史数据,这些数据蕴藏着关于股票市场未来发展趋势的重要信息。
如何利用已有的海量的股票数据分析企业经营状况;分析与预测股市未来发展趋势,为投资者提供优秀的客户服务,成为证券企业提高市场竞争力的重要手段。
在软硬件飞速发展的今天,利用电脑软件来控制证券交易成为主流趋势。
能够快速、真实、方便的将股票数据以图形化的方式呈现在用户面前,成为证券软件的必备功能。
基于上述理由,本文将探讨股票指标分析的软件实现。
首先对软件三层开发模式以及相关技术做了深入的分析,利用软件工程学方法,根据实际应用需求,进行数据库的设计与开发,在完成了对系统的各个模块分析与设计之中,发现VS2008的控件都不能符合本系统的要求,所以决定利用自定义控件实现股票信息的显示。
最后,我们进行的实际编码与优化,最终通过了测试完成了股票指标分析器。
于此同时,为提高图形显示的效率以及效果,本文提出了基于C#.NET的分层绘图技术以及自定义控件运行时移动和缩放的实现。
关键词:
股票、分层绘图、三层设计模式、自定义控件
Abstract
Withthedevelopmentofstockbusinessformanyyears,agreatdealofhistorytradingdatahasbeenaccumulated.Muchvaluableinformationaboutthedevelopmentofsecuritiesbusinessinthefuturewashiddeninthesehistorydata.Howtoutilizethesedata,providethefactualreflectionofthesecuritiescompany;analyzeandforecastthetrendoffuturestockmarket,andprovideinvestorsforexcellentcustomerservice,theseprocessesaretheveryimportantmethodtoimprovethecompetitivenessofsecuritiescompanyinthemarket.However,thequantityofstock’sdataissolargethatthestorageofdataisscattered,andthereareredundancy,alotoferrors,etc.indata.Theseproblemsarehamperinganalysesofdataanddiscoveringunknowninformation.Datawarehouseisorientedmanagementofdata,datawarehousetechnologyenablestheeffectivemanagementofstockdata,thenprovidesqualitydatafortheenterprisetomakethedecisionquickly.
Foraboveallreasons,thispaperdiscusseshowtomanagestockdatabyusingdatawarehouse.Firstly,researchthearchitectureofdatawarehousesystemdeeply,thentrytodesignanddevelopthesystemofstock’sdatawarehousebasedontheactualrequirementwithsoftwareengineeringmethod.Establishthedatamarketofstocktrade,technicalindicatorsandfundamentalinformationaboutstock.Thesedatamarketsprovidebetterandbasicdataforanalyszingthetrendofstockmarket,analyzingtechnicalindicatorsofstockdataandanalysisoffundamentalinformation.
Meanwhile,forimprovingtheefficiencyofOLAPqueriesbasedonstockdatawarehouse,inthepapertobuilddimensionlayercodebasedonencodingbitmapindexofdimensiontable.Replacetheforeignkeyofdimensiontablewithdimensionlayercodewhichisshorterthantheforeignkey.WhensearchsomedatainDW,wecangetthescopeofdimensionlayerattributesthroughsearchingdimensionlayercodeinsteadofdatatables’keywords.Soweconvertalargenumberofmulti-tableconnectionsinOLAPqueryintoscopequeryinfacttable.Soastoreduceandsimplifythemulti-tableconnectionsbetweencasetableanddimensiontablesignificantly.Thereby,increasetheefficiencyoftheOLAPqueries.
Keywords:
stock,datawarehouse,encodingbitmapindex,dimensionlayercod
引言
1.1研究背景及意义
近年来,伴随我国宏观经济的逐渐复苏和市场经济改革的不断深入,国内证券市场已经得到了了长足的发展。
截至2009年11月底,境内上市公司总数达到1,693家,沪、深两市股票市场总市值已达23.95万亿元,已进入二级市场流通的市值14.35万亿元,投资者开设的股票有效账户数达到11,882.78万户。
2009年1-11月境内证券市场筹资累计3,809.15亿元,沪、深股市股票基金成交总额达483,871.72亿元。
社会经济的进一步大规模发展,使股市行情的变动以及其它一些金融市场的变化,如黄金市场,汇率市场等等都越来越强烈地影响着经济的发展。
对其变化规律的研究有很低重要的现实意义。
股市出现以来,人们一直不断地观察分析股市的变化情况,已经总结出了很多理论和方法。
实践证明股市价格的变化莫测是具有一定的可预测性的。
但是,由于影响股市价格变化的因素太多,股票市场不仅受经济的影响,还受政治等因素的作用,其中还有很多难以量化、模糊的因素,其内部规律非常复杂,变化周期无序,同时我国股市具有特殊性,这些给对股市的分析与预测带来了挑战。
数据挖掘[1]是一个利用各种分析工具在海量数据中发现模型和数据间关系的过程,这些模型和关系可以用来预测和决策。
由于数据挖掘带来的显著的经济效益,使数据挖掘越来越普及。
数据挖掘可以应用在各个不同的领域。
对于证券领域而言,数据挖掘技术主要应用于对证券公司的客户关系的管理和对证券交易行情数据的预测。
而对于证券投资者来说,这些对证券交易行情的预测数据将影响到未来的投资策略,所以,投资者们需要一个人性化、图像化、直观明了的数据查询工具,能够方便地帮助他们获得所需要的各种股票指标和数据。
1.2国内外研究现状
数据仓库查询技术的研究主要集中在提高查询性能上,比如对物化视图、索引、数据立方体、并行处理、数据压缩等技术的研究。
其中,物化视图是利用冗余的数据来提高查询性能,即将经常使用的查询先进行计算后就保存结果,当真正处理查询时,直接查询该实视图,而不需要对多个基表进行连接或聚集操作;使用索引技术查找时,无需对整个表进行扫描就可以在其中找到符合查询条件的记录,由于数据仓库中的数据很少更新,使用合适的索引已成为一个提高查询性能的重要方法;数据立方体是实现多维数据查询与分析的一种重要手段,对于它的研究主要集中在数据立方体的计算上;使用并行化策略来处理数据仓库的大量数据,是减少查询响应时间较为常用的手段;数据压缩技术是为了减少查询扫描的数据,以此提高查询速度。
目前,在国外,各个研究机构已经开展了大量的研究工作,并取得了一定的成果,例如斯坦福大学的WHIPS项目、IBMAlmaden研究中心和微软的Quest项目、Bell实验室的AQUA项目以及威斯康辛大学和AT&T的研究等。
其中,WHIPS的研究目标是要生成一个高效的、自动集成异构数据源的算法和工具;Quest的研究重点是多维数据库的建模与组织;AQUA对于抽样在连接操作和聚集操作中存在的问题进行了深入了研究;威斯康辛大学和AT&T则侧重于实视图、OLAP数据组织、数据立方体计算等的研究。
在系统开发方面,各大数据库厂商也对数据仓库的研制给予了相当的关注,如IBM、Oracle和Sybase都分别推出了各自的数据仓库整体解决方案。
在国内,这方面的研究正在起步,一些学校和研究所也对数据仓库技术进行了研究,比如中国人民大学、南京大学、哈尔滨工业大学等,他们的研究则主要集中在数据仓库的体系结构、数据仓库的建模、数据仓库中数据的组织与存储、数据立方体的计算等方面。
1.3本文的研究内容及创新点
指标分析的设计和实现要建立在股票分析系统的分析结果上,忠于原数据,忠于指标的运算公式,才能得到正确的,有利用价值的指标分析结果。
从实际的需求出发,本文对以下两个方面做了重点研究实践。
第一.图形化控件的研究。
按照软件工程的步骤,对股票分析系统指标分析的设计和实现进行需求分析,在需求的基础上进行指标设计与开发,并最终通过实际应用案例来验证指标系统的设计的合理性。
本文设计与开发的指标系统旨在将股票分析系统的分析结果以图形化的方式展示出来,为进一步开发更为完善的指标系统提供参考。
第二.三层设计模式的研究。
本设计利用软件开发的三层设计模式,将指标系统的实现分为数据层、业务层和表示层。
数据层主要和数据库交互,从数据库中查询所需要的数据并进行处理;业务层处理系统的业务逻辑;表示层通过业务层得到的最终数据将指标图以图形化的方式显示出来。
第三.数据库使用的研究。
本设计需要用到大量的数据,所以必须以数据库存储。
SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统。
该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点。
所以,正确而熟练地使用数据库对于本设计具有重要的意义。
1.4本文的组织结构
本文共分为七个部分,组织结构如下:
第1章引言
第2章基于数据挖掘技术的股票分析系统
第3章数据库设计
第4章指标分析模块的设计及实现
第5章编码
第6章设计结果
第7章总结与展望
基于数据挖掘技术的股票分析系统
1.5相关理论概述
1.5.1数据挖掘(datamining)技术
近年来,信息技术不断发展,先进的科技手段为各个领域中大量数据的产生和存储提供了可能。
大量的数据被描述为“数据丰富,但信息贫乏”。
有调查表明,在科学研究中产生的数据有90%从未被使用过,造成这一局面的一个根本原因是缺乏利用数据的手段。
虽然采用数据库技术将数据组织起来大大提高了检索速度并能提供简单的分析功能,但是它无法发现数据中隐藏的具有相当价值的规律。
因此,人们迫切需要能够对大量的数据进行存储、管理、对比、检索,并能从中寻找出相关性,挖掘出数据中所隐藏的规律的新技术。
在这种迫切需求下,数据挖掘技术出现了并得到了迅速的发展,它是信息技术自然演化的结果。
数据挖掘[1]是从大量的数据中挖掘出隐含的、未知的、用户可能感兴趣的和对决策有潜在价值的知识和规则。
这些规则蕴含了数据库中一组对象之间的特定关系,揭示出一些有用的信息,可以为经营决策、市场策划和金融预测等方面提供依据。
数据挖掘是多个学科相关技术融合的产物,包括数据库技术、统计学、机器学习、模式识别、神经网络等。
作为一门具有广泛应用的新兴学科,数据挖掘得到了广泛的应用。
由于数据挖掘有较强的容错性,输入数据在某些部分上的错误对数据挖掘最终结果的正确性影响不大。
如果我们所使用的数据越多越全面,则其中所蕴含的事物本身的规律性就越强,利用数据挖掘从中所抽取的知识就越具有普遍性,因而就更准确。
以非线性大规模并行分布处理为特点的数据挖掘理论突破了传统的线性处理模式,以其高度的并行性,良好的容错性和自适应能力成为人们探索和研究某些复杂大系统的有力工具。
因为支持这种技术的三种基础技术(海量数据搜集,强大的多处理器计算机,数据挖掘已经发展成熟,现在数据挖掘技术已经具备切实的可行性。
目前,数据挖掘技术广泛应用于如金融、电信、保险、交通、零售等领域。
1.5.2数据挖掘技术在股票分析系统上的应用
随着经济全球化和信息处理技术的飞速发展,财经数据急剧增加,涌现出了大量使用数据挖掘技术解决金融难题的研究和应用。
如贸易模型发展,投资选择,投资优化,借贷评估,欺诈检测,破产预测,不动产估价等等。
通过数据挖掘,可以在增加税收、降低成本以及更大程度的改善市场的灵敏度方面体现出竞争优势。
数据挖掘在证券市场上的应用主要是对证券公司的客户关系管理和对证券交易行情数据的预测分析。
其中针对股票的预测分析最具有挑战性,这也是本文研究的重点。
进行数据挖掘一般需要建立数据仓库,所以我们实现了一个针对股票数据的数据仓库。
由于股票交易行情数据本质上是一个非线性时间序列,所以对股票的预测其实就是针对时间序列模式进行挖掘。
时间序列中的某个字段的值是随着时间而不断变化的,设一个变量为Y,表示某一支股票每天的收盘价,则Y可以看作是时间t的函数。
近年来,人工智能研究取得了突破性的进展,涌现了一大批人工智能的研究成果,如支持向量机,神经网络,聚类,模糊理论,粗糙集和遗传算法等广泛应用于各个学科领域(包括股票交易行情预测)。
数据挖掘作为人工智能的重要技术,已经逐渐在证券分析领域应用开来,目前应用最广的主要有以下几种:
1、关联规则分析
时间序列关联规则的抽取:
通过固定长度的窗口将时间序列离散化成一系列子序列,研究子序列之间的相似性,然后将相似的子序列进行聚类形成模式,应用关联规则的研究方法从各种模式中抽取关联规则,可以得到一个时间序列内部不同模式之间的关联规则或不同时间序列之间模式的关联规则。
其规则形如“如果第一天Microsoft上涨而且Intel下降,则IBM第二天上涨”。
2、聚类分析
聚类分析能够综合多项财务指标来反映上市公司的盈利能力和水平,所得聚类结果与公司的实际财务状况和经营状况相吻合。
并据此归结出整个板块股票的分类及其特点,为投资者和市场各参与主体有效把握中小企业上市公司及其成长趋势提供参考。
我们还可以对所选出的各个板块的龙头潜力股再进行聚类分析,找出最具实力的板块龙头股。
3、神经网络
神经网络由于其强大的非线性逼近和泛化能力,得到了最为广泛的应用。
Lapedes等最早发表了将神经网络用于预测的文章。
90年代以来,国外利用神经网络对股票交易价格进行预测的报道层出不穷[24-25]。
近年来,国内一些学者也开始利用神经网络方法对我国股市的股票交易价格进行预测[26-28]。
基于神经网络的股票预测方法,主要利用神经网络进行股票交易数据的学习训练,然后使用训练出的模型进行股市预测。
另外还可以采用遗传算法对神经网络的学习权值调节,使神经网络模型更加逼近系统模型。
4、模糊专家模型
模糊模型本质上就是一种非线性模型,宜于表达复杂系统的动态特性,具有逼近任何非线性映射的能力。
采用模糊模型技术进行预测,主要是依据专家经验、或统计方法建立模糊模型进行预测。
5、数据挖掘的进化遗传模拟
相关研究表明,证券市场中的群体的心理和行为的影响左右着个体的心理和行为,进化理论不仅是生物学的统一理论,而且可以作为所有智能过程的统一描述;特别是对社会群体心理和行为的研究。
近年来,国内外的进化计算与混合认知智能预测取得了良好的效果,数据挖掘技术的研究将极大地提高其有效性和精度。
1.5.3指标分析在证券分析系统中的应用
K线图又称蜡烛线、阴阳线或棒线,原来是日本米市商人用来记录米市当中的行情波动,后因其标画方法具有独到之处,因而在股市及期市中被广泛引用。
K线将买卖双方力量的增减与转变过程及实战结果用图形表示出来。
经过近百年来的使用与改进,K线理论被投资人广泛接受。
画法:
K线之开盘价与收盘价之间以实体表示。
若收盘价高于开盘价,以中空实体表示,称红线或阳线;若收盘价低于开盘价,则以黑色实体表示,称黑线或阴线。
若当天最高价高于实体之高价,则在实体上方另加细线,称为上影线;当天最低价低于实体之低价,也在实体下方另加细线,称为下影线。
K线时其他技术指标的基础,所以K线的设计和实现是指标系统的基础。
1.5.4C#语言简介
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。
C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
并且C#成为ECMA与ISO标准规范。
C#看似基于C++写成,但又融入其它语言如Pascal、Java、VB等。
1.5.5开发环境和运行环境
开发环境:
MicrosoftVisualStudio2008、MicrosoftSQLServer2000
运行环境:
MicrosoftXP/VISTA/2007(.netframework3.5)
1.6需求分析
基于数据挖掘技术的股票分析系统,可以在增加税收、降低成本以及更大程度的改善市场的灵敏度方面体现出竞争优势。
数据挖掘在证券市场上的应用主要是对证券公司的客户关系管理[17]和对证券交易行情数据的预测分析[18]。
良好的指标分析的设计与实现对于股票分析系统的分析结果来说是非常重要的,只有真实无误地把分析结果以图形化的方式展示在用户眼前,才能让用户的到一个感性的任何,更有利于其做出准确的判断。
所以,指标分析的设计和实现有如下需求:
1、以基于数据挖掘技术的股票分析系统为基础,需正确地展示其分析结果。
2、指标的设计和实现必须忠于原数据,忠于原公式,保证数据得到最精确的体现。
3、功能丰富完整,操作方便简单,界面简洁、大方、人性化,能够让用户容易地查询各种数据。
1.7系统设计
1.7.1系统的总体设计
图4.1股票数据仓库系统结构
从图4.1可以看出,股票数据仓库系统可以分为数据抽取转换装载模块、数据存储以及管理模块(股票数据仓库)、数据挖掘分析模块、多维分析模块和用户交互模块。
数据抽取转换装载模块负责对数据源的数据进行清洗、转换,最后将数据加载到数据仓库中;数据存储以及管理模块负责确定数据的物理存储结构,管理数据仓库元数据;数据挖掘分析模块主要利用各种数据挖掘算法,对股票数据仓库中的数据进行计算分析,发现大量数据中隐藏的有价值的信息;多维分析模块主要根据实际情况建立面向不同主题的多个多维数据集,使决策人员能够面向多个主题、多个角度分析数据;用户交互模块负责将多维分析结果及数据挖掘结果以易于理解和直观的界面向用户进行前端展示,前端工具主要包括各种数据分析工具、报表工具、查询工具等。
(2)系统功能
在股票数据仓库建设完成后,我们设计了一系列基于数据仓库的系统功能,具体功能描述如图4.2所示。
系统各种功能依赖于OLAP分析或数据挖掘或两者的结合。
基于股票数据仓库的系统功能数量会随着需求的变化而不断增加,我们在初始阶段不能实现所有功能。
现阶段系统只实现少数几个功能,包括行情趋势分析和指标技术分析。
图4.2系统功能
1.7.2指标分析子系统的设计
一、.NET的三层架构
三层架构包含表示层、业务层和数据层三层。
对于应用系统来讲,表示层和用户交互并显示数据,业务层负责访问数据层并向表示层提交数据,数据层负责数据的存储。
采用分层设计的软件会达到诸如可维护性、可重用性、可伸缩性、可靠性和安全性等运行要求。
以下是三层架构的详细含义和组成:
⊙表示层
它主要是只与用户交互的界面,它接受用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 数据 挖掘 技术 股票 分析 系统 指标 实现 总体 设计方案