查看: 974|回复: 0

高频交易系统开发的模型阶段-1

[复制链接]

11

主题

11

帖子

37

积分

新手上路

Rank: 1

积分
37
发表于 2014-4-23 13:18:04 | 显示全部楼层 |阅读模式
高频交易系统的开发大致可以分为三个阶段:研究阶段、模型阶段和实现阶段。每一个阶段都有自己的内部过程和子系统。在建立模型之前,抽象化的交易想法可能会在数学上存在些逻辑错误和缺陷。模型阶段就是要验证你的交易想法,找出逻辑错误,评估备选方案,帮助他人理解交易想法背后的数学机制。模型阶段解决开发过程前期的不确定性,考察数学模型的可行性以及在不同市场环境下盈利是否稳健。同样,你还可以预估一下实施阶段的工作量。模型阶段从数据准备和分类开始,经过模型编程,到最后测试和优化。  模型阶段遵照设计文档中的交易思路、数学计算和数据要求等。这一阶段强迫研发团队对数学模型清晰定义,并解决相关问题(比如数据处理),另外,这一阶段还要定义未来软件实施的各种要求。
  收集数据
  清理过的历史数据是进行成功历史回测和优化的基础。回测本身也许会因为数据上已知和未知的错误而产生问题。获得高质量的历史数据并不只是花钱买下来然后装进系统那么简单。对于交易商来说,一旦他们决定交易哪种资产,第一步就是考察其数据是否可以被获得。他们要决定需要什么类型的数据,从哪里获得,如何做数据清理才能让数据适应系统。
  历史数据主要有三种来源:
  1.从数据提供商购买数据。购买数据时,要确定数据的类型(1分钟级别的还是Tick级别的等);还要考虑数据提供商的专业经验以及过往客户的口碑;最后,无论提供商说什么,必须自己判断数据的质量,如果自己的系统上已经有些已知的高质量数据,不妨测试一下,看买来的数据结果如何。
  2.从网上下载免费的数据。这一方法并不推荐,因为你无法控制数据的质量。不可靠的数据可能导致模型计算错误,引发亏损的交易。所以相对来说,使用费用昂贵的数据反而比较划算。但即使是高质量的数据也会有问题,决不能跳过数据清理这个环节。
  3.用程序记录市场行情,并将其清理和转化成想要的格式。经纪商通常会提供应用程序接口(API)来产生实时交易行情。一些商业程序化交易平台有行情写库功能,并能回放储存的数据来测试系统。这一方法要求金融工程师具有熟练的编程技巧和数据库管理能力。
  数据类型
  数据类型包括:
  1.价格数据通常由买入价、卖出价、成交量等数据构成。对于高频交易系统来说,tick数据可能是平滑数据(好几笔连续交易都是同一个成交价)。有些金融衍生品并没有历史成交价,相反,他们使用的是估值价格。
  2.经济数据一般是短期市场走势的重要因素之一,特别是在汇率市场。高频交易系统对短期的市场走势敏感,所以经济数据对于系统来说比较重要。对于外汇交易来说,最重要的经济数据为非农就业指数、利率、零售业销售额、CPI、贸易顺逆差和制造业PMI等。
  3.日历数据包括公布重要经济数据的日期和时间。一些高频交易系统纯粹建立在价格数据基础之上,但即使是这些系统也要对日历数据多加小心。
  4.估值数据与价格数据不同。对于场内交易的衍生品来说,并没有历史价格数据。价格只存在于理论模型中,所以是估值数据。
  5.基本面数据是商业上的关键数据。比如收益、销售额、库存、租金等。
  数据清理过程
  建立算法、历史回测和风险管理都要求高质量和处理过的数据。高频的原始数据通常伴随着市场噪音,数据过滤处理就相对比较重要。沉迷于历史回测的金融工程师往往会低估这步骤的重要性。高频交易系统对数据很敏感,所以花些时间来处理数据至关重要。
  价格数据是高频交易中最常用到的数据,一套高频交易系统依赖四个子过程来处理数据:
  1.检查时间戳。有些时间戳的顺序并不正确,需要将它们重新排列。
  2.排除数据坏点。寻找、代替或删除数据坏点。
  3.过滤掉非交易日的数据。
  4.将数据转化为不同的周期级别,如1分钟、15分钟、60分钟等,以便交易系统调用。
  数据分离
  如果采用全部数据集来开发交易模型的话,可能会出现过度拟合的问题。为了解决这一问题,我们引入数据分离过程,将全部历史数据分成开发数据、验证数据和测试数据。
  1.开发数据(又称样本内数据)一般包含数据最多,直接用来开发模型。数据量取决于系统的周期。一般的原则是,这段数据要产生30至50个交易样本,并且涵盖了市场行情向上、向下和振荡这几种情况。一旦确定了参数和交易策略之后,就基于开发数据来优化。
  2.验证数据是用来评估和比较不同模型绩效的。如果在开发数据上表现良好的模型到了验证数据突然失败了,说明有过度拟合的问题,需要用验证数据来改进模型。
  3.测试数据(又称样本外数据)用来再次验证模型,并保证所有细节都正常。模型在这些数据上不再做任何改动。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表