1. 首页 > 学习选股

知股雪球系列之三:情感因素选股恰逢其时。

知股雪球系列之三:情感因素选股恰逢其时。

构建积极情绪比、消极情绪比和综合情绪比因子(消极情绪比是周期内消极帖子数/总帖子数)。检验结果表明,负情绪比例因子具有良好的选股能力。总的来说,负面情绪比例越低,未来收益越好,尤其是500股票池。

结合负面情绪比例因子和反转因子,在中证500股票池中构建双因子增强策略。双因子策略的年化超额收益率、夏普比率和最大回撤分别达到11.6%、1.87%和6.5%,显著优于反转因子的相应表现。这意味着本期跌幅较多但市场负面情绪较少的股票,超额收益会较高。

此外,从情感的角度,也做了一些其他选择股票因素的尝试。比如基于综合情绪比例因子的波动率因子,在整个市场中具有良好的选股能力。月因子值越大,未来收入越高。

一个

背景回顾

1.1将不可思议进行到底。

列出各种奇怪的单位,我们会发现一个很有意思的对象:不可思议的单位。这个单位是对人类无法想象的事情发生所需要的时间间隔的描述。假设以下场景:

场景一:我穿越时空,来到春秋时期,与老子对话:“老伯,要不要我把你的《道德经》抄在纸上,让它代代相传?”。老人沉默了...他觉得不可思议。纸是什么?想法根本实现不了,所以永远庆祝不了。

场景二:我不死心,急忙跑到盛唐,问玄奘:“圣僧,要不要我把佛法抄在纸上,让它流传千古?”。玄奘微微一笑:“和尚不瞎说。”但在他心里,这种事几百年都不会发生。

这里的“永生”和“数百年”是不可思议的单位,不同时代的人在衡量同一件事。“不可思议”指数的缩短,见证了人类的进步和科技的力量。目前争议最大的是人工智能。人工智能深刻改变了我们的生活方式和思维习惯。而量化投资领域是最“钱”给电脑的。如何应对这种影响?

随着三份报告的研究效用曲线逐渐降低,大数据和机器学习在量化投资领域的应用越来越强。我们在《雪球知识系列一:与关注因子的约定》和《雪球知识系列二:百万投资组合中的宝贝》中详细介绍了大数据、机器学习、人工智能的关系和发展。我们先简单回顾一下前两份报告的一些关键内容,方便后续研究。

1.2 Snowball.com前情提要

雪球。com有很多功能接口,我们可以在雪球上获取用户UGC(用户自生成)的行为内容。通过爬虫程序。雪球用户的行为有三种:关注、发帖、换组合。另外,发帖行为是一种无格式文本,关注行为是一种格式文本,包括买、卖、关注,其中关注行为占95.5%。





数据窗口为2010年12月16日至2017年7月21日。在此期间,获得了4254659个用户和51320982个基本行为。



我们根据关注行为构造关注因子,关注因子统计一只股票在时间段内被关注的次数。有四个结论:

1.关注度因子有反转效应,当期关注度低的股票,未来会有溢价(月/周度);

2.雪球的关注因子与其他互联网文字关注因子(主流财经媒体网站、股吧)或类似关注因子(同花顺点击率等)的排名相关性。)约为0.7-0.8,高度均匀;

3.雪球的关注因子换手率高,市值效应小;

4.关注度因子可以在一定程度上提升价值因子,低估值、低关注度的股票未来更有想象空间。

价值变动因子是根据投资组合的仓位调整行为构建的。该因子将数百万个投资组合组合成一个投资组合,构造月度市值变化率因子,并进一步剥离反转因子。这个因素有一个反转效应:当期转出的标的越多,未来跌的越多,转出的标的越多,未来涨的越多。(详见之前的报道)。

这是我们基于雪球用户发帖行为的第三份报告。基本研究框架如下:

1.对用户的帖子进行初步筛选,删除无效帖子和文字过长的帖子;

2.选取27654个帖子进行人工标注,然后通过机器学习对历史的整个样本进行判断,确定每个帖子的情绪;

3.构建选股的情感因素;

4.建立基于有效情感因素的选股策略。

2

情绪分析综述

2.1情感分析的基本过程

情感分析利用NLP、文本挖掘、计算语言学等技术处理各种非标准化的文本语言,从而达到相应情感判断的目的。目前主流的研究方法分为无监督的文本情感判断和有监督的情感判断。

无监督情感判断主要是利用情感词的相关信息来判断文本情感。这种方法面临的问题如下:1 .情感数据库需要动态维护;2.忽略了文本的结构,导致一些关键信息的丢失。有监督学习的文本情感分析主要使用贝叶斯模型、支持向量机(SVM)、神经网络等模型进行情感分类。不同的学者对情感分析中机器学习的研究进行了不同的尝试和改进。

这里需要强调的是,无论是通过词库还是机器学习,都需要通过分词对文本进行片段化和矢量化。

2.2雪球网络情感判断

我们把每篇文本的情绪分为乐观、悲观、中立三类,用机器学习来判断文本的情绪。有很多机器学习模型可以选择。通过对比分析,我们选择SVM作为最终的机器学习模型(后面会详细讨论)。

文本处理的整个过程如下:



雪球数据抓取在此不再赘述,详情请参考之前的报道。接下来,我们将关注其他关键步骤。

1.删除无效文本:本调研对象为雪球用户发送的无格式文本。但是,有些行为可能只是Snowball.com的一种推广行为或无意义的格式化文本。由于这些文字对最后的情感分析没有影响,所以应该删除。



2.删除过长的文字:有些文字过长,一方面增加了情感判断的难度:当文字过长时,会对切词、情感分析,包括最终的词向量维度产生很大的影响;另一方面也大大降低了学习效率。我们统计了所有样本的字符长度,发现文本长度小于700的样本数占97.5%。鉴于此,我们最后只保留文字长度。



3.文本清洗:原始文本中含有大量对情感判断无效的噪音或信息,所以需要对初始文本内容进行清洗,一方面是为了提高文本质量,减少词向量空间,另一方面是为了提高运算效率。初始文本的清理尺寸大致如下:



4.文本分割:文本清洗后,需要分为样本内和样本外数据,样本内的数据需要进一步分为训练集和测试集。随机选择条件下的分段原则是保证时间维度和a股的覆盖。我们选择了27,654篇文章作为样本中的数据。进一步地,样本中的数据按照70%: 30%的比例分为训练集和测试集(训练集:测试集)。这样得到19332个训练集和8322个测试集。样本中,积极情感类文本占48.07%,消极情感类文本占29.49%,中性情感类文本占22.45%。这一比例与目前的市场现象相当吻合:国内市场普遍存在报喜不报忧的现象,散户的情绪也有类似的比例分布。



5.预习:接下来,关注预习的过程。这一部分主要讲述如何分词,以及如何将分词后的结果转化为模型(贝叶斯、SVM等)的输入。).主要步骤包括分词、否定词、词性应用、词向量空间生成等关键步骤。

5.1.切词:这一步的主要目的是将文本切词,将文本片段化,作为进一步研究的对象。而分词的基础就是词库。我们这里用的是口吃分词系统。同时,为了完善叙词表,我们以自定义的方式导入搜狗金融叙词表,形成原始叙词表。

5.2.否定词:否定词的使用会导致语义反转。如“不/和平”、“不/幸福”、“不/所以”、“从不/幸福”。根据切词的结果,正面的词会被切掉,但其实上面的表达本身就传达了一种负面的意思。否定句需要特殊处理,比如“我不喜欢这部电影”。有学者提出“否定词一旦出现,否定词之后、符号之前的所有切词结果都会加上否定词,从而形成新的词汇”。按照这个规律,“没喜欢过这部电影,但我”这句话可以转换成“没_喜欢过不_这部不_电影,但我”。

5.3.停用词:“停用词”是指有大量的评论文本,但对分析文本的情感倾向没有帮助的词,如代词“这”、“那”、“他”,副词“也”、“刚”,其他词如“儿”、“他”、“或”。根据停用词集合构建的停用词表,删除停用词可以降低数据噪声,提高文本情感分类的准确率。

一些停用词的例子如下:【and,yes,just,all,and,and,or,one,we,you,them,them】。这里需要注意的是,刚才“文本清理”步骤中生成的一些词,比如“STOCK_URL_”和“USER_URL_”,需要添加到停用词中。

5.4.词性标注:一般来说,表示感情的词往往是形容词,还有动词、名词等。也有类似的功能。而数词、量词、介词等词可能作用不大;另外,如果没有词性限制,最终的词向量空间可能会更大,也会影响运算效率。所以我们只会考虑形容词、动词、名词等功能性实词作为特征。

5.5.词向量:这一步主要说明模型的输入,也就是词向量生成的问题。根据前面的文本分割,得到每个文本的分割结果(每个文本是一个1*N维的词向量空间,其中N是每个文本分割后的字数);然后,对每个否定词位置之后的词进行否定词处理;进一步丢弃无意义词,其中无意义词的处理流程包括停用词的处理和词性的处理。这样,我们可以得到单词向量(1*N '维,其中N '

以下面两篇文字为例,简单梳理一下上述过程。



对上述分词结果执行“准备”阶段处理。1.截词。截字后的结果见上表;2.将例1中的否定词“Mei”加到后面的词“Leave”(否定词之后、符号之前的所有分词结果)中,形成新的词汇“not Leave”;3.去掉例2中“他”的停用词;4.然后取所有例子的完整单词【最,员工,不,不请假,姑娘,很,爱,吃,姜,甜品】。根据单词向量全集,对每个例句中的单词cut是否出现在全集中做出0/1判断(0表示没有出现,1表示出现)。处理后,结果如下:



然后根据每个文本词的量化结果,结合情感帖得到模型的输入,进行训练。

6.SVM模型:前面在情感判断的研究中提到,可以使用SVM、贝叶斯、神经网络等方法来判断文本情感,从效率和效果上来说,SVM模型是性价比最高的一个。这里,我们以SVM和贝叶斯模型的比较分析为例来说明。

选择N个情感文本作为测试对象(训练集:测试集=70%:30%),分别测试N = 6,000、8000、10000时对应的模型性能。从测试结果可以看出:1 .在相同的语境下,SVM优于贝叶斯;2.SVM模型对N的敏感性优于贝叶斯模型。随着N的增加,SVM效应提高的越快;3.在时间效率方面,SVM也显著且稳定地优于贝叶斯性能。因此,SVM将在下面的分析中被用作情绪判断的训练模型。



7.训练效果:通过以上整体操作,得到模型的输入,用SVM模型进行训练,得到模型的训练结果。我们从精度和召回率两个维度考察了效果(根据之前的测试集与训练集的比值,我们从27654个样本中得到了总共8322个测试文本)。在测试集上,模型的准确率为70.16%。从召回率来看,正面、负面和中性文本的召回率分别为76.9%、68.2%和58.3%。



此外,需要注意的是,就像之前SVM和贝叶斯模型对测试样本数量的敏感性分析一样,我们分别在N = 6,000、8000、10000、15000、20000和27654个样本时测试了SVM模型的性能。随着n的增加,模型效果在不断提升,但考虑到贴标的人工成本,我们最终打印了27654个样本。





情感因素建构

3.1因素逻辑

在前面整体研究的基础上,得到情感因素的初始数据来源,进一步构建情感因素。每个帖子里有三种可能的情绪:积极情绪、消极情绪和中性情绪。然后,我们分别定义了以下几类情感因素。



从比例的角度,我们构建了三个因素:积极情绪比例、消极情绪比例和综合情绪比例。各因素之间可能存在一定的相关性,但各因素反映的信息量不同。

在这里,我们研究三个情绪因素的横截面均值的历史趋势图。以负面情绪比例为例(正面情绪比例正好相反)。14年到15年7月,呈单调递增趋势,尤其是15年上半年,市场暴涨,但从负面情绪比例指数来看,市场表现出一定的恐慌。从2015年8月份开始,出现了单调递减的趋势,今年开始出现了一些波动。



以下所有测试都是在以下条件下进行的:

个股数据:全市场选股,不符合交易条件的个股除外;

行业分类:中信一类行业;

数据:2014年1月1日至2017年7月21日;

3.2覆盖率分析

首先,研究了不同月度情绪因素对a股的影响。从结果来看,正面情绪比例因子覆盖率较高,平均覆盖率达到93.9%,尤其是2014年以后,覆盖率已经趋于覆盖全市场;负面情绪的覆盖率相对较低,但月因子的平均覆盖率达到了83.8%。



3.3不同时间和频率的对比分析

构造上述周度和月频的因子,从IC和分位数组合的角度检验因子在整个市场的有效性。



从测试结果来看:1。从频率的角度看,周度频率的因素几乎全部无效,没有选股的预测功能;2.从月度因素具体分析,负面情绪比例因素选股能力较强。负面情绪比例越低,未来目标的表现越好。

积极情绪因素失效,消极情绪有一定预测作用的现象也更符合实际。国内股市普遍报喜不报忧,正面情绪噪音很多,很难找到有效的选股信息。一旦股票形成负面情绪,市场对股票的认可度可能进入低谷,悲观情绪较重的股票可能面临较大的下跌空间。

中和悲观情绪比例因子的市值,进一步观察中和后的因子与价值、成长、反转、分析师情绪、换手率等因子的相关性。结果表明,中和后,要素选股能力下降;此外,因子与传统选股因子的相关性较低。



虽然中性负面情绪比例因子的有效性降低,但在不同的指数股票池中可能会有另一个惊喜,所以接下来检验中证500股票池中中性负面情绪比例因子的选股效果。

3.4中证500悲观比率因子的有效性检验

验证中性悲观比例因子在中证500股票池中的表现。检验结果显示,中证500股票池选股能力突出,IC达到0.022,IC_IR达到0.4。通过观察分位数组合检验的结果,发现悲观比率与未来收益率负相关。悲观的比例越小,未来表现越好。顶级组(悲观情绪比例最低)的年化收益率为21.7%,夏普费率为0.65。

除非特别强调,悲观的比率因素都是中和行业市值的结果。







3.5其他维度的情感因素研究

我们根据积极情绪、消极情绪及其横截面的差异构建了三个选股因子。其实我们也进行了多维度的研究。这里分享一些比较有意义的成果,希望能起到抛砖引玉的作用。

进一步利用综合情绪比因子构建了该因子的月度波动因子,并对该因子的有效性进行了检验。

因子计算步骤:

1.计算出(正面帖子数-负面帖子数)/每月总帖子数,即综合情绪比指数;

2.计算该指标的月波动率,得到综合情绪比波动率因子;

全市场选股测试这个因素的表现,中和这个因素的市值,研究中和后的表现。

检验结果表明,该因子具有较强的选股能力,在行业市值被中和后,其表现依然稳定,IC_IR为0.69,IC _ 0.035。中和后的分位数检验表明,该因素与收益率的关系是严格单调的,波动率越高,未来表现越好。







4 .构建基于负面情绪比例因子的选股策略

中性负面情绪比例因子在中证500股票池中表现出良好的选股能力。那么,这个因素是否增强了传统的选股因素呢?从反转因子来看,目前跌幅较大的股票,未来上涨空间更大。那么,能否在下跌中找到负面情绪相对较低的股票,即当期下跌非常严重但市场情绪没有那么悲观的股票,在未来实现较高的超额收益?

基于月度反转因子和月度中性负面情绪比例因子,构建了双因子增强策略。

选股的基本条件:

个股数据:中证500股票池内部选股,不含不合格股票;

行业分类:中信一类行业;

数据:2014年1月1日至2017年7月21日;

4.1逆转因子和负面情绪比例因子增强策略

用反转因子和中性负面情绪比例因子在中证500股票池中选股。本研究的目的是比较双因子增强策略与单反转因子增强策略的性能。双因子增强策略的选股流程如下:每月最后一个交易日结束后,对投资组合进行筛选调整。根据中信行业的负面情绪比例因子,选取每个行业中因子值最低的50%的股票作为初始股票池,然后按照反转因子排序,选取反转因子最大的20%进行仓位分配,权重按照中证500进行分配。单一反转因子的选股策略比较简单:月度调仓,月末反转因子最大的10%仓位配置,行业中和,中证500权重配置。

从套期保值策略的结果来看,双因子增强策略的绩效优于单因子反转策略。在年化收益率、锐率、最大回撤等关键指标上有了很大的提升。就年份而言,双因素策略也优于单因素对冲策略。。





如前所述,当期大跌的股票,未来不一定都能取得优异的表现。我们需要找到市场情绪没有那么悲观的股票,坚定持有,获取更稳定的收益。

5结束语

不知不觉中,基于Snowball.com的三篇报道都落地了。回顾整个研究过程,从去年年底开始,我们就布局了整个雪球网的研究计划,从网页文本抓取到相应的因子研究。虽然可能没有一步一步的细化,但是我们确实处处打磨。虽然不一定能做到每一个字,但是我们量化团队是真的关注。在此,我想和大家分享一些拙见。如果能有所贡献,我将不胜荣幸。

1.互联网文本下的大数据研究有两个难点:1)原始数据的获取。中国大数据的兴起和积累从2013年左右开始,但数据壁垒高,获取成本高;2)如何从海量信息中提取茧和剥丝。在有效降噪的条件下,关注有效信息,制定有效的选股策略。

2.充分利用已有文本数据,避免“未来函数”现象。比如雪球用户的粉丝数量,比如作品集的关注人数等。,无法追溯到这些指标在历史某一时刻的数值。

3.类注意因素(类似于注意因素的因素,如点击率等。)在大数据文本中具有高度的同质性。我们兴业的量化团队从主流财经媒体网站和东方财富股票吧抓取了一些数据,这些数据源构建的关注度因子排名相关性在0.7-0.8之间。

4.感情因素真的是“感情用事”。情感分析一直是文本挖掘中的一个难题,被广泛应用于自然语言处理、机器学习等学科。而对汉语的研究更是难上加难:在汉语的情感分析中,首先需要切词,而切词的基础是有效的词汇。但是我们没有一个权威的、成熟的、被广泛认可的词库。此外,基于情绪因素的选股(与传统选股因素相比)在国内外都不是特别显著。

我很感谢你对结果的想法和意见。接下来,我们兴业量化研究团队将致力于时效性文本研究,希望您能从中借鉴。

本文由锦鲤发布,不代表本站立场,转载联系作者并注明出处:/showinfo-3-227313-0.html