您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[国盛证券]:“薪火”量化分析系列研究(四):如何利用DeepSeek辅助投研工作 - 发现报告

“薪火”量化分析系列研究(四):如何利用DeepSeek辅助投研工作

2025-04-15沈芷琦、赵博文、刘富兵国盛证券车***
AI智能总结
查看更多
“薪火”量化分析系列研究(四):如何利用DeepSeek辅助投研工作

研究背景:随着人工智能技术的快速发展,大语言模型(如DeepSeek等)在投研领域的应用潜力逐渐显现。本篇报告以一个具体的议题“哪些指数适合做择时”为例,与DeepSeek进行交互,探索大模型在投研流程中的辅助作用。 DeepSeek在文献整理及代码编写中的应用:针对“适合做择时策略的指数都有哪些特点”这一问题,DeepSeek通过联网搜索寻找海量文献,并整理输出几大要点。在DeepSeek的帮助下,我们设计了一阶滞后自相关性检验、ADF检验、简单择时策略效果检验,并引导DeepSeek生成对应的Python代码,对几个宽基指数进行了实证研究。 DeepSeek深度思考助力完善投研策略:以比较适合做择时的国证2000指数为例,我们要求DeepSeek对其设计简单的择时策略,并引导其提供改进思路,对现有策略进行增强。DeepSeek通过深度思考,在原有策略的基础上,叠加了多维度信号验证、动态仓位管理等改进方案,显著提升了策略的各项绩效指标。由此可见,DeepSeek可以凭借其强大的深度思考能力,在投研策略的生成、迭代中提供助力,大幅提升我们开发、完善投研策略的效率。 DeepSeek辅助文字撰写工作:将本次研究的文字与图表输入DeepSeek,要求其生成相应的研究概述。DeepSeek根据本次研究内容,撰写了一份研究报告总结,详细描述了研究过程中的研究方法、实证研究结果、策略优化方案,并展示了各类策略的绩效指标,甚至提供了对未来研究的思路,体现了其在辅助文字撰写工作中的强大功能。 DeepSeek在投研流程中的优势与挑战:在本次探索中,我们发现DeepSeek在投研中具有以下优势:加快资料搜集与信息处理的速度、提升文案撰写及代码编写的效率、深度思考助力策略优化等。但同时,DeepSeek在投研中的应用也面临多重挑战,比如:模型“幻觉”问题亟待解决、编写代码的过程仍需较多人为干预、本地部署需要较大规模的成本投入等。 风险提示:研究结果基于历史统计与量化模型,存在历史规律与量化模型失效的风险;部分研究内容由DeepSeek生成,存在DeepSeek大模型准确性的风险。 一、研究背景 随着人工智能技术的成熟与完善,大语言模型((LLM)逐渐被应用于各行各业。相较于传统的机器学习或者深度学习模型,大语言模型基于大规模数据和Transformer架构进行训练,能够处理更为复杂的语言任务。以今年春节爆火的DeepSeek为例,它不仅可以深刻理解提问者的需求,也可以通过复杂的深度思考模式,补充、完善提问中的细节,针对特定问题给出解决方案。 对于投研流程,大模型似乎能够给予大量帮助:一方面,投研者需要阅读大量学术文献、研报、新闻等材料,而大模型在文本搜集整理、信息提取、归纳解读等方面的能力非常强大;另一方面,根据文献获得灵感后,投研者经常需要基于历史数据进行实证检验,而大模型对常用编程语言的支持非常完备,在完整描述测试需求后,可以生成相关代码供我们使用;此外,DeepSeek最新推出的深度思考模式,也可以通过联网搜集相关文献,对现有策略提出独特新颖的改进思路,辅助我们进一步完善投研策略。因此,妥善利用大模型,能够帮助我们大幅提升投研效率,减少在文献搜集整理、代码编写等冗杂工作中耗费的时间。 为了展示大模型在投研中的辅助应用,本报告以一个具体的议题为例,与DeepSeek进行交互。议题选定为“哪些指数适合做择时”,以此为出发点,对DeepSeek进行提问,根据其回答,构建相关的检验方法、筛选出适合做择时的指数;紧接着,以其中某个适合做择时的指数为例,要求DeepSeek对其设计简单的择时策略、并编写策略构建及回测代码;更进一步,根据测试结果,询问DeepSeek是否有改进方案,根据DeepSeek提供的思路,对基础策略进行增强;最终,要求DeepSeek根据上述投研过程,帮助我们整理并输出一份对本次研究的概述。 图表1:本文主要内容 二、如何判断指数是否适合择时——DeepSeek在文献整理及代码编写中的应用 2.1检验方法探索 使用DeepSeek辅助投研工作时,提问的方式非常重要。在进行“哪些指数适合做择时”的研究中,起初我们直接使用了“哪些指数适合做择时”进行提问,DeepSeek通过联网搜索获得了部分网络上现有的择时策略及近期观点,这一结果显然与我们的初衷不符。 图表2:“哪些指数适合做择时”的部分回答结果 造成上述问题的原因在于,我们的提问方式不合理。直接使用“哪些指数适合做择时”进行提问,大模型无法确切理解需求,而是抓取了其中的关键词“指数”、“择时”,然后在现有文献中进行搜索,整理了比较容易找到的答案,即“关于指数的择时策略”,变相回答了我们的问题。 对于“哪些指数适合做择时”的议题,我们其实是希望找到一些具有统计学意义的检验方法,对指数是否适合做择时进行检验。因此,我们更换了提问的方式,询问DeepSeek“适合做择时策略的指数都有哪些特点”,在此问题的引导下,DeepSeek给出的答案颇具指导意义。根据DeepSeek给我们的启发,将可能的检验方法整理如下: (1)指数是否具有较高的波动率; (2)指数成分股的相似程度是否较高:若相似度较高,意味着成分股更容易同涨同跌,导致指数更易产生极端行情、具有较高的波动率; (3)指数是否具有均值回复特性:统计学上表明,具有均值回复特性的金融时间序列,更容易对其未来数据进行预测; (4)从结果出发,设计一个简单的择时策略,观测指数是否具有较好的择时效果:若测试结果表明,指数的某个择时策略表现优异,则直接有力地证明了该指数适合进行择时。 图表3:“适合做择时策略的指数都有哪些特点”的部分回答结果 2.2均值回复特性检验 以“是否具有均值回复特性”的检验为例,我们进一步询问DeepSeek:有哪些方法可以衡量指数具有均值回复特性?同时为了限定使用的数据来源,我们在提问时附加上“拥有指数价格数据”这一条件。DeepSeek的回答为我们提供了几种检验均值回复特性的方法:ADF检验、赫斯特统计检验、一阶滞后自相关性检验等。 图表4:“有哪些方法可以衡量指数具有均值回复特性”的部分回答结果 我们选取ADF检验、一阶滞后自相关性检验,判断指数是否适合做择时。敲定了检验方案后,我们要求DeepSeek根据现有数据格式,生成进行统计检验时需要的收益率等数 据,再根据对应数据类型生成ADF检验、一阶滞后自相关检验的相关代码。 我们发现,在要求DeepSeek提供代码时,提示工程(prompt)对代码的生成结果有重要影响。在对DeepSeek进行提问时,我们需要详细描述现有的数据格式、希望计算的数据内容、以及输出结果的格式或内容,才能帮助DeepSeek更好地理解我们的需求。 比如要求DeepSeek生成一阶滞后自相关性检验的代码时,提问词的设计如下: 我希望指数具有一定的自相关性,意味着历史行情容易重现,更容易对未来收益进行预测。因此,我现在想要使用计算好的收益率,计算指数收益率在滞后一阶下的自相关性。 要求输入: 1、计算好的收益率dataframe(行索引为指数代码,列索引为日期) 2、计算收益率时用的时间区间 3、置信区间(默认为90%)要求返回: 1、dataframe形式的各指数一阶滞后自相关系数、置信区间、显著程度(行索引为指数(代码) 2、画出每个指数的自相关系数图,并将90%的置信区间标出来请给出实现这些功能的python代码。 图表5:“计算指数收益率滞后一阶自相关性”的部分回答结果 得到了DeepSeek生成的代码后,我们进行调试、修改,对指数不同时间区间收益率的一阶滞后自相关性进行检验。具体地,本文的研究样本如图表6所示。 图表6:本文研究样本 由于篇幅限制,此处只展示在不同时间区间收益率下、指数一阶滞后自相关系数的测算结果,如图表7所示。测算结果将包含以下信息:若指数在某个收益率区间天数下、滞后一阶自相关系数显著为负,则说明该指数存在一定的均值回复特性,且该区间天数恰好代表了其均值回复的时间窗口。 图表7:不同时间区间收益率下的滞后一阶自相关系数 从图表7中可以看出,不同指数在不同收益率区间窗口下的滞后一阶自相关性差异较大。 我们可以得到以下结论: (1)时间区间为20个交易日时,上证指数滞后一阶自相关系数的负向排名最靠前;但当时间区间为120个交易日时,上证指数的滞后一阶自相关系数为正; (2)时间区间为60个交易日时,本文研究的8个指数均呈现较强的负向自相关性; (3)时间区间为120个交易日时,国证2000指数滞后一阶自相关系数的负向排名最靠前;且在不同收益率区间窗口下,国证2000都具备一定的负向自相关性。 类似地,我们也要求DeepSeek生成了ADF检验的代码,调试、修改后,对指数进行了平稳性检验。图表8展示了ADF检验的结果,可以发现: (1)在收益率区间窗口较短的情况下,所有指数的ADF检验p值都非常显著,说明这 些指数的短周期收益率序列都具有平稳性的特点; (2)当收益率区间窗口为60个交易日时,深证成指、创业板指、国证2000、中证500指数的ADF检验p值较为显著(小于0.01),表明这四个指数的平稳性较强。 图表8:不同时间区间收益率下的ADF检验结果 2.3简单择时策略的效果检验 本小节内容,我们利用DeepSeek设计一个简单的择时策略,观测指数是否具有较好的择时效果,直接从结果出发、评判指数是否适合进行择时。若样本内的测试结果显示,指数的择时策略表现优异,则也能在一定程度上说明该指数适合进行择时。 具体地,以常见的MACD金叉死叉策略为例,按照下列提示词,要求DeepSeek生成MACD金叉死叉策略的Python代码: 我希望以经典的MACD金叉死叉策略判断指数是否适合做择时。 要求输入: 1.指数收盘价数据(行索引为指数代码,列索引为日期)2.MACD的参数(短均线长度、长均线长度、信号线长度)要求返回: 1.dataframe形式的策略绩效指标((包括年化收益、年化波动、最大回撤、胜率、信号胜率、夏普比率、交易次数等) 2.择时策略的日度净值(行索引为交易日期)请给出实现这些功能的python代码。 图表9:“MACD择时策略设计与代码生成”的部分回答结果 DeepSeek给出的MACD策略构建方法如下: 1、参数设置 MACD策略中,金叉和死叉分别涉及短均线、长均线、信号线三个参数。取短均线参数为6、8、12、20,长均线参数为26、50、100,信号线参数为9、12、20,遍历上述参数取值。 2、信号生成原理 金叉(做多信号):当DIF线从下方上穿DEA线时,形成金叉,为买入信号,接下来全仓持有指数、直至产生卖出信号; 死叉(做空信号):当DIF线从上方下穿DEA线时,形成死叉,为卖出信号,平仓,接下来空仓、直至产生新的买入信号。 图表10展示了经过样本内参数遍历后、表现最强的几个择时策略的绩效指标。观察策略 图表10:表现较强的MACD金叉死叉策略绩效展示 然而,只使用夏普比率评判策略效果并不合理,择时策略的信号胜率、交易次数、最大回撤等也是重要的评判指标。因此,我们可以继续向DeepSeek提问,要求对每个指数每组参数下的择时效果设计综合打分方案,并取每个指数得分前N%的择时策略、计算得分均值作为指数的最终打分,输出所有指数的打分排序结果。 图表11:“对择时策略设计综合打分方案”的部分回答结果 DeepSeek给出的综合打分方案为:对于某一个择时策略,该策略的综合得分=0.4*夏普比率-0.2*最大回撤+0.2*信号胜率-0.1*年化波动+0.1*交易次数。对于每个指数,遍历 MACD金叉死叉策略的参数取值,可以构造多个择时策略,某个指数的最终得分即为该指数所有策略中、综合打分最靠前N%策略打分的平均值。 图表12展示了各指数的最终得分情况。在不同参数N取值下,上证指数、国证2000