打造一个量化交易模型需要考虑以下几个方面:
一、预训练大模型与金融量化
大型的系统工程
关键技术变得不公开
二、应用开发
希望以上内容对您打造量化交易模型有所帮助。
大多数量化算法的核心数据是公开的量价数据,大模型预训练的数据中最重要的也是公开数据,当然各家都会有一些自己独有的数据来源,但占比都不太大。量化的整体算法逻辑各家其实也都差不多,类比预训练模型结构方面,大家也基本类似,不会有翻天覆地的差别。所以,决定模型能力好坏的其实是大型系统工程能力。首先,作为大型系统工程,量化和大模型都需要大型的计算集群。上万张卡的互联是对Infra的极致挑战,国内在ChatGPT之前实现上万张卡互联的可能只有幻方的萤火平台,幻方的Infra人才基本上也是国内最顶尖的,里面各种NOI金牌选手。量化不仅需要大型的计算集群,对性能和效率也有极致的追求,大家的算法捕捉的交易机会其实很类似,这种情况下,交易指令的速度变得尤为关键,有使用网卡编程来追求最大化效率的。大模型虽然没有这么夸张,但是在infra层面的每一点提升,都可以带来不少的训练效率优化,也能更快的得到实验反馈,并得到持续提升。其次,细节在大型系统工程中十分关键。量化交易系统中只有算法是完全不够的,整个系统包含交易执行、风控多个方面,任何一个环节的问题都会导致整个交易系统功败垂成。大模型预训练中,从数据到评估,也包含了大量的细节。除了已经形成普遍共识是谁的数据清洗地好,谁的模型效果就好,数据配比、数据顺序、训练策略等等小细节都对模型最后的结果起着重要的作用。
这个也是感触最深刻的点。金融量化是一个非常闭源的系统,各家的交易系统是最大的秘密武器,公开的部分非常少。现在大模型正在往这个方向发展,几个巨头的核心模型都开始走向闭源,最为各自最核心的秘密。OpenAI最新一代的GPT4,Google的Bard以及未来的Gemini短时间内都不会公开。这里肯定有人说Meta的LLaMA开源了啊,可以回到上一篇对于开源模型的思考。从预训练层面来看,Meta和OpenAI的差距极大,差不多差了一个代际吧。如果未来Meta发现大模型可以赚钱,也可能不会继续开源了。OpenAI未来可能也会开源上一代模型,有点像量化公司在用了更好的交易系统后把之前的交易系统公开一样。[【LLM系列】开源模型和闭源模型之争--写在LLaMA2开源之后](https://zhuanlan.zhihu.com/p/644892671)
下面是分步骤的执行代码,MMM因为做成了python库,因此非常容易部署,下面的代码是我基于colab环境写的,本地部署的话,相应调整文件的调用方式就可以:[heading2]第一步:安装运行需要的依赖项[heading2]第二步:准备数据集[content]用于实验的话,可以尝试用模拟数据集:模拟数据的批次是117,所以跑出来的形状是117组数据,训练集78%=91,测试集22%=26也可以用自己的数据集。如果本地运行的话,可以让GPT改成遍历本地文件地址[heading2]第三步:拆分数据[heading2]第四步:数据预处理[content]由于我们实际的数据绝对值落差会非常大,比如点击率(CTR)通常只有(1%),而媒体花费可能会是上百万,会影响模型对于每个因素的贡献率判断,因此这里会做一个缩放处理(归一化),让每个变量之间的关系是对等的。[heading2]第五步:初始化模型[content]这一步数据集训练是最费时间的,取决于数据量的大小和训练步长[heading2]第六步:运算可视化[content]这里的自由度就比较高了,我举了一些常用的例子供大家参考,也可以根据自己的需求增加自己需要的可视化图表损失值(预测数值和实际数值的差异,用于辨别模型的准确性,曲线越一致,模型性能越好,极端情况下可能会有模型过拟合的情况,这时候可以通过一些非线性的函数进行处理)绘制残差图(评估拟合性)所有单一变量对最终销售的贡献Baseline预测(在没有任何外因干预的情况下,销售额的走势,这里用的是模拟数据,趋势不准)所有外因对销售的贡献度