论文部分内容阅读
随着我国市场经济建设的高速发展和市场经济体制的不断完善,人们的金融意识和投资意识日益增强,越来越多的投资者将眼光投向了股票。投资者追求的是投资收益的最大化和投资风险的最小化,因此了解股市、分析股票在投资过程中占着举足轻重的地位。近几年来,证券市场不断扩容、上市公司数量急剧增加,投资者面对数千支股票,不可能对每支股票都进行分析,只有将股票进行分类研究,才可以选择合理的投资组合进行投资。聚类分析是一种行之有效的指导证券投资的方法。运用聚类分析可以揭示一组股票的“相似程度”,帮助投资者准确地了解和把握股票的总体特征和发展趋势,从而确定投资范围,选择有利时机进行合理投资。证券市场系统产生的数据主要分为两大类:股票行情数据和客户交易数据。其中,股票行情数据是在交易过程中产生的,主要包括开盘价、收盘价、交易量等。而股票价格的变动是股票分析者和投资者最为关注的,因为股票价格的变动蕴含了股票的长期走势。股票价格是一组按时间顺序排列的数据,称其为时间序列数据。这种数据在某一时间段内是连续的,其内部存在着一定的规律和某种关系。从数据挖掘范畴来说,数据海量、维度高是股票价格构成的时间序列数据的两个重要特点。同时,股票价格时间序列还具有周期性、随机性、趋势性等特性。随着计算机技术的迅猛发展,出现了基于海量数据库的时间序列数据挖掘技术,其目的就是从海量的时间序列数据中发现不同的事物之间的相互作用和联系,或者其它的一些未知信息,从而为正确认识事物和作出科学决策提供依据。聚类是数据挖掘的一种重要手段,它是把一组物理的或抽象的对象按照相似性进行归类,也称为“无指导分类”。现在,在数据挖掘领域内,聚类已经成为一种常用的数据分析工具,其目的是将整个目标数据集分成多个不同的类,使得每个类内的数据尽可能相似,而不同类中的数据则具有明显的差别。目前,有三类聚类方法适合对股票价格时间序列数据进行聚类:基于原始数据的方法、基于模型的方法和基于特征提取的方法。这些方法都是针对单支股票时间序列而提出的,用来对一个时间序列的各个子序列进行聚类。首先对时间序列进行分割,然后对分割后得到的子序列集进行聚类。本文的聚类对象是一组时间序列数据,每个时间序列作为一个数据(完整对象),在一组时间序列中就为一个数据点,因此不能对其进行分割。股票价格时间序列往往非常长,称之为长时间序列,数据点的个数可达到上万,甚至几十万。股票价格长时间序列有其自身的特征,这些特征是按照某种规律变化的,因此,如果用每个数据点的所有属性(一个属性指的是一个时间序列中的一个值)来描述时间序列常常不会直观体现出这些特征,并且对其进行聚类也是困难的。本文的研究,是基于股票价格时间序列的特点抽取出的最大Lyapunov指数、总功率谱、几个时域特征(幅值平方和、峰值、谷值、方差、峰度、偏度)、趋势项系数、周期、自相关系数、偏相关函数等12个全序列特征的,旨在用这些全序列特征对股票日收盘价构成的长时间序列进行重新描述,然后提出了一种改进的聚类算法—-CURBSC,并用该算法对重新描述后的股票日收盘价时间序列进行聚类。本论文共分6章,主要内容如下:1.相关理论基础与文献综述本章主要讨论本文研究所涉及的基本理论与方法。股票分析技术大体上可以分为两类:定性分析和定量分析,也可以称之为基本分析和技术分析。时间序列聚类分析技术可以归类于技术分析的范畴,而技术分析的基础是股票市场波动性理论。本章首先对有效市场理论和分形市场理论进行了论述,然后对时间序列聚类分析技术的概念、分类和主要技术进行了分析和比较,并提出了本文采用的长时间序列聚类方法。2.长时间序列的重新描述由于长时间序列的数据量太大而且维度很高,对于不同领域的时间序列很难定义统一的相似度量公式,因此用普通的时间序列数据挖掘工具直接对原始的长时间序列进行聚类很难达到理想的效率,而且代价高昂。如何对时间序列进行重新描述是长时间序列聚类的首要问题。本章对时间序列重新描述方法的作用和选择原则进行了概括和总结,指出提取时间序列的特征来描述原时间序列是一个比较好的方法,不仅可以保留原始时间序列的信息,而且可以对时间序列有效压缩,大大降低聚类计算过程的复杂度,提高了长时间序列数据挖掘的效率。3.股票价格长时间序列的预处理——去噪处理时间序列是由低频的趋势性成分、周期性成分和高频的细微波动组成,这些波动就是噪声。股价指数编码的不合理性、机构大户的造市行为,以及诸多外在因冲击影响而造成股市的强烈波动,使得股票价格时间序列表现为高噪声。随机噪声对股市行情预测的危害是显而易见的,所以要对股票长时间序列进行预处理,而去噪就是预处理的一部分。当前,股票价格时间序列的去噪方法层出不穷,各种方法各有其特点。其中,应用最多的是傅立叶变换的去噪方法和小波变换的去噪方法。小波变换的去噪方法因其擅长信噪分离、去噪效果好,并且适合于处理非平稳时间序列,因此小波去噪得以在证券市场得到了日益广泛的运用,渐渐成为主要的去噪方法。本文采用的就是小波去噪的方法。本章首先对小波去噪的基本原理和方法进行了分析,然后对本文所采用的非线性小波变换阈值法去噪方法进行了详细论述,并对相关重要参数进行了设定。4.股票价格长时间序列的全序列特征对全序列进行聚类,首先要对时间序列进行特征提取,抓住时间序列的总体特征构造以提取的特征为属性的时间序列,然后再对这些重构的时间序列聚类,一方面达到降维的目的,另一方面建立了样本属性变量一一对应关系,可以应用一般的聚类方法达到对时间序列聚类的目的。本章首先对长时间序列的全序列特征进行概括,然后论述基于小波分析的长时间序列全序列特征抽取方法。最后,基于这些抽取方法,采用Matlab编程对一支股票的日收盘价时间序列的全系列特征进行抽取。5.一种改进的聚类混合算法本文提出的聚类混合算法是对CURE算法的一种改进。本章先对CURE算法进行了描述,并分析了其优缺点。然后基于CURE算法存在的问题,提出了一种改进的聚类混合算法,即CURBSC(Clustering Using Repesentative Based on Subtractive Clustering)算法。并给出了该算法的流程图。为了验证CURBSC算法的可行性,本章最后采用了UCI数据库中的三个数据库的数据,分别对其进行CURE和CURBSC的聚类仿真实验,并对聚类结果进行了有效性和时间复杂度的分析。6.股票价格长时间序列聚类实证分析在前文各章研究的基础上,本章对从齐鲁证券的通达信软件上下载的四十支股票的日收盘价构成的长时间序列进行了处理和聚类。其中包括对原始时间序列进行去噪、全序列特征抽取、归一化处理和聚类等。最后对提出的改进的聚类算法进行了评价,包括该算法的优缺点以及未来的研究方向等。本论文的创新之处在于:(1)深入研究了时间序列的表征方法,针对股票价格时间序列数据库海量、维度高的特点,为了对海量数据库进行降维并且不降低数据所包含的信息,提出了采用全序列特征对其进行重新描述。这样不仅可以节省数据的存储空间,更能提高处理数据的速度,从而提高系统的效率;(2)全面深入地探讨了时间序列数据挖掘的聚类算法,并对已有的主要聚类算法进行了比较研究,提出了针对长时间序列的更有效的数据挖掘聚类策略。基于CURE算法不能正确分区和减聚类算法能够自适应确定聚类个数及类中心的特点,本文提出了采用CURE和减聚类相结合的算法对全序列特征表征的时间序列进行聚类;(3)将所采用的聚类算法应用于中国股票市场,对股票价格长时间序列进行聚类分析,通过实证研究验证了CURE和减聚类相结合的算法的有效性。本论文的研究将填补国内在时间序列数据挖掘领域中对长时间序列进行研究方面的不足,为深化研究金融时间序列数据挖掘及其实际应用提供理论依据与方法。