代码编写任务经验
(1)ChatGPT利好有代码基础但不熟练的开发者。可以省去大量网络搜索、查看帮助文档时间,大幅提升编程效率。(2)需要使用者有代码基础。ChatGPT生成的代码可能有错误,需要人工查错;另外,涉及输入数据、输出结果这些个性化程度较高的环节,人工实现效率可能更高。(3)做优秀的产品经理。项目解耦很重要,ChatGPT很难一步到位,将项目拆解成独立的子任务,引导ChatGPT写函数;明确需求很重要,指定函数的输入、输出变量名和格式。(4)代码出错没关系,可以提供报错信息要求ChatGPT修改。GPT支持4096个字符的上下文,能够在原有代码基础上修改。
文字编写任务经验
(1)文字处理是ChatGPT较为擅长的领域。自然语言相比代码冗余度更高,容错率也更高,生成质量整体较好。(2)任务提示Prompt应写在开头位置,实验表明当Prompt写在结尾时,ChatGPT可能无法正确理解意图。(3)GPT处理上下文字数有限制,需要拆分段落,合理分配每轮对话字数,输入以1000个左右汉字为宜。(4)对于编写行情复盘这类“半监督式任务”(有往期答案但没有当期答案),可以在Prompt中提供少量样例,GPT支持Few-shot或One-shot学习,基于样例的生成效果相比无样例更好。也不必担心GPT没有学习2021年9月后的数据,新信息同样可作为Prompt提供。
GPT助力投资研究案例四则
(1)量化分析。目标:检验MACD“金叉”“死叉”事件信号对个股收益预测能力。方法:将项目拆解成独立的子任务,引导ChatGPT写Python函数。(2)网页抓取。目标:程序化抓取
东方财富
股吧评论。方
法:从原型代码出发,逐步添加需求。(3)文字摘要。目标:将约10000字的速记稿总结成约2000字的会议纪要。方法:ChatGPT3.5仅支持4096 tokens的上下文。需将原稿拆成约1000字的段落,分别概括大意并输出。(4)行情复盘。目标:基于A股市场当日行情数据,编写复盘文字。方法:提供行情数据和复盘样例,采用One-shot或Few-shot学习,生成质量高。
正 文
GPT应用于投资研究经验总结
人类社会发展的基本规律是先进生产力不断取代落后生产力。如同各行各业正在发生的变革一样,以GPT为代表的大语言模型也将重塑投资研究行业。
本文通过(1)量化分析、(2)网页抓取、(3)文字摘要、(4)行情复盘四则案例,探讨GPT在投资研究中可能的应用场景,展示如何使用ChatGPT提升投研效率,并分析ChatGPT使用技巧。
总的来看,ChatGPT在代码编写、文本编写这两类任务上表现较好。一方面可以替代日常重复劳动,另一方面能够拓展投研人员的能力圈。例如,主动投研人员希望引入量化分析工具,或者借助网页抓取获取非结构化数据,都可以尝试用ChatGPT生成Excel公式或Python等编程语言代码。同时,高质量的回答需要提出正确的问题,我们通过实验总结出任务提示Prompt的若干经验。
代码编写任务经验:
1.ChatGPT利好有代码基础但不熟练的开发者。
可以省去大量网络搜索、查看帮助文档时间,大幅提升编程效率。
2.需要使用者有代码基础。
ChatGPT生成的代码可能有错误,需要人工查错;另外涉及输入数据、输出结果这些个性化程度较高的环节,人工实现效率可能更高。
3.做优秀的产品经理。项目解耦很重要,
ChatGPT很难一步到位,要将项目拆解成独立的子任务,引导ChatGPT写函数;
明确需求很重要
,要指定函数的输入、输出变量名和格式。
4.代码出错没关系,可以提供报错信息,要求ChatGPT修改。
GPT支持4096个字符的上下文,能够在原有代码基础上修改。
文字编写任务经验:
1.文字处理是ChatGPT较为擅长的领域
。
自然语言相比代码冗余度更高,容错率也更高,生成质量整体较好。
2.任务提示Prompt应写在开头位置。
实验表明当Prompt写在结尾时,ChatGPT可能无法正确理解意图。
3.GPT处理上下文字数有限制,需要拆分段落,合理分配每轮对话字数
,输入以1000个左右汉字为宜。
4.对于编写行情复盘这类“半监督式任务”(有往期答案但没有当期答案),可以在Prompt中提供少量样例。
GPT支持Few-shot或One-shot学习,基于样例的生成效果相比无样例更好。也不必担心GPT没有学习2021年9月后的数据,新的信息同样可以作为Prompt提供给ChatGPT。
我们让ChatGPT总结这两类任务的技巧,如下图所示,和前述经验较为符合,供读者参考。另外要说明的是,尽管本文中的案例均围绕GPT展开,随着越来越多大语言模型的开发和上线,或将诞生功能更强、使用更便捷、成本更低的GPT替代方案,这也是新生产力取代旧生产力的体现。
案例1:量化分析
目标
:检验MACD“金叉”“死叉”事件信号对全市场个股收益预测能力。
方法
:将项目拆解成独立的子任务,引导ChatGPT写Python函数。本文全部测试均基于ChatGPT3.5网页版实现。
MACD是经典的技术指标。当快线DIF自下而上穿过慢线DEA,此时MACD由负转正,这种形态通常称为金叉,为做多信号。反之,当快线DIF自上而下穿过慢线DEA,此时MACD由正转负,这种形态通常称为死叉,为做空信号。MACD指标对全市场个股是否具备择时能力?我们将借助ChatGPT生成量化分析代码进行检验。
ChatGPT的工作(4.1)
:统计正数和负数数量,计算胜率使用。之后我们将从(3)输出的区间收益率矩阵中,分别根据(2)输出的多空信号,提取做多或做空信号下股票的区间收益率,并统计做多或做空胜率。
生成代码正确。
至此我们完成了对MACD个股择时信号的胜率、赔率统计。多、空信号胜率在50%左右,难言有效。多头胜率低于50%但赔率相对高,空头胜率高于50%但赔率相对低。
总的来看,ChatGPT基本可以胜任这类基础的量化分析代码任务,编程语言也不局限于Python,其他编程语言乃至Excel公式,都可以尝试交给ChatGPT生成。
案例2:
网页抓取
目标
:程序化抓取东方财富股吧评论。
方法
:从原型代码出发,逐步添加需求。
东方财富股吧评论是使用较广泛的另类数据,可以反映短期散户投资者的情绪。通过网页抓取技术得到的文本结合自然语言处理技术,可以进行更为定量的多空情绪识别,是传统财务数据和行情数据的补充。
总的来看,ChatGPT可以胜任这类网页抓取任务。东方财富股吧属于入门级别的网页抓取,在网络上有大量案例供GPT训练。对于相对小众或者难度较大的网页抓取任务,可能需要更高的Prompt技巧。
案例3:文字摘要
目标
:将约10000字的速记稿总结成约2000字的会议纪要。
方法
:ChatGPT3.5仅支持4096 tokens的上下文。需将原稿拆成约1000字的段落,分别概括大意并输出。
撰写文字摘要、会议纪要、信息整理等是投研人员常规工作,此类任务适合交给ChatGPT处理。
目标:基于A股当日行情数据,编写复盘文字。
方法
:提供行情数据和复盘样例,采用One-shot或Few-shot学习,生成质量更高。
撰写行情复盘也是投研人员常规工作。此类任务的难点是定性和定量描述相结合,文本需要和数据相匹配。
实验1
:直接提供行情数据。以2023年4月17日为例,我们提供沪深两市日内30分钟频价格以及日度成交额,在Prompt中要求ChatGPT写一段中文股评。这里需要注意,尽管ChatGPT没有学过2021年9月之后的数据,但可以将新数据在Prompt中体现。
风险提示:
GPT生成内容不保证真实性。
G
PT生成内容具有随机性。
人工智能挖掘市场规律是对历史的总结,市场规律在未来可能失效。
人工智能技术存在过拟合风险。
深度学习模型受随机数影响较大。
责任编辑:刘万里 SF014