Liquidnet开发执行绩效测量工具

挑战

在微观时间尺度上衡量交易绩效

解决方案

使用MATLAB和配套工具箱开发一个自动化系统,将特定的交易数据与市场趋势进行比较,并得出绩效的量化度量

结果

  • 交易评估在几分钟内完成,而不是几小时
  • 分析能力扩展到100%的日常事务
  • 消除了潜在的数据输入错误

“对我来说,MATLAB是快速定量分析的最佳工具。我可以分析大型数据集,将结果可视化,并在验证后将过程自动化。用Java®或类似的语言从头构建一个完整的执行分析系统需要多花几个月的时间。”

雪莱史,Liquidnet
使用Liquidnet执行分析仪绘制一个订单的价格、执行和性能度量。

机构股票交易员的交易通常涉及数万股股票。他们在公开市场上执行的许多交易会推动股票价格上涨或下跌,导致他们为买入的股票支付更多的价格,或从卖出的股票中获得更少的收益。为了减少大型交易对市场的影响,这些投资者转向Liquidnet等另类交易系统,在这些系统中,交易是匿名执行的。

为了确保最佳执行,并为客户提供深入的分析工具,Liquidnet开发了Execution Analyzer,这是一个交易后分析工具,可以在短时间内将订单执行价格与市场趋势进行比较。他们通过使用MATLAB大大缩短了开发时间®

Liquidnet的定量分析师Shelly Shi表示:“我们希望在我们的系统中提供这种分析工具,我们不希望开发花费数月时间。”“MATLAB及其配套工具箱提供了现成的数据库访问和数据分析能力,因此它是开发一个完整的解决方案来评估在Liquidnet上执行的交易的最快方式。”

挑战

订单执行的性能传统上是根据宏观时间尺度中的各种基准来衡量的,包括开盘、收盘和成交量加权平均价格(VWAP)。然而,在快速波动的股票市场上,许多交易员想知道他们的交易,特别是那些在暗池执行的规模较大的交易,表现如何时间尺度。

为了衡量执行业绩,Liquidnet必须分析每一笔交易,将股票的执行价格与交易前后的价格趋势进行比较,然后计算出一个量化的衡量标准。过去,Liquidnet使用的是微软®Excel®执行此分析的电子表格。人工处理是在特定的基础上对单个数据集进行的,通常需要数小时来评估单个订单。

“在我们的老方法中,我们会写一个SQL查询,把结果复制到一个电子表格中,然后手动处理它们,”史说。“即使只检查几笔交易也需要一整天的时间,所以分析每天执行的所有交易是有挑战性的。我们需要将这个过程自动化,但使用电子表格是不可能的。”

解决方案

Liquidnet使用MATLAB和配套工具箱开发了Execution Analyzer,这是一个自动化系统,可以在微时间尺度上测量执行性能。

Shi和她的同事从甲骨文公司引进了Liquidnet的执行数据和市场数据®数据库到MATLAB使用数据库工具箱

利用MATLAB和曲线拟合工具箱他为Liquidnet交易中涉及的每一笔股票建模了历史市场数据。然后,她在MATLAB中开发了算法,以比较执行价格和价格趋势,并得出一个量化的衡量,代表个人执行的表现。这种方法在统计上也有意义,因此可以在以后的统计分析中使用。

她使用了统计学和机器学习工具箱对不同组中的事务执行各种统计分析。分析结果用于进一步改善Liquidnet的性能交易算法

为了帮助用户可视化性能,Execution Analyzer使用MATLAB绘图工具生成图形。

结果

  • 交易评估在几分钟内完成,而不是几小时.“我们基于excel的流程需要数小时来分析一笔交易,”史说。“使用MATLAB,我们可以在几分钟内完成同样的分析,使我们能够实现一个能够分析我们市场中的每一个执行的系统。”

  • 分析能力扩展到100%的日常事务.Shi说:“在构建Execution Analyzer之前,执行分析是如此的劳动密集型,以至于很难涵盖所有执行的交易。”“通过MATLAB,我们建立了一个自动化系统,能够100%分析Liquidnet上每天执行的订单。”

  • 消除了潜在的数据输入错误.“MATLAB系统比我们的人工方法更可靠,因为没有人为的数据输入或任何其他的处理步骤,”施说。“MATLAB直接从我们的数据库中检索交易和市场数据,所以在这个过程中没有人为错误的机会。”