Python社区  »  Python

Python 进阶视频课 - 8. 高频数据采样

王的机器 • 1 月前 • 39 次点击  

这是 Python 进阶课的第八节 - 高频数据采样,进阶课的目录如下:


  1. NumPy 上

  2. NumPy 下

  3. Pandas 上

  4. Pandas 下

  5. SciPy 上

  6. SciPy 下

  7. 时间序列


之前基础版的 11 节的目录如下:


  1. 编程概览

  2. 元素型数据

  3. 容器型数据

  4. 流程控制:条件-循环-异常处理

  5. 函数上:低阶函数

  6. 函数下:高阶函数

  7. 类和对象:封装-继承-多态-组合

  8. 字符串专场:格式化和正则化

  9. 解析表达式:简约也简单

  10. 生成器和迭代器:简约不简单

  11. 装饰器:高端不简单



在做量化时,经常会用到下面格式的金融数据。



这条数据 (后文称作 bar) 包含 6 个属性:


  • 日期时间 (date_time) 是 2013 年 9 月 1 日 19 时 32 分 23 秒 387 毫秒

  • 起始价 (open) 是 1640.25

  • 最高价 (high) 是 1642.00

  • 最低价 (close) 是 1639.00

  • 结束价 (high) 是 1642.00

  • 成交量 (volume) 为 28031


注意我并有把 open 和 close 翻译成开盘价和收盘价,因为这条数据并不是按日来收集的,而它对应的时间精确到 387 毫秒。


另外为什么在一个时点上有四种不同的价格,即市场常见的 OHLC (每个字母代表 open, high, low, close 四个单词的首个字母)。原因是 OHLC 数据是在一段时间内 (上面 09/01/2013 19:32:23.387 是这段时间的终点) 收集很多 tick 数据的价格而决定的它们的 open, high, low, close,这段时间可以是


  • 一天

  • 一小时

  • 一分钟

  • 一秒

  • 包含 1000 笔交易的那段时间

  • 包含成交 100 个合约的那段时间

  • 包含成交 10000 美元的那段时间


收集 tick 数据而生成某些统计量的操作叫抽样 (sample),这些统计量可以是这些 tick 数据的


  • 起始值、最大值、最小值、终止值 (OHLC)

  • 简单平均值 (下面要介绍的 TWAP)

  • 成交量加权平均值 (下面要介绍的 VWAP)


上完本节后,你就会从大量「tick 级别」的高频数据,选出有代表性「bar 类型」的样本。你会彻底理解 tick 级别的高频数据和各种预处理技巧,以及从 tick 数据采样到 bar 数据的四种方法:等时采样、等笔采样、等量采样和等额采样。本贴即从零开始介绍如何实现上述四种采样方法,也介绍硬核量化交易工具包 mlfinlab 的实现方法。用到的数据包括:

  • 比特币/美元永续掉期 tick 数据

  • 标普 500 价值股 ETF tick 数据



付费用户(付 1 赠 1)可以获得:


  • 观看课程视频 (93 分钟)

  • Python 代码 (Jupyter Notebook)





Jupyter Notebook

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/106221
 
39 次点击  
分享到微博