基于机器学习的场外配资识别算法设计与应用

2021-12-23 12:24俞建群李双宏
微型电脑应用 2021年12期
关键词:配资账户交易

俞建群, 李双宏

(东方证券股份有限公司,上海 200010)

0 引言

场外配资是指场外证券资产融资业务,其本质是一种资金借贷关系。作为一种融资手段,场外配资存在诸多风险[1]。中国证券业协会颁布的《场外证券业务备案管理办法》中指出场外配资活动应当进行备案,最高人民法院发布《全国法院民商事审判工作会议纪要》明确场外配资合同无效,说明该业务存在违反法律与政策的风险;在场外配资过程中,股票账户由配资方监控,存在违约和操作风险;场外配资系统的自动平仓功能及较高的杠杆率,易引发市场下行时的系统性风险;由于配资账户所持股票通常波动率和周转率较大,在加强股票流动性的同时也增大了极端事件恶化的概率,加剧股票市场的异常波动。

对此,监管部门已多次发声表明,密切关注资本市场场外配资情况,严厉打击违法违规的场外配资行为。对场外配资进行监管监控,从微观的资本市场参与者角度来说,有利于促进投资者防范相应的投资风险,避免投资者受到非法配资公司非法经营或诈骗行为的损害;从宏观角度来说,有利于避免场外配资业务通过盲目扩张资本市场信用交易规模,冲击资本市场交易秩序,从而维护证券市场的稳定。

目前对于场外配资账户的识别与筛查,不同的监管部门均有一定的判别标准和认定规则,这些标准主要是来源于工作经验[2]。通过对证监会向四家证券公司和三家技术支持公司作出的监管函进行梳理,可以归纳出目前场外配资的主要监管依据有软件提供商非法经营证券业务规定、证券公司违反账户实名制规定和交易软件不符合期货公司审慎经营和风险管理要求[3]。

此外,传统的场外配资识别系统大多采用规则驱动的方法,根据设定的规则特征进行筛选,比如账户总资产规模、账户成交量、交易频次等,规则的制定较为主观,需要不断进行规则的调整或增加。而随着政策性或市场环境的变化,之前的监管规则可能失效,出现误报或漏报,并且账户的行为模式也在不断发生变化,被动地制定规则存在滞后性与局限性,无法动态灵活地根据行情变化及实际交易行为进行及时的场外配资监控。

针对场外配资监控系统现状,本文创新性地采用人工智能的手段,通过机器学习算法进行市场交易行为分析,从而准确灵活地识别出账户是否为配资账户。本文提出了基于改进的XGBoost场外配资监控算法,并结合场外配资识别的业务需求,在现有的规则筛选方法基础上,设计合理的业务特征,通过特征工程及重要性分析构建特征指标体系。根据场外配资行为特性对XGBoost模型进行改进,更好地用于配资账户的识别。在效果评价方面,结合实际账户分布及识别需求,选取召回率作为关键评价指标。实验结果显示,本文所提出的场外配资监控算法得到了更高的准确率,具有更优的识别效果,并且通过市场交易行为分析能够更加灵活快速地适应市场环境变化,从而更好地用于证券市场的场外配资监控。

1 基于改进的XGBoost的场外配资监控

1.1 场外配资流程

场外配资是一种金融融资手段,逐渐形成了较明确的业务流程。首先,用户向配资公司缴纳服务费、手续费等,并缴纳账户初始资金(保证金)。其次,配资公司提供无限制配资、按月配资、按周配资、按天配资等业务,用户选择配资模式和配资比例后,配资公司向用户提供合同规定账户金额的账户,之后用户即可进行买入或卖出操作。为了确保出借资金的安全,配资公司实时监控客户账户资金情况,设置平仓线和预警线。每日清算阶段,配资公司会判断用户的账户资金是否达到相应的临界线。如果未触及临界线,用户可正常交易;若低于补充保证金临界线,则提醒用户补充保证金;若低于强制平仓临界线,用户需补充保证金才可进行后续操作,若不补充,则配资公司会对账户强制平仓,平仓后进行保证金结算,用户退出配资系统。具体配资流程图如图1所示。

图1 配资流程图

例如,某用户初始资金为100万元,按照5倍杠杆进行配资,则可操作资金为600万元。按照合同规定,警戒线(补充保证金临界线)为杠杆操盘资金+本金×50%,即550×(500+100×50%),平仓线为杠杆操盘资金+本金×30%,即530×(500+100×30%)。某天清算后,用户总资产为525万元,则用户至少补充5万元的保证金才可进行第二日的交易操作。若不补充保证金,则公司进行强制平仓后用户实得金额约为25万元,亏损约75万元。

在深入了解场外配资账户交易行为的基础上,我们构建了与场外配资识别强相关的特征指标体系,并以市场交易行为分析为基础进行场外配资监控算法设计。

1.2 场外配资监控算法流程

场外配资监控系统的流程如图2所示。

图2 场外配资账户识别流程

首先,结合实际场外配资背景,使用历史行情数据生成配资和合规交易数据,导入委托交易数据库。随后,进行特征设计,抽取出具有场外配资行为特性的特征。最后,设计机器学习模型进行训练预测,本文选取了两种集成算法,随机森林和XGBoost,相对于单一的弱学习器,集成算法的学习器更精确,鲁棒性更好,并且结合业务实际,从3个角度对XGBoost模型进行了改进优化。

由于账户交易数据涉及客户隐私,在数据获取途径上,采用了数据生成的方法,即根据历史行情数据并结合场外配资交易的行为特征,构建了账户生成算法模型,生成相应的交易数据。

1.3 配资账户的实现和交易数据的生成

根据配资流程,定义配资账户类,并按照不同的交易策略生成配资账户的交易数据。配资账户类的说明如表1所示。

表1 配资账户类属性和方法

生成交易数据的伪代码如表2所示。数据具有随机性。

表2 交易数据生成伪代码

通过不断重复上述操作,最终得到的交易数据集中共有188个正常账户,56个配资账户,共158 370条交易记录。配资账户占比小的原因是在真实情况中,配资账户占比较小,这样设置类别比例更符合实际。

1.4 特征工程

针对数据库中的交易操作记录,首先进行交易数据的特征工程。结合场外配资的业务特点,抽取了交易频率、总成交量等9个特征,具体说明如表3所示。

表3 特征设计

偏度(skewness)是统计数据分布偏斜方向和程度的度量,是统计数据分布非对称程度的数字特征。其表征概率分布密度曲线相对于平均值不对称程度的特征数。直观看来就是密度函数曲线尾部的相对长度。偏度是样本的三阶标准化矩,其计算式为式(1)。

(1)

其中,k2、k3分别表示二阶和三阶中心距。在一般情形下,当统计数据为右偏分布时,Skew>0,且Skew值越大,右偏程度越高;当统计数据为左偏分布时,Skew<0,且Skew值越小,左偏程度越高。当统计数据为对称分布时,显然有Skew=0。

峰度(kurtosis)表征概率密度分布曲线在平均值处峰值高低的特征数。直观看来,峰度反映了峰部的尖度。如果峰度大于3,峰的形状比较尖,比正态分布峰要陡峭。反之亦然。峰度的计算式为式(2)。

(2)

其中,μ4表示四阶中心距,减3是为了方便和正态分布进行对比。在实际计算中,常用的是样本峰度的计算式,其表达式为式(3)。

(3)

1.5 交易账户类型识别

1.5.1 基于随机森林的特征重要性分析

随机森林(Random Forest,RF)[4],指的是利用多棵树对样本进行训练并预测的一种分类器。该分类器最早由Leo Breiman和Adele Cutler提出,由多棵CART(Classification And Regression Tree)构成,每棵树所使用的训练集是从总的训练集中有放回采样出来的,这意味着,总训练集中的部分样本可能多次出现在一棵树的训练集中,也可能从未出现在任意树的训练集中。在训练每棵树的节点时,使用的特征是从所有特征中按照一定比例随机地无放回抽取的。

经特征工程处理后的交易记录数据集,共有9个特征和1个类别。这里采用随机森林进行了特征重要性分析,进一步优化特征指标体系,并验证了所构建特征对于场外配资账户识别的效果。接下来,基于随机森林分类器进行了建模识别。由于样本存在比例不协调的问题,因此对模型的相关参数进行了设定,使模型能够更好地处理实际情况下的样本分布不平衡问题。

1.5.2 基于改进的XGBoost的场外配资监控算法

考虑到随机森林弱化预测偏差的局限性,本文进一步使用了XGBoost算法对配资账户进行识别。XGBoost是经过优化的分布式梯度提升库,优点在于在高效、灵活且可移植[5]。它是在Gradient Boosting框架下实现的一类集成树的机器学习算法。XGBoost基于并行树增强(GBDT,Gradient Boosting Decision Tree)的算法逻辑,可以快速准确地解决许多数据科学问题。与随机森林相比,XGBoost是一种提升算法,不仅学习效果较好,而且速度也很快,并且相较于随机森林更加关注分类错误的样本。

在算法效果分析评估过程中,结合场外配资行为特性,除准确性指标外,本文采用召回率(Recall)作为关键度量指标。召回率的实际意义为真实的配资账户最终被算法正确识别出来的比例,在实际业务场景中,往往更希望尽可能全面地识别出配资账户,保证不遗漏,因此使用召回率更符合实际场外配资监控场景。

为了提高识别的召回率,本文对所使用的XGBoost算法进行了以下改进。

1)加入新特征

在原有特征的基础上,新加入了总交易金额。其结果为每个账户的每条交易信息中价格与交易量乘积的求和。对于某个账户,设Pi为其第i条交易记录中的交易价格;Vi为其第i条交易记录中的交易量,则总交易金额TOTAL_ACCOUNT定义为式(4)。

(4)

2)对部分原特征对数变换

由于某些特征的分布图中呈现三峰或多峰现象,本问题为二分类问题,最理想的状况为双峰分布,因此对于部分特征进行了对数特征变换。

3)自定义测评函数

在XGBoost模型中,自定义测评函数。由于本问题更关注召回率这一指标,因此将测评函数定义为1-召回率,即若测评函数越小,说明召回率越高,越符合实际要求。

2 实验结果分析

2.1 特征重要性分析

采用随机森林模型进行特征重要性分析与初步识别算法构建。考虑到样本存在比例不协调的问题,因此对模型的相关参数进行了设定。模型参数如下:n_estimators=200,max_depth=5,verbose=True,class_weight={"SMF":56,"NORMAL":188}。

特征重要度占比和排序如图3所示。

从图3可以看出,交易频率(TRA_FRE)重要性最高,其次是交易总量(TRA_VOL),个股交易量偏度(VOL_SKEW)等。结合特征重要度的实际意义,上述的特征排名能够较好地反映出场外配资行为的特点。交易频率反映出场外配资账户交易频繁的特点;交易总量特征说明与正常账户相比,交易总量存在显著性差异;个股交易偏度则说明场外配资账户的历史交易主体交易量变动范围大,交易行为具有不一致性的特点。

图3 特征重要度占比排序

2.2 场外配资账户识别

将数据集按比例划分为测试集和训练集。在测试集中,正常用户(NORMAL)和配资账户(SMF)的比例为4:1以上,目的尽可能反映配资账户与合规账户分布不均衡的实际情况,同时保证实验验证结果的可靠性。

首先,采用基于随机森林的场外配资识别模型进行训练和预测。通过调整训练集中样本比例,绘制出不同的训练集、测试集所对应的预测准确性和召回率结果,如图4所示。

图4 不同比例的测试集指标图

由图4可以看出,最终经过训练所得到的模型在测试集上的准确性达到95%以上,召回率为96%。对比预测结果和真实值,发现预测错误的账户数为1,且为配资账户。召回率Recall=27/28=96%。召回率是评价模型较好的指标,因为它代表了模型从真实的配资样本中识别出配资账户的比例。当测试集比例为0.8时,模型识别效果最好。

本文进一步使用改进的XGBoost算法对配资账户进行识别,并选取了Binary:logistic作为算法的目标函数。详细的参数设置如表4所示。

表4 Binnary:logistic关键参数

将XGBoost与随机森林的预测结果汇总,在不同的测试集样本比例下,预测召回率如图5所示。

图5 数据折线图

从图5可以看出,在测试集中样本分布比例达到90%时,改进的XGBoost算法相比随机森林能够得到更高的召回率,召回率达98%。在小样本训练集上,XGBoost的识别效率较高,说明本文改进的算法具有鲁棒性。在实际业务中,配资账户在总账户中的比例非常小,改进的XGBoost算法能够更好地适应实际的账户数据分布情况,因此改进的XGBoost更加适用于真实的场外配资监控场景。

3 总结

场外配资是一种高风险的金融融资行为,其监管是否有效关系到证券市场的稳定和发展。本文创新性地提出了基于改进的XGBoost的场外配资监控算法。对于场外配资账户的识别,首先对不同账户的历史交易信息通过特征工程进行了特征指标体系构建,构建了10个关键特征。针对新特征,首先使用了随机森林算法进行特征重要性分析与解释验证,并初步进行识别建模预测,结果显示,该模型下的查全率(Recall)平均达到90%以上。然后,使用了XGBoost这一更加关注分类错误样本的梯度提升集成树算法,并结合实际数据特征,对测评函数、特征等进行了改进,进一步提升算法效果。最后,将改进的XGBoost与随机森林模型进行了实验分析比较,结果显示,改进后的XGBoost算法相对于随机森林,其在评价指标上表现更优,说明对场外配资的监控效果表现优异。本文通过机器学习算法对场外配资账户进行识别,构建场外配资监控系统,能够有效落实监管要求,清查场外配资,有助于维持股市的健康有序发展,引领正确的价值投资理念。

猜你喜欢
配资账户交易
高额收益要谨慎,场外配资需辨明
如何切换Windows 10本地账户与微软账户
探索自由贸易账户体系创新应用
配资的确疯狂
外汇账户相关业务
父亲的股票账户
万亿“两融”
大宗交易榜中榜
大宗交易榜中榜
杠杆场外配资死灰复燃