科技在量化交易中的应用—中国量化科技白皮书2023

2023年6月4日09:48:56358

2023年5月,QTF量化科技嘉年华组委会发布了《中国量化科技白皮书(2023)》,本文摘取部分内容。

本文目录:

一、数据获取阶段

二、数据加工阶段

三、 数据存储阶段

四、 策略研究阶段

五、 策略构建阶段

六、 策略执行阶段

七、 投后分析阶段

摘要:

量化交易利用数学、统计学和计算机技术,通过对金融市场的历史数据和市场现状等进行分 析和计算,确定交易规则和交易控制,从而实现自动化的交易过程。本章从数据获取、数据加工、 数据存储、策略研究、策略构建、策略执行和投后分析七个阶段讨论科技在量化交易中的应用, 详细说明了量化交易过程中用到的各种数据源信息、软件技术、硬件资源、网络技术和模型算法, 涵盖了量化交易的投前、投中和投后全过程。


一、数据获取阶段

量化交易用到的数据涉及面广、种类丰富、规模庞大。用户可根据量化交易的实际需要,确定具体 的数据类型和数据供应商,采取合适的方法获取目标数据。表2.1列出了量化交易中常用的数据类型和数据供应商。

表 : 量化交易中常用的数据类型和数据供应商

科技在量化交易中的应用—中国量化科技白皮书2023

1、API

应用程序接口 (Application Program Interface,简称API),定义了多个软件系统之间的交互规范, 包括可调用或请求的种类、调用或发出请求应使用的数据格式和应遵循的惯例等信息。它还可以提供扩 展机制,便于用户通过各种方式对现有功能进行不同程度的扩展。一个API可以是完全定制针对某个组 件的,也可以是基于行业标准设计的以确保互操作性。通过信息封装,API实现了模块化编程,从而允 许用户独立地使用接口。

在量化交易领域,用户可以使用API接口从数据供应商处下载需要的数据。Tushare等幵源的 Python数据接口,提供了丰富的API接口,可以获取历史行情、实时行情、财务数据、基本面数据、 宏观经济数据等多种数据类型,可以方便地进行量化分析和研究。每日的数据更新较快,一般可以在 交易日结束后1-2小时内更新,保证了数据的实时性和准确性。类似的数据供应商还有万得、东方财富 Choice、通联数据、聚宽、掘金量化等。但这些平台在数据管理和收费模式上存在一些差异,用户可 根据自己的需求选用合适的数据源。

2、网络爬虫

网络爬虫(Web Crawler))是一种用来自动浏览万维网的网络机器人,通过统一资源定位符(Uniform Resource Locator,®称U RL)来查找目标网页,将用户所关注的数据内容直接返回给用户,并不需要 用户以浏览网页的形式去获取信息,为用户节省了时间和精力,并提高了数据采集的准确度,使用户在 海量数据中游刃有余。

在量化交易领域,网络爬虫的最终目的是自动从互联网(包括新闻媒体和财经网站上的公幵数 据)中获取交易所需的信息。目前用于爬虫开发的主要语言为PHP、Java、Python和C++等,其中 Python由于简便易用,且有强大的模块化功能和成熟的爬虫框架支撑,已成为网络爬虫应用的首选。

二、数据加工阶段

1、多模态数据处理

多模态(Multimodal)是具有不同的数据结构特点,来自不同的采样数据,描述同一对象的多媒体数据,包括文本、图像、视频、音频等。多模态数据处理技术指的是将多种类型的数据进行结合处理,以获得更多的信息和洞察力的技术。常见的多模态数据处理技术支持多种不同的数据模型,包括结构化的数据和非结构化数据,覆盖普通文本、KeyValue 介质存储、全行搜索、排索引、图存储、图数据库、存储文档,以及时空数据等。其中,自然语言处理技术是量化交易中应用最广泛和最频繁的数据处理技术。

自然语言处理技术

自然语言处理(Natural Language Processing,简称 NLP),是多模态数据处理的重要组成部分,主要研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理可以从语义资料中提取行为金融学和市场情绪信息,主要用于文本分类、情感分析和关系抽取。

A、文本分类

文本分类一般使用基于模板的、有监督的机器学习或者深度学习算法实现,如手写规则、朴素贝叶斯、支持向量机、决策树、随机森林和神经网络等算法。

结合文本分类可以实现以下几个方面的应用:市场情绪预测、选股决策、风险控制和高频交易。其中,文本分类可以对资讯、新闻、公告等内容进行分类,了解市场情绪变化和主要关注点,为投资者制定交易策略提供参考;也可以通过对公司公告、行业研究报告等内容进行分类,筛选出优质企业的相关信息,并对其进行评估,辅助投资者进行股票选取和持仓决策。

B、情感分析

情感分析一般使用有监督的机器学习或者深度学习算法实现,如朴素贝叶斯、长短期记忆(Long Short-Term Memory,简称 LSTM)神经网络和预训练的基于词表 / 规则的情感分析工具(Valence Aware Dictionary and sEntiment Reasoner,简称 VADER)等。

使用情感分析可以实现的应用包括资讯文本情感分析、公司信息分析、特定事件分析和情感指数构建等。通过对目标公司的新闻、社交媒体等文本进行情感分析,可了解市场情绪和投资者情绪,分析其股票和期货价格等的潜在走势;同时,也可以对公司公告、财务报表、行业研究报告等进行处理,提取出关键信息,为交易策略提供数据支持。

C、关系抽取

关系抽取功能一般使用基于模板、有监督、半监督或无监督的机器学习或深度学习算法实现,如手写规则、逻辑回归、支持向量机、神经网络和 Snowball 系统 4 等,通过识别文本中实体之间的关系来获取更深层次的信息。

关系抽取相关的应用包括事件分析、风险控制、情报获取和基础知识建设。通过关系抽取,可以对新闻、社交媒体等文本进行处理,提取出不同实体之间的关系,分析其对市场的影响;同时也可以利用关系抽取技术对企业和行业等多方面的信息进行分析,发现潜在风险点和危机事件,并及时调整投资组合和风险控制策略。

2、数据清洗

数据清洗是数据加工阶段的重要步骤,目的是提高数据的质量,从而提高分析和建模的准确性和效率。由于采集到的各类数据通常不完整,包含噪声、前后矛盾、冗余、有缺失值等,无法直接用于量化交易中,使用之前需要进行处理。常用的数据清洗算法包括:

缺失值填充算法:用统计方法或插值法填充缺失值。

异常值处理算法:识别和处理异常值。

重复值处理算法:识别和删除重复值。

数据转换算法:将数据转换为适合分析的格式,如对数变换、归一化等。

数据合并算法:将多个数据集合并为一个数据集。

3、因子计算

因子计算是一系列用来发现一组变量的潜在结构的方法,通过寻找一组更小的、潜在的或隐藏的结构来解释已观测到的变量间关系。因子通常具有以下特点:一是因子的数量远少于原始变量个数,因此因子分析能够减少分析中的工作量;二是因子变量不是对原始变量的取舍,而是根据原始变量的信息进行重组,能反映原始变量的大部分信息;三是因子之间不存在线性相关关系。

量化交易因子一般分成三类:

第一类是量价因子,主要来源于成交量的数据,包括每分每秒的股票价格、资金流,以及各类 K 线等技术指标,包括动量指标、周期指标、成交量指标、价格指标等。

第二类是基本面因子,包括财务报表、营收、券商报告、分析师预期等,一般来源于万得、朝阳永续等数据库,其更新频率较长,一般按月或季更新。

第三类是另类因子,包括社交舆情、电商数据、门店数据等因子,往往需要在有较强的金融逻辑支持时使用,但数据获取成本较高。

三、数据存储阶段

获取数据之后,需要把数据整合并储存起来,方便后续分析和处理,主流的数据存储方式包括数据库、文件和数据仓库。

1、数据库存储

数据库提供高效的数据管理和查询功能,使得数据整合的过程更加高效和方便。用户可以将不同来源的金融数据存储在同一个数据库中,并运用数据库的强大功能来整合和处理数据。

(1)关系型数据库技术

关系数据库管理系统(Relational Database Management System,简称 RDBMS)利用了关系模型来存储数据。这些数据库特别适合于财务数据,因为可以将不同的“对象”(例如交易所、数据源和价格等)设计为单独的表,并在不同的表之间定义关系。RDBMS 利用结构化查询语言(Structured Query Language,简称 SQL)对财务数据执行复杂的数据查询操作。常用的 RDBMS 包括 Oracle、MySQL、SQLServer 和 PostgreSQL 等。

RDBMS 的主要优点是安装简单,独立于平台,易于查询,方便与主要的回测软件集成,在大规模数据存储的情况下仍能保持高性能。其缺点是定制化设计比较复杂,在缺乏有关 RDBMS 数据存储方式的基础知识的情况下,实现上述性能存在困难。图 2.1 列出了当前业界最受欢迎的前 10 种关系型数据库。

图:最受欢迎的前 10 种关系型数据库

科技在量化交易中的应用—中国量化科技白皮书2023

资料来源:专业数据库排名网站 DB-Engines

(2)时序数据库技术

时序数据库是一种专门用于处理时序数据的数据库。时序数据是指时间上有规律的数据,包括行情数据、传感器数据、网络日志和运动数据等,这些数据的时间戳是最重要的因素之一。无论是程序化交易还是量化投资,都是基于历史的证券交易数据以及各种宏观数据做出实时的交易决策,因此量化金融已成为时序数据库最重要的应用场景之一。

常见的时序数据库包括 InfluxDB(Go 语言编写的分布式时间序列数据库)、Kdb(收费的高性能金融序列数据库)和 DolphinDB(我国国产的高性能分布式时序数据库,由浙江智臾科技有限公司自主研发)等。时序数据库通常具有以下特点:

(a)时间戳索引:时序数据库通常会自动将时间戳作为主键建立索引;

(b)数据压缩:时序数据往往按时间序列存在较强的规则,便于压缩数据和加速查询;

(c)实时采集和处理数据:时序数据库可以实时地采集和处理流式数据,包括数据解析、清洗、过滤、聚合等操作,还可以进行数据分发和复制等。

图 : 目前业界最受欢迎的前 10 种时序数据库

图 2.2:最受欢迎的前 10 种时序数据库

科技在量化交易中的应用—中国量化科技白皮书2023

资料来源:专业数据库排名网站 DB-Engines

2、文件存储

在金融应用程序中,文件存储最适合基本数据或元数据。可以将不同来源的金融数据存储在不同的文件中,例如 Excel 文件、CSV 文件等,并使用文件整合工具将它们合并成一个更大的文件。文件整合工具通常提供复杂的数据处理和分析功能,例如数据清洗、数据转换和数据可视化。

3、数据仓库整合

使用数据仓库来整合不同来源的金融数据。数据仓库可以提供高度可扩展性和高性能的数据管理和查询功能,并支持复杂的数据处理和分析操作。数据仓库的数据按照不同的主题组织并按照统一化的存储设计集成在一起,且保持稳定。数据一旦进入数据仓库,即不可修改,每次相同条件的数据查询结果是一致的。此外,由于数据仓库保存了数据的历史状态,可开展跨时间段的数据分析。

四、策略研究阶段

本阶段利用机器学习等人工智能算法,对各种数据进行分析处理,研究和提取有用的交易规律。

1、机器学习算法

根据学习方式的不同,机器学习可以分为监督学习、无监督学习和强化学习三大类。监督学习是对有标签(已知类别)数据进行学习,常用的模型有支持向量机、随机森林、深度神经网络等,在量化策略研究阶段,可用于开发预测模型;无监督学习所给的学习数据不带标签(未知类别),常用的模型有主成分分析、聚类等,适用于分析金融市场结构;强化学习以环境反馈(奖 / 惩信号)作为输入,致力于实现奖励最大化,可用于优化交易策略。

(1)监督学习

监督学习的基本思想是利用有标签数据来构建模型,以便预测新数据的标签,特别适合解决分类和回归问题,可用于开发预测模型,具体流程如图 2.3 所示。

图 2.3:监督学习的流程示意图

科技在量化交易中的应用—中国量化科技白皮书2023

监督学习模型的训练由两个主要步骤组成:特征工程和模型训练。特征工程涉及选择和提取能够代表数据的特征,而模型训练则是使用有标签数据训练机器学习模型,以便可以对新数据进行预测。在训练阶段中,监督学习需要从训练数据中提取有用的特征,并建立一个能够将输入映射到输出的函数(即模型)。在测试阶段中,监督学习模型会将新数据输入模型中进行预测,然后将预测标签与实际标签进行比较,以评估模型的性能。监督学习的最终目标是在测试数据上获得较高的准确率和泛化能力。

金融市场预测模型是监督学习在金融市场的具体应用,旨在预测未来金融市场产品(如股票、外汇、债券等)的价格或市场趋势。这些模型基于不同的数学原理和假设,主要根据历史数据和多种市场指标进行训练和预测,具有不同的优点和缺点。以下是一些常见的预测模型。

A、股票价格预测:监督学习可以用于分析历史股票价格和市场数据,以学习股价变动的模式。常见的算法有支持向量机(Support Vector Machine,简称 SVM)、随机森林和神经网络等。

B、信用评分:通过对客户的历史信用数据进行分析,监督学习可以预测客户未来的信用表现,从而帮助银行和金融机构降低信用风险。常用的算法有逻辑回归、决策树和梯度提升机等。

C、风险管理:监督学习可以用于预测企业或个人的违约概率,从而为风险管理提供数据支持。此类模型通常使用逻辑回归、随机森林等算法。

(2)无监督学习

无监督学习可以在没有标注数据的情况下,探索数据的内在结构和规律,其基本流程如图 2.4 所示。

图 2.4:无监督学习基本流程

科技在量化交易中的应用—中国量化科技白皮书2023

无监督学习应用于金融市场结构分析,对金融市场中的各种参与者、制度、机构等进行分类和研究,可以帮助投资者理解市场的特点、预测市场趋势、制定投资策略等,具体应用主要包括聚类分析、降维和异常检测等。

聚类分析是无监督学习应用于金融市场结构分析的主要方法。聚类分析可以帮助理解市场中不同参与者、机构和产品之间的相似性和差异性,进而发掘市场的潜在结构或规律。在金融市场中,聚类分析可以应用于股票、债券、商品等多种金融产品的分类和组合方案制定。常见的聚类算法有 K 均值聚类(K-means)算法、基于密度的噪声应用空间聚类(Density-Based Spatial Clustering of Applications with Noise,简称 DBSCAN)算法和谱聚类(Spectral Cluster)算法等。

无监督学习在金融市场结构分析中的另一个应用是降维。降维可以削减高维数据的冗余和噪声,加速模型训练和推理,同时提供更加直观和可解释的特征空间。在金融市场中,降维可以帮助发现相关变量、挖掘因果关系和隐含规律,进而帮助进行风险评估和预测。降维技术如主成分分析(Principal Component Analysis, 简 称 PCA) 和 t 分 布 随 机 邻 域 嵌 入(t-distributed Stochastic Neighbor Embedding ,简称 t-SNE)可以用于分析高维金融数据,提取重要特征。

无监督学习还可以应用于金融市场中的异常检测。异常检测可以发现在金融市场中的非正常事件并及时给出回应,打破人为和经验判断导致的误区。在金融市场中,异常行为包括市场参与者的投机行为、计算机程序的错误或漏洞、数据输入错误等。使用无监督学习方法,异常点可以被自动标注和二次审查,并提供精准的市场预警。常用的异常检测算法有孤立森林(Isolation Forest)和局部异常因子(Local Outlier Factor,简称 LOF)等。

(3)强化学习

强化学习通过建立一个能够学习、适应市场环境变化的智能代理来决定交易策略。该智能代理通过与市场交互,不断学习和优化决策,提高交易策略的有效性和稳定性。

近年来,强化学习算法已被证明在决策问题中有效,在解决动态的、不确定的金融领域问题上具有突出的优势,其基本思想是通过试错学习来优化决策策略。在交易中,强化学习可以通过学习历史数据来发现交易规律,并根据这些规律来制定交易策略。

强化学习目前已经应用在股票、期货、数字货币、黄金、外汇等市场,在不同的交易策略上取得了较好的效果,如资产组合优化、交易执行策略、高频交易策略和跨资产交易策略等。目前应用在交易策略优化中的强化学习算法主要包括:深度 Q网络(Deep Q Network,简称 DQN)、异步优势动作评价算法(Asynchronous Advantage Actor-Citic,简称 A3C)、近端策略优化算法(Proximal Policy Optimization,简称 PPO)。

现在金融机构已经开始将强化学习用于优化交易执行策略。比如一些投资银行和交易公司通过构建强化学习模型,自动决定下单量和时机,以降低交易成本。其他银行和基金公司也使用了强化学习算法来预测市场变化并为其客户提供更好的投资建议。

(4)大模型

大模型,例如GPT(Generative Pre-trained Transformer)系列和 BERT(Bidirectional Encoder Representations from Transformers)等,是基于自注意力(Self-Attention)和 Transformer 架构的预训练语言模型。大规模预训练语言模型采用“预训练 - 微调”两步走的训练流程,第一步在大规模无标注数据(如互联网文本)上进行模型预训练,学习通用的语言模式;第二步在给定自然语言处理任务的小规模有标注数据上进行模型微调,快速提升模型完成这些任务的能力,最终形成可部署应用的模型,与经典机器学习流程的对比如图 2.5 所示。

图 2.5:“预训练 - 微调”流程与经典机器学习流程对比

科技在量化交易中的应用—中国量化科技白皮书2023

值得一提的是,ChatGPT(Chat Generative Pre-trained Transformer,简称“ChatGPT”),是美国 OpenAI 研发的聊天机器人程序,于 2022 年 11 月 30 日发布。ChatGPT 是人工智能技术驱动的自然语言处理工具,它能够通过理解和学习人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码、论文等任务。

公开资料显示,ChatGPT 已经可以完成一些简单的量化策略,例如构建平均回归模型,输出均线策略。理论上甚至可以利用 Scikit-learn 数据库(针对 Python 编程语言的免费机器学习库)建立制作未来利率的预测模型,并使用均方误差(Mean-Square Error,简称 MSE)对其进行评价。

2、策略回测技术

策略回测是利用测试集数据的模型预测结果编写策略,并用测试集的历史数据对策略进行校验的过程。策略回测技术通常指那些通过历史数据,对交易策略进行模拟测试的软件。它可以帮助我们检验交易策略的盈利能力,评估风险收益比,优化交易参数等。目前市面上有很多种策略回测工具,比如Python 编程语言中的 Backtrader 和 Zipline 库、R 编程语言中的 quantmod 和 blotter 包、还有著名的 Tick Data Suite 等。

3、量化投研云服务

量化投研是近年来在国内量化交易领域中广泛应用的一种服务。量化投研云服务是量化投研和云服务的结合。随着量化策略的研究发展,纯量价因子也需用到海量的逐笔成交和逐笔委托数据、图谱数据、舆情数据、多模态数据,也需要更多的 TB7 级别的存储空间。随着上万的因子数据计算和深度学习大模型训练的需求出现,单独一个容器或虚拟机已无法(及时)完成计算或训练,需要调用云服务快速分配大量的计算资源来进行分布式计算或训练。

五、策略构建阶段

量化交易的程序化特质,主要体现在策略构建阶段。策略构建包含策略编写相关技术,这方面需要对金融市场、交易工具和交易过程的理解,也需要扎实的编程基础。

1、策略编程逻辑

典型的量化策略开发,主要围绕“初始化设置及技术指标的计算”和“策略的开平仓操作”两大步骤展开,前者需要了解所投资标的市场操作规则,后者需要关注跟踪止盈、资金管理、控制器赋值等。

以 A 股和美股为例,A 股和美股在交易时间、最小交易单位、涨跌幅限制、结算方式、熔断机制等方面均有所不同,投资者只有掌握了投资标的市场等操作规则才能将其量化,并实现程序化交易。

2、策略编程语言

经过多年的发展,不少编程语言已经形成了强大的开发框架、丰富的函数库和第三方库,用户可根据实际需要选用。常见的策略编程语言包括 Python、C、C++、Java 和 FPGA 编程。Python 是目前最流行的量化策略编写工具,pandas、scipy、numpy、zipline 等开源框架相当受开发者欢迎。C、C++和 Java有一定的学习门槛,而且程序量往往比较大,编写比较费时。FPGA编程技术与传统软件系统相比,能实现可预知的超低时延,该技术已在模型计算、高频交易等领域大放异彩。

目前很多线上平台提供了量化策略编写功能,集成了很多方便的工具(优矿、米筐等),使开发者可专注于策略,也有很多开源的量化交易框架(vnpy、easyquant 等),用户可以根据自己的需求进行二次开发。

六、策略执行阶段

策略执行阶段把自动化交易程序接入交易系统完成交易。本阶段涉及的科技主要包括低延迟技术、算法交易和风控技术。

1、低延迟技术

(1)低延迟软件技术

A、软件加速库

软件加速库(Math Kernel Library,简称 MKL)是英特尔公司提供的一套经过高度优化和广泛线程化的数学库,专为需要极致性能的科学、工程及金融等领域的应用而设计。核心数学函数包括基础线性代数子程序库(Basic Linear Algebra Subprograms,简称 BLAS)、线性代数程序包(Linear Algebra PACKage,简称 LAPACK)、可扩展线性代数库(Scalable Linear Algebra PACKage,简称ScaLAPACK)、稀疏矩阵解算器、快速傅立叶转换、矢量数学及其它函数。在量化交易中,MKL 库的应用主要体现在优化算法和高性能计算方面,广泛应用于量化风险模型、量化数据分析、量化交易计算等领域。

B、增强矢量扩展指令集

增强矢量扩展指令集(Advanced Vector Extensions,简称 AVX),是英特尔公司推出的一种单指令多数据(Single Instruction Multiple Data,简称 SIMD)的指令集架构,用于加速向量计算。AVX 指令集可以同时处理多个相同数据类型的元素,提高计算效率,特别适用于需要进行大量向量计算的应用程序。在量化交易中,AVX 指令集的应用主要体现在矩阵计算和向量化计算上。

C、数据平面开发套件

数据平面开发套件(Data Plane Development Kit,简称 DPDK)是一个开源的数据平面开发工具集,旨在提供高性能、低延迟的数据包处理能力,适用于网络、存储和云计算等场景。在量化交易领域,DPDK 可以应用于高频交易、网络传输和数据处理等场景。在高频交易中,DPDK 可以实现快速收发交易数据和实时监控市场行情;在网络传输中,DPDK 可以实现高速数据包的转发和过滤;在数据处理中,DPDK 可以实现高效的数据压缩和加速计算等。

D、操作系统内核优化

操作系统内核是计算机系统的核心组成部分,负责管理计算机硬件资源和协调应用程序之间的交互。优化操作系统内核可以显著提高计算机系统的性能和稳定性。在量化交易领域中,操作系统内核优化可以帮助提高交易系统的响应速度和稳定性,从而实现更高效的交易操作。

例如,高频交易通常会采用高性能服务器,如高主频 CPU8 、高速内存和固态硬盘等,以提高计算能力和降低数据处理延迟。为使高频交易服务器达到最佳性能,需要对操作系统进行调优。主要的调优手段包括关闭节能、保持 CPU 工作在固定频率、关闭中断和隔离 CPU 内核等。经过调优后,系统性能达到极致,使用 TCP9 收发数据的延迟(1/2 网络往返时间)可以降到 1~2 微秒。

E、内存加速

内存加速优化是一种提高计算机系统性能的技术手段,其基本思想是尽可能地减少内存访问延迟,提高内存访问速度,从而加快系统运行速度。在量化交易领域,内存加速优化可以帮助降低交易系统的

延迟,提高交易速度和执行效率,从而提高交易策略的成功率和盈利能力。

(2)硬件加速技术

量化领域硬件加速技术的应用,主要体现在智能芯片、低延迟网卡和专用交换机等方面。

A、智能芯片

加速 CPU

随着计算机硬件技术的发展,普通 CPU 无论是在计算能力,还是资源成本上相对于一些专用硬件已经没有绝对优势。为了更充分地应用 CPU 性能,业界发展出了一些 CPU 加速技术。

超频技术:通过超频技术,提高 CPU、内存等硬件设备的工作时钟频率,从而达到改善服务器性能的目的。搭载了超频技术 CPU 的服务器,在量化交易中可以提高交易策略的执行速度,从而更快地完成交易,减少因为市场变化而导致的交易失败或成本上涨风险。

多核并行处理:现代计算机系统的核心处理器 CPU 有几十个处理核心,每个处理器核心可以独立地执行任务。充分利用每个 CPU 的核心,可以大幅提高程序的处理性能,使其能够处理更复杂的计算任务和更大规模的数据集。多核并行处理则可以提高计算效率和处理速度,从而提高交易的执行速度和准确性。在量化交易中,多核并行处理主要用于数据处理、策略计算、交易执行、高频交易。

GPU

图形处理器(Graphics Processing Unit,简称 GPU),是一种专门用于图形处理的微处理器。GPU 最初被用于电脑游戏等图形处理密集型任务,但随着 GPU 架构的不断升级和发展,其在其他领域也有了广泛的应用,特别是在科学计算、深度学习和加密货币挖掘等方面。在量化领域,GPU 被广泛应用于加速复杂计算,如高频交易中的量化分析和算法交易、风险管理、投资组合优化等。

目前,GPU 服务器市场上的主要厂家包括英伟达、AMD 和英特尔等。其中,英伟达是 GPU 服务器市场的领导者,其 GPU 服务器市场份额占据了 70% 以上,而 AMD 则在市场份额方面表现出了快速增长的趋势。根据 Verified Market Research 数据,2021 年全球 GPU 市场规模为 334.7 亿美元,预计到 2030 年将达到 4473.7 亿美元,期间年均复合增长率达 33.3%。根据 Jon Peddie Research 数据,2022Q4 独立 GPU 市场中,英伟达、AMD 和英特尔三家的份额分别为 85%、9% 和 6%。

FPGA

现场可编程门阵列(Field Programmable Gate Array,简称 FPGA),是一种可编程逻辑器件,可以通过编程实现特定的电路功能。与 CPU 和 GPU 等通用处理器相比,FPGA 是专用硬件,可以提供极高的性能和灵活性,同时具有很低的功耗和延迟。FPGA 硬件加速技术在量化交易中得到了广泛应用,主要分为两个方面:低延时处理和科学计算加速。低延时处理,最常见的场景是高频交易和市场行情数据处理。科学计算方面,主要用于加速金融算法中的计算密集型任务,例如期权计算、金融衍生品定价和人工智能等。

在高频交易中,FPGA 可以用于实现低延迟的算法交易策略,例如订单簿处理、行情数据处理等。由于 FPGA 直接在硬件层面实现策略逻辑,因此具有极低的延迟和高度并行性能。

ASIC

专用集成电路(Application Specific Integrated Circuit,简称 ASIC),是一种专门用于实现特定功能的集成电路。在人工智能领域,ASIC 的作用是加速神经网络的训练和推理。谷歌公司专为深度学习框架 TensorFlow 设计的张量处理器(Tensor Processing Unit,简称 TPU),即是一款 ASIC。TPU采用低精度(8 位)计算,以大幅降低功耗,采用脉动阵列设计以优化矩阵乘法与卷积运算,以减少 I/O 操作,采用更大的片上内存,以减少对动态随机存取内存的访问。与 FPGA 相比,ASIC 根据特定使用者的要求和特定电子系统的需要而设计和制造,具有更高的性能和更低的功耗,但缺点是成本高昂,难以进行修改和升级。

B、低延迟网卡

低延迟网卡是指在数据中心和高性能计算领域中广泛应用的一种高性能网卡,其主要特点是具有极低的网络延迟和高带宽。在量化交易中,低延迟网卡可用于优化交易系统的网络通信,减少交易指令和市场行情数据的传输延迟,从而提高交易的执行效率和准确性。低延迟网卡普遍具备内核旁路模式及用户空间协议栈,避免了内核带来的处理延迟,可以大幅降低系统延迟。图 2.6 给出了低延迟网卡示意图。

图 2.6:低延迟网卡示意图

科技在量化交易中的应用—中国量化科技白皮书2023

C、专用交换机

可编程交换机

可编程交换机(Programmable Switch)是一种具有可编程能力的网络交换机。它与传统交换机不同,传统交换机的功能是固定的,提供基本的层二、层三网络通信功能,而可编程交换机可以根据需要进行编程,实现各种不同的网络功能。在量化交易中,可编程交换机可以提供更快的数据包处理速度和更低的延迟,从而为交易算法提供更加实时的数据支持。

低延迟交换机

交换机在转发数据帧时存在三种模式,按传输效率从高到低排名,分别是直接转发(Cut-Through)、免碎片转发(Fragment-Free)和存储转发(Store-and-Forward)。存储转发模式需要等到整个数据包全部收到后才开始发送,这样虽然可靠性高,但是增大了延时。低延迟交换机使用直接转发模式,当收到数据包的部分字节时就可以开始转发,相对于存储转发模式,大大减少了数据缓存时间,转发延迟可以降低至 500 纳秒以内。

一层交换机

一层交换机使用开关矩阵进行转发,转发延迟可以降低至 5 纳秒以内。在行情分发场景中,可以最大程度地降低延迟。

(3)低延迟网络技术

低延迟网络技术是指通过优化网络传输、协议和硬件设备,降低数据传输延迟,提高数据传输速度

的一系列技术。在金融领域尤其是高频交易中低延迟网络技术具有重要意义。

A、高频交易中的网络优化

在高频交易中,网络优化主要包括以下几个方面:

服务器位置选择

交易公司将服务器放置在离交易所尽量近的地方,甚至是交易所的机房内,以降低数据传输距离,从而减少延迟。国内证券交易所和期货交易所都提供了托管机房,方便会员托管机器,如表 2.2 所示:

表 :交易所托管机房一览

科技在量化交易中的应用—中国量化科技白皮书2023

专线连接

为了降低网络传输延迟,交易公司通常会采用专线连接到交易所,以确保数据传输的稳定性和可靠性,并显著降低因中间环节而产生的延迟。以上海、深圳两地连接为例,普通互联网回路延迟约为 40毫秒,低延迟专线可以降低至 19 毫秒。

在国内市场,通过与中国电信、中国移动等主要运营商合作,交易公司可以获得高质量的线路资源。此外,交易公司可能会选择多条线路并行传输,以确保某一线路出现问题时交易不间断。

网络拓扑优化

优化网络结构是降低数据传输延迟的有效方法,通过减少数据在传输过中经过的中继节点,可以进一步提高传输效率。网络拓扑优化主要包括直线传输和最短路径传输两种方式。

直线传输技术是一种沿着地理直线路径传输数据,而非经过多个节点的方法,以达到降低延迟的目的。这种技术通常通过光纤传输线、无线电波等方式实现。

最短路径传输技术旨在寻找数据传输过程中的最短路径,以最小化经过的节点数量,从而降低延迟。在实际应用中,交易公司可以通过软件算法来计算和选择最佳路径,以提高传输效率。

提高网络带宽

在局域网内,提高网络带宽是降低延迟最直接有效的方法。增加网络带宽可以让更多的数据在同一时间内传输,从而缩短传输时间并提高交易速度。然而,这种提升往往伴随着设备更新换代的成本,需要根据实际情况权衡投入与收益。

在现代局域网中,千兆网络与万兆网络是两种常见的带宽规格。千兆网络的传输速率可达 1Gbps(1000Mbps)10,而万兆网络的速率则可达 10Gbps(10000Mbps)。以 1kB 的数据为例,在千兆网络中传输需要 10 微秒,而在万兆网络中传输仅需 1 微秒。通过升级网络带宽,交易公司可以显著提高数据传输速度。

网络延迟测量设备

网络延迟测量设备采集整个交易网络中的流量,并打上硬件时间戳,可以客观地测量和监控交易系统中各个节点的延迟。根据延迟测量结果,可以有针对性地改善系统性能,降低处理延迟和抖动。网络延迟测量设备示意图。

图 2.7:网络延迟测量设备示意图

科技在量化交易中的应用—中国量化科技白皮书2023

B、网络传输协议与加速技术

网络传输协议和加速技术在低延迟网络技术中扮演重要角色。以下是一些常用的协议和技术。

UDP 协议

相较于 TCP协议,用户数据报协议(User Datagram Protocol,简称 UDP)协议具有更低的传输延迟。UDP 不需要建立连接、确认数据包的到达以及重新发送丢失的数据包,因此具有更高的传输速度和更低的传输延迟。在行情分发中,交易所和证券公司大量使用了 UDP 组播协议,避免了重复发送相同数据的开销。

对于高频交易者来说,基于 UDP 组播的协议还有一个关键优势即公平性——它可在路由器层面保证同时对所有市场参与者发送消息,而不像 TCP 协议那样会受软件影响从而导致某些用户比另一些用户先收到消息。

应用层协议优化

针对金融领域的特点,可以采用专门设计的应用层协议,如 FIX11/FAST12 协议、STEP13 协议和Binary14 协议。FIX/FAST 协议在金融领域广泛应用,其简洁的格式和灵活性使得数据传输更加高效。

FIX 协议是由国际 FIX 协会组织提供的一个开放式协议,目的是推动国际贸易电子化进程,在各类参与者之间,包括投资经理、经纪人、买方、卖方,建立起实时的电子化通讯协议。

STEP是基于 FIX4.4 版本制定出来的中国本地化 FIX 协议版本,是中国国家金融行业标准,已成为事实上的证券数据标准,其语法简单,定义灵活,易扩展,数据相对冗余。

FAST 协议的核心是一个压缩算法,将按照 FIX 规范定义的数据经过压缩以后,给出一个一个 Key15的模板文件,然后在传输过程中只传输 Value16,很大程度上降低了行情传输的带宽,减少了行情延迟。

Binary 协议即二进制协议,目前被用在深交所和上交所的行情中。在 10Gbps 及以上局域网内,网络传输延迟大大降低,协议处理延迟变得更为重要,采用 Binary 协议可以获得整体的低延迟。

数据压缩技术

为了减少传输时间,可使用数据压缩技术来降低数据包的大小。由于压缩也需要一定的耗时,因此需要根据实际情况选择是否压缩以及压缩算法。表 2.3 的参数供常用压缩算法性能参考。

2、极速柜台

极速柜台作为大集中柜台的补充,能够更好地为高频量化交易客户服务,柜台作为全链路的穿透部分,更低的柜台穿透能有效提升策略的收益。极速柜台分为软件方案和硬件方案。软件方案一般采用全内存,数据缓存(Cache)加速、低延时总线、组播传输、线程绑核等技术,硬件方案一般采用 FPGA 技术、软硬结合、组播传输等技术来加速硬件柜台内的穿透延时。为了全链路的调优,与极速柜台上下游相关的模块也需要进行调优,例如:低延时交换机的使用,低延时网卡的使用,机房物理位置调整,网络防火墙调整,API 启动和穿透调优,报盘机绑核,JVM17 性能优化等。

3、极速行情

极速行情的核心是快,更快的行情信息能有效提升策略的收益,更好地为高频量化交易客户服务。极速行情主要分为解码和分发。解码将 STEP 或 Binary 编码解出,分为 FPGA 硬件方案和软件方案。

分发则是将解出的行情数据按照定义格式发送给客户,主要有 UDP 组播和 TCP。为了降低传输延时,还可以进行多路合并和行情分隔传输,多路合并可以在不同的阶段接收多路不同的行情数据,根据规则

选取最快的行情。行情分隔传输是将不同类的数据通过不同的组播地址或 TCP 连接传输,达到传输加速的目的。

4、算法交易

算法交易,在国内的定义较多,在此特指交易员在二级市场进行交易时所使用的一种程序化交易方式。起初是交易员根据具体的交易场景选择对应的算法,按照既定规则被动执行交易。后来随着统计分析和人工智能的加入,算法交易变得更加智能,交易逻辑也变得更加黑盒化。

算法交易通过对市场数据的高效分析和预测,对市场做出快速有效的反应,在提升交易绩效的同时,也容易在市场突发事件或程序故障导致交易异常时产生严重的不良影响。算法交易主要有以下几个特点:

(1)全自动执行交易:决策全部由计算机程序完成的,消除人为因素的干扰,快速响应市场的变化。
(2)具有预判功能:绝大多数算法已经不是完全被动执行,都带有一定的预判,以提高执行绩效。

(3)自带风险控制:由于完全自动化执行,为了避免异常情况,独立的风控系统是算法交易必不可少的配置。

5、联合风控

联合风控系统一般采用内存流式计算的方法,并发计算规则,在千万级计算路径下仍可实现微秒级时延水平,对交易时延基本无干扰,真正做到实时的事前风险控制,并满足交易的极速需求。可支持百万级日交易笔数、上千产品量和数千账户数,以及支持包括跨市场跨资产风控,包括但不限于股票、期权、债券、期货等。

以证券公司为例,相对于单独的风控系统,联合风控具备控跨市场、跨节点、跨系统等特点,将证券公司的业务全部划入一个风控的联合管理下,可以满足收益互换、做市商等创新业务的公司级联合风控要求,有效地规避了众多的外规及内规风险。

七、投后分析阶段

量化投后分析阶段主要采用归因分析的方法来回顾量化策略的具体效果,一般使用数据可视化方法,对量化策略的风险收益水平、超额收益及来源进行详细分析。常见的归因分析主要包括以下几种。

1、净值分析

通过多个风险收益指标,对策略整体的风险、收益表现进行刻画。由于净值数据相对于持仓等其他数据更容易获取,净值分析的方法有很多种。最简单的净值分析是观察净值走势与某些宽基指数的走势,如果走势一致,说明两者的风格非常相似。

2、持仓分析

持仓分析需要获得投资组合以及基准指数中各资产的权重、回报率等信息,在此基础上对组合和基准进一步分层,将组合的回报逐级拆分为配置因素、资产内选择因素等以确定底层资产属性,再细分成风格因素、行业因素等。例如,对前几大持仓股的市值权重变化、日交易量、日换手率的数据进行可视化展示和分析。

3、收益分析

相对基准收益进行收益分解,将组合的收益分解到配置(自上而下)和选股(自下 ers 上)的维度,需要组合与基准的收益及权重数据。例如,基于策略的收益情况,通过对可视化的累积收益,包括普通和对数轴两种模式下的年化收益统计、月度收益、以及月度收益分布的展示加以具体分析。

4、风险指标分析

根据评估期内策略的滚动 beta、sharpe 等指标以及几处最大回撤区间,进行风险分析。例如,展示策略组合的历史 beta 表现,sharpe 表现,定位前 5 大回撤区间。

5、Brinson 分析

使用 Brinson 的模型分解超额收益,可将其量化为主动配置、标的选择和交互效应三部分,从而评估策略相对基准在主动配置和个股选择方面的优劣。

6、多因子分析

通过多因子模型,将组合业绩归因到因子上,例如估值因子、成长因子等。这种模型需要具体的组合权重,个股因子暴露等数据,从而确定组合的因子暴露。例如,使用类似 fama-french 的模型以及因子构建手段,分析策略收益对策略各个因子的 beta。


本文整理科技在量化科技中的应用, 涵盖了量化交易投前、投中和投后全过程的技术细节。后期将更新以下章节:

量化科技概述,对量化科技的内涵、外延、发展历程、 发展驱动因素和全面注册制实施对量化交易的推动进行简单介绍。

国内外量化科技发展现状, 分别从国际和国内两个视角阐述与量化交易和量化科技机构有关的监管政策、典型量化科技公司概况以 及量化科技发展特征。

详细介绍国内的量化科技生态,对量化科技涉及的服务机构、交易所、金 融机构和学术界逐个展幵分析,重点突出其技术、数据和产品等维度的信息,并探讨了量化人才培养问 题。

总结量化科技发展的痛点及挑战;第七章在第六章的基础上提出了量化科技相关的发展建议。

欢迎持续关注,敬请期待。

  • 特别声明:本文由互联网用户自行发布,仅供参考,不作为投资建议。股市有风险,炒股需谨慎!
  • 本文链接:https://www.gpboke.com/27782.html