导语
朴素贝叶斯是贝叶斯算法中最简单且应用极其广泛的一种算法,之所以“朴素”,是因为它的假设条件:1、特征的条件独立性假设;2、特征权值相等即特征同等重要。它的思想可以粗略概括为:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。 本文采取朴素贝叶斯算法构建多因子选股量化策略模型,通过选取过去一段时间的历史数据作为训练集,判断待测数据的类别属性,基于类别预测值来决定股票的买卖。
朴素贝叶斯原理
首先在这里先引用一个概率公式(贝叶斯公式):

P(B|A)的意思是在A事件的情况下,发生B事件的概率,在概率论中被称为条件概率,而贝叶斯公式的神奇的地方就是将P(A|B),P(B|A)与先验概率联系起来。
朴素贝叶斯分类的正式定义如下:
1、设
为一个待分类项,而每个a为x的一个特征属性。
2、有类别集合
,二分类一般标为1或-1。
3、计算
, 这个可以基于训练样本数据进行求解。
4、如果
,则
。(计算出上面的结果值,拥有最大概率的值的yi就是他的分类,这个很好理解,在X条件下,那个分类类型概率高就属于哪个分类。
那么现在的关键就是如何计算第3步中的各个条件概率。我们可以这么做:
1、找到一个已知分类的待分类项集合,这个集合叫做训练样本集。
2、统计得到在各类别下各个特征属性的条件概率估计。即

3、如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导:

因为分母对于所有类别为常数而且我们只关心概率值的大小关系,因此我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有:

4、类别的确定

朴素贝叶斯多因子选股策略
策略思想:选取一些常用技术指标作为训练样本特征数据,对于类别,如果之后22个工作日上涨幅度超过5% 就标记为1,否则为-1,采用朴素贝叶斯算法进行训练,预测结果为1且未持仓则买入,预测结果为-1且已持仓则卖出。
特征因子选取:MACD指数平滑异同平均、MTM动力指标、BIAS乖离率、CCI顺势指标、KDJ随机指标、WR威廉指标、RSI相对强弱指标、ARBR人气意愿指标、OBV能量潮共9个技术指标。
数据标准化:数据标准化方法有很多,本文采用高斯预处理方法,即每个特征因子减去它对应的均值再除以它的标准差((x–x.mean)/x.std)。
回测结果:
初始资金:10000000
回测频率:每天
回测日期:2015-09-01 — 2017-03-31
资金曲线图如下 :


