登录
首页精彩阅读证券数据挖掘探索及实践
证券数据挖掘探索及实践
2016-11-23
收藏

证券数据挖掘探索及实践

在券商企业多年来的运营中,积累了大量投资者真实的第一手买卖金融产品数据,近年互联网金融的发展,加速了各类运营数据的产生,也让数据真正成为了价值的核心,数据成为了数据资产。数据资产的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行分析和挖掘,找出其中蕴含的价值,助推证券行业的业务创新、服务创新、产品创新。本文在简要介绍数据挖掘技术的基础上,探讨了证券数据挖掘的方法论和挖掘方向,并结合华泰证券的数据挖掘实践证明,数据分析和挖掘确能给企业的业务发展提供有益的帮助。

1.引言

证券市场是国家经济的晴雨表,国家经济的细微波动都会在证券市场及时地反映出来。因而证券业的经营对数据的实时性、准确性和安全性的要求都很高。在国内证券行业领域政策日趋开放的大环境下,证券业的竞争也越来越激烈。这就要求证券公司在做分析决策时不仅需要大量数据资料,更需要通过数据,发掘其运行规律和未来走势。

数据挖掘技术在证券领域中的应用,就是将证券交易及证券活动中所产生的海量数据及时提取出来,通过清洗和变换,采用分类、聚类、关联分析等方法发现新知识,及时为证券从业人员提供参考咨询服务、分析客户交易行为、掌握企业经营状况、控制证券交易风险。从而帮助从业人员在证券交易中增强决策的智能性和前瞻性。

2.数据挖掘简介

2.1.数据挖掘概念

数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。这个定义包括几层含义:数据源必须是真实的、大量的、含噪声的;发现的是用户感兴趣的知识;发现的知识要可接受、可理解、可运用;并不要求发现放之四海皆准的知识,仅支持特定的发现问题。这里的知识一般指规则、概念、规律及模式等。

2.2.数据挖掘建模过程

通常,数据挖掘的建模过程如图1所示:

图1 数据挖掘建模过程

定义挖掘目标

针对具体的数据挖掘应用需求,首先要非常清楚,本次挖掘的目标是什么?系统完成后能达到什么样的效果?因此我们必须分析应用领域,包括应用中的各种知识和应用目标。了解相关领域的有关情况,熟悉背景知识,弄清用户需求。要想充分发挥数据挖掘的价值,必须要对目标有一个清晰明确的定义,即决定到底想干什么。否则,很难得到正确的结果。

数据取样

数据采集前首要考虑的问题包括:

哪些数据源可用,哪些数据与当前挖掘目标相关

如何保证取样数据的质量

是否在足够范围内有代表性

数据样本取多少合适

如何分类(训练集、验证集、测试集)

在明确了需要进行数据挖掘的目标后,接下来就需要从业务系统中抽取一个与挖掘目标相关的样本数据子集。抽取数据的标准,一是相关性,二是可靠性,三是最新性。

进行数据取样一定要严把质量关,在任何时候都不要忽视数据的质量,即使是从一个数据仓库中进行 数据取样,也不要忘记检查其质量如何。因为数据挖掘是探索企业运作的内在规律,原始数据有误,就很难从中探索规律性。

数据探索

当拿到一个样本数据集后,它是否达到我们原来设想的要求,其中有没有什么明显的规律和趋势,有没有出现从未设想过的数据状态,因素之间有什么相关性,它们可区分成怎样一些类别,这都是要首先探索的内容。数据探索和预处理的目的是为了保证样本数据的质量,从而为保证预测质量打下基础。数据探索包括:异常值分析、缺失值分析、相关分析、周期性分析、样本交叉验证等。

预处理

采样数据维度过大,如何进行降维处理,采用数据中的缺失值如何处理,这些都是数据预处理需要解决的问题。数据预处理主要包含如下内容:数据筛选,数据变量转换,缺失值处理,坏数据处理,数据标准化,主成分分析,属性选择等。

模式发现

样本抽取完成并经预处理后,接下来要考虑的问题是:本次建模属于数据挖掘应用中的哪类问题(分类、聚类关联规则或者时序分析),选用哪种算法进行模型构建?

模型构建的前提是在样本数据集中发现模式,比如关联规则、分类预测、聚类分析、时序模式等。在目标进一步明确化的基础上,我们就可以按照问题的具体要求来重新审视已经采集的数据,看它是否适合挖掘的需要。

针对挖掘目标的需要可能需要对数据进行增删,也可能按照对整个数据挖掘过程的新认识,要组合或者新生成一些新的变量,以体现对状态的有效的描述。在挖掘目标进一步明确,数据结构和内容进一步调整的基础上,下一步数据挖掘应采用的技术手段就更加清晰、明确了。

模型构建

模型构建是反映的是采样数据内部结构的一般特征,并与该采样数据的具体结构基本吻合。对于预测模型(包括分类与回归模型、时序预测模型)来说,模型的具体化就是预测公式,公式可以产生与观察值有类似结构的输出,这就是预测值。预测模型是多种多样的,可以适用于不同结构的样本数据。正确选择预测模型是数据挖掘很关键的一步,有时由于模型选择不当,造成预测误差过大,就需要改换模型。必要时,可同时采用几种预测模型进行运算以便对比、选择。对建立模型来说,要记住最重要的就是它是一个反复的过程,需要仔细考察不同的模型以判断哪个模型对解决问题最有效。

预测模型的构建通常包括模型建立、模型训练、模型验证和模型预测 4个步骤,但根据不同的数据挖掘分类应用会有细微的变化。

模型评价

评价的目的之一就是从这些模型中自动找出一个最好的模型来,另外就是要针对业务对模型进行解释和应用。预测模型评价和聚类模型的评价方法是不同的。

预测模型对训练集进行预测而得出的准确率并不能很好地反映分类模型未来的性能,为了能预测分类模型在新数据上的性能表现,需要一组没有参与分类模型建立的数据集,并在该数据集上评价分类器的准确率,这组独立的数据集就是测试集。这是一种基于验证的评估方法,常用的方法有保持法、随机二次抽样、自助法、交叉验证等。

聚类分群效果可以用向量数据之间的相似度来衡量,向量数据之间的相似度定义为两个向量之间的距离(实时向量数据与聚类中心向量数据),距离越近则相似度越大,即该实时向量数据归为某个聚类

2.3.常用建模技术简介

分类

分类指将数据映射到预先定义好的类标签上。因为在分析测试数据之前,类别就已经确定了,所以分类通常被称为有监督的学习。分类就是构造一个分类函数(分类模型),把具有某些特征的数据项映射到某个给定的类别上。

步骤分为两步:1)模型创建:通过对训练数据集的学习来建立分类模型。2)模型使用:使用分类模型对测试数据和新的数据进行分类。其中训练数据集是带有类标号的,也就是说在分类之前,要划分的类别已经确定。常用分类算法有:决策树(如 CART、ID3、ASSISTANT、C4.5),KNN 算法(K- 近邻),NB算法(朴素贝叶斯),SVM支持向量机),神经网络等。

回归

回归:用属性的历史数据预测未来趋势。回归首先假设一些已知类型的函数(例如线性函数、Logistic函数等)可以拟合目标数据,然后利用某种误差分析确定一个与目标数据拟合程度最好的函数。

回归模式的函数定义与分类模式相似,主要差别在于分类模式采用离散预测值(例如类标号),而回归模式采用连续的预测值。在这种观点下,分类和回归都是预测问题,但数据挖掘业界普遍认为:用预测法预测分类标号为分类,预测连续值为预测。许多问题可以用线性回归解决,许多非线性问题可以通过对变量进行变化,从而转换为线性问题来解决。常用算法有:逻辑回归,多元线性回归模型等。

聚类

聚类分析:是在没有给定分类的情况下,根据信息相似度进行信息聚类的一种方法,因此聚类又称为无指导的学习。

与分类不同,分类需要先定义类别和训练样本,是有指导的学习。聚类就是将数据划分或分割成相交或者不相交的群组的过程,通过确定数据之间在预先指定的属性上的相似性,就可以完成聚类任务。

聚类的输入是一组未被标记的数据,根据数据自身的距离或相似度进行划分。划分的原则是保持最大的组内相似性和最小的组间相似性,也就是使不同簇中的数据尽可能地不同,而同一类聚类中的数据尽可能相似。比如根据股票价格的波动情况,可以将股票分成不同的类,总共可以分成几类,各类包含哪些股票,每一类的特征是什么,这对投资者,尤其是基金的人来说,可能是很重要的信息。当然,聚类除了将样本分类外,还可以完成孤立点挖掘,如将其应用于网络入侵检测或金融风险欺诈探测中。常用算法有:k-means,CURE,BIRCH,DBSCAN,OPTICS,DENCLUE等。

关联规则

关联规则:揭示数据之间的相互关系,而这种关系没有在数据中直接表示出来。关联分析的主要任务就是发现事物间的关联规则或称相关程度。

关联规则的一般形式是:

如果A发生,则  B有百分之 C的可能性发生。C称为关联规则的置信度。利用关联分析能寻找数据库中大量数据的相互关系。常用算法有:Apriori  算法,FP-Growth等。

时序模式

时序模式:描述基于时间或其他序列的经常发生的规律或趋势,并对其建模。

与回归一样,它也用已知的数据预测未来的值,但这些数据的区别是变量所处时间的不同。序列模式将关联模式和时间序列模式结合起来,重点考虑数据之间在时间维度上的关联性。时序模式包含时间序列分析和序列发现。

离群点检测

离群点:是对差异和极端特例的描述,如分类中的反常实例、聚类外的离群值、不满足规则的特例等。

离群点检测:用来发现与正常情况不同的异常和变化,并进一步分析这种变化有意的诈骗行为,还是正常的变化。大部分数据挖掘方法都将这种差异信息视为噪声而丢弃,然后一些应用中,罕见的数据可能比正常的数据更有用。

3.证券数据挖掘方法论

3.1.证券数据特点

与其他领域的数据相比较,证券数据具很多特点。(1)证券数据具有多样性,作为社会经济系统的一部分,证券系统的数据不仅受到客户数据、交易数据、经济数据等的影响,而且受到网络信息、心理行为信息的强烈影响,甚至一些主观数据的变化也会导致证券市场的剧烈波动。(2)证券数据的关系复杂,证券市场是一个复杂系统,数据之间的关系有时很难用一个简单的数学公式或者线性函数来表示,呈现出高度的复杂性和非线性性。(3)证券数据具有动态性,证券市场随着时间的推移会发生剧烈变化,但仍受前期市场的影响,呈现出动态特征

为了更好地研究证券市场,需要利用这些物理数据、网络信息及心理行为信息,这些信息是不断变化的,便形成一个巨大的数据仓库。证券数据的高度复杂性,使得一般的数据建模方法在进行金融数据建模时失效,而数据挖掘方法具有灵活性、自适应性及非线性等特征,在处理证券数据时可以达到较好的应用效果。

证券行业的数据仓库是由证券交易过程中的基础数据(主要是数据库数据)组成的。证券业基础数据主要包括四部分:

业务数据

包括结算数据、过户数据、交易系统数据。结算数据是由深圳和上海证券登记公司以交易席位为单位发布的证券公司当日资金、股份交收明细以及分红、送股、配股等数据。过户数据是由深圳和上海证券交易所以交易席位为单位发布的证券公司当日投资者买卖证券的过户明细数据。结算数据和过户数据由证券交易所通过地面和卫星网络系统发送到证券公司。交易系统数据是证券公司最重要和最实时的数据。它由交易系统在实时交易中产生,是进行数据挖掘客户分析、构建CRM系统的主要基础数据。

行情数据

行情数据是由深圳、上海证券交易所在开市期间发布的证券实时交易的成交撮合数据,是进行股市行情分析的关键数据。

证券文本数据

狭义的证券文本数据是指由证券交易所通过证券卫星发送的证券领域有关政策和各股资讯等实时信息。广义的证券文本数据是指由各种传媒方式发布的与证券相关的信息,主要包括卫星、电视、广播、英特网、移动互联网、书刊杂志等传媒方式,其中,英特网和移动互联网是涵盖信息量最多的传媒方式。

用户和客户行为数据

移动互联网及互联网金融的发展,使得证券服务的外延得到了很大的扩展,不但证券公司开户的用户能使用证券公司的服务,不在证券公司开户的用户也能通过多种形式如证券软件、证券互联网、证券移动应用等获取证券公司提供的部分产品服务。用户和客户在使用这些软件产品的过程中,会产生很多的行为数据,如浏览路径、浏览兴趣、停留时间等。

3.2.证券数据挖掘方向探索

根据证券业务与数据特点,可以实施的挖掘方向有:客户分析、客户管理、证券营销、财务指标分析、交易数据分析、风险分析、投资组合分析、用户行为分析等。下面简要介绍各个方向的思路。

客户分析及营销

通过数据进行挖掘和聚类分析,可以清晰发现不同类型客户的特征,挖掘不同类型客户的特点,提供不同的服务和产品。反过来,如果我们知道了客户的特征与偏好,有针对性地设计新的产品和服务,势必能获得更好的推广效果。

通过对客户资源信息进行多角度挖掘,了解客户各项指标,掌握客户投诉、客户流失等信息,从而在客户离开券商之前,捕获信息,及时采取措施挽留客户。

通过对客户交易行为的分析与挖掘,了解用户的交易行为、方式、风险偏好,从而提升交叉营销的成功率,同时结合挖掘结果,给客户提供更加贴心的服务,提升客户忠诚度

用户行为分析

通过对证券软件、证券互联网、证券移动终端开放用户使用行为的分析和挖掘,了解到用户的兴趣点、访问规律,为用户转化为客户提供目标人群,提高用户转客户的成功率,同时,利用访问模型,改进软件和网站的布局,提升软件和网站的人性化设计。

市场预测

对股票从基本面、消息面、技术指标等数据进行聚类分析,从而将股票划分不同的群体,预测板块轮动或是未来走势。

根据采集行情和交易数据,结合行情分析,预测未来大盘走势,并发现交易情况随着大盘变化的规律,并根据这些规律做出趋势分析,对客户针对性进行咨询。

投资组合

利用数据挖掘技术不仅可以更好地刻画预期的不确定性,改进已有的投资组合模型,使之更加符合现实需求,同时可以为投资组合模型的求解提供更为精确的手段,从而为投资者提供更为精准的知识。

风险防范

通过对资金数据的分析,可以控制营业风险,同时可以改变公司总部原来的资金控制模式,并通过横向比较及时了解资金情况,起到风险预警的作用。

经营状况分析

通过数据挖掘,可以及时了解营业状况、资金情况、利润情况、客户群分布等重要的信息。并结合大盘走势,提供不同行情条件下的最大收益经营方式。同时,通过对各营业部经营情况的横向比较,以及对本营业部历史数据的纵向比较,对营业部的经营状况作出分析,提出经营建议。

3.3.华泰证券数据挖掘实施业务流程

华泰证券数据挖掘实施业务流程包括:

  1. 项目背景和业务分析需求提出
    针对需求收集相关的背景数据和指标,与业务方一起熟悉背景中的相关业务逻辑,并收集业务方对需求的相关建议、看法,这些信息对于需求的确认和思路的规划乃至后期的分析都是至关重要的。从数据分析的专业角度评价初步的业务分析需求是否合理,是否可行。

  2. 指定需求分析框架和分析计划
    针对前面对业务的初步了解和需求背景的分析,指定初步的分析框架和分析计划。分析框架的主要内容如下:分析需求转化成数据分析项目中目标变量的定义,分析思路的大致描述,分析样本的数据抽取规则,根据目标变量的定义,选择一个适当的时间窗口,然后抽取一定的样本数据,潜在分析变量(模型输入变量)的大致圈定和罗列,分析过程中的项目风险思考和主要应对策略,项目落地应用价值分析和展望。

  3. 抽取样本数据、熟悉数据、数据预处理
    根据前期讨论的分析思路和建模思路,以及初步圈定的分析字段(分析变量)编写代码,从数据仓库中提取分析、建模所需的样本数据;通过对样本数据的熟悉和摸底,找到无效数据、脏数据、错误数据等,并且对样本数据中存在的这些明显的数据质量问题进行清洗、剔除、转换,同时视具体的业务场景和项目需求,决定是否产生衍生变量,以及怎样衍生等。

  4. 按计划初步搭建挖掘模型
    对数据进行初步的摸底和清洗之后,就进入初步搭建挖掘模型阶段了。在该阶段,包括如下3个主要的工作内容:进一步筛选模型的输入变量;尝试不同的挖掘算法和分析方法,并比较不同方案的效果、效率和稳定性;整理经过模型挑选出来的与目标变量的预测最相关的一系列核心输入变量,将其作为与业务方讨论落地应用的参考和建议。

  5. 讨论模型的初步结论,提出新的思路和模型优化方案
    整理模型的初步报告、结论,以及对主要预测字段进行提炼,还要通过与业务沟通和分享,在此基础上讨论出模型的可能优化方向,并对落地应用的方案进行讨论,同时罗列出注意事项。

  6. 按优化方案重新抽取样本并建模,提炼结论并验证模型
    在优化方案确定的的基础上,重新抽取样本,一方面验证之前优化方向的猜想;另一方面尝试搭建新的模型提升效果。模型建好后,还不能马上提交给业务方进行落地应用,还必须用最新的实际数据来验证模型的稳定性。如果通过相关验证得知模型的稳定性非常好,那无论对模型的效果还是项目应用的前景,就都有比较充足的底气了。

  7. 完成分析报告和落地应用建议
    在上述模型优化和验证的基础上,提交给业务方一份详细完整的项目结论和应用建议,包括以下内容:

    • 模型的预测效果和效率,以及在最新的实际数据中验证模型的结果,即模型的稳定性。

    • 通过模型整理出来的可用作为运营参考的重要自变量及相应的特征、规律。

    • 数据分析师根据模型效果和效率提出的落地应用的分层建议,以及相应的运营建议,其包括:预测模型打分应用基础上进一步的客户特征分层、相应细分群体运营通道的选择、运营文案的主题或噱头、运营引导的方向和目的、对照组与运营组的设置、效果监控的方案等。

  8. 制定具体的落地应用方案和评估方案
    与业务方讨论,确定最终的运营方案及评估方案。

  9. 业务方实施落地应用方案并跟踪、评估效果
    按照上述的运营和监控方案对运营组和对照组进行分层的精细化运营,取一段时间如一周的运营结论,主要从两个方面来衡量:预测模型的稳定性评测;运营效果。

  10. 落地应用方案在实际效果评估后,不断修正完善
    通过对第一次运营效果的评估和反思,从正反两个方面进行总结,如果模型稳定性好,有较好的预测效果,则可以放心使用模型,优化运营方案。

  11. 不同运营方案的评估、总结和反馈
    根据实际情况,指定多种运营方案,监控不同运营方案的执行情况及效果。

4.华泰证券数据挖掘实践

华泰证券一直重视数据资产的价值发现,在数据分析与挖掘方面也做了很多的技术储备和实践。在对华泰证券某集合理财产品的销售数据分析中,我们通过数学方法结合数据挖掘软件建立了预测模型,验证了模型的有效性,并且通过模型获得了很好的预期提升效果。主要步骤如下:

  1. 数据准备
    首先,确定合适的观察期。在从数据中心提取观察期内的原始数据后,进行数据预处理,例如:剔除资产过小的客户、剔除长时间无主动交易的客户、剔除机构客户等,得到规模为五十多万条记录的初始数据集。

  2. 变量分析与数据抽样
    由于初始数据集是一个包含较多属性的宽表,为了选取主要变量、舍弃无关变量、减少变量数目,以利于实施数据挖掘算法。我们进行了以下的变量分析处理:

    • 对属性定义一个被称为信息值(Information Value)的变量,计算每个属性的信息值。该值越大,表示对结果的影响越大,该变量越重要;该值越小,则认为可舍弃该变量。

    • 为应用Logistic分析,将上述步骤中的连续性变量进行分段,再一次计算 IV值并舍弃区分度不高的变量。

    • 利用Stepwise Logistic方法结合默认的概率值确定入选变量和剔除变量。

    • 对变量进行主成分分析,进一步挑选较少个数的重要变量。

    • 在确定入选变量后,将数据集按比例分为建模数据集与验证数据集,并对建模数据集进行过抽样,以减少建模记录数并提高事件率,验证数据集则用于对将要生成的模型进行验证。

  3. 建立模型
    针对上述建模数据集,采用 Logistic回归建模,将结果输出至结果集。

  4. 模型验证与结果展示
    对验证集进行单因子非参数方差分析,即npar1way过程,得到Kolmogorov-Smirnov检验值0.619,大于 0.05,则可认为验证集服从建模集的数据分布,即由建模集生成的模型是有效的。结果展示有多种方法,此处选取画ROC曲线图,来直观体现数据挖掘的效果,如图2所示:

图2 分类模型ROC曲线

图中的绿色对角线可理解为自然状态、即不进行任何数据挖掘预测情况下的结果;而黄色曲线是预测后的结果,曲线与横轴所围成的面积,即AUC值(Area Under the  Curve曲线下面积 ),越大,则说明预测效果越好。可见,我们的模型具有非常好的预测效果。

5.结束语

随着互联网、移动互联网的发展,证券行业信息化的应用环境正在发生着深刻的变化,外部数据迅速扩展,企业应用和互联网应用的融合越来越快。互联网金融给证券行业带来的传统价值创造和价值实现方式的根本性转变,让数据分析和挖掘逐步走向证券业务发展和创新的前台。本文在简要介绍数据挖掘技术的基础上,探讨了证券数据挖掘的方法论和挖掘方向,并结合华泰证券的数据挖掘实践证明,数据分析和挖掘确能给企业的业务发展提供有益的帮助。相信随着金融互联网的多样化,证券行业内外数据的不断完备,数据分析和挖掘将在证券行业的运用越来越广泛,并成为证券公司数据化运营的一部分。

数据分析咨询请扫描二维码

客服在线
立即咨询