作者:李洪成
摘自:http://cos.name/wp-content/uploads/2013/11/ChinaR2013SH_Nov03_04_LiHongcheng.pdf
高频数据
- 金融市场中,逐笔交易数据(transaction by transaction data) 或逐秒记录数据 (tick by tick data) 被称为高频数据。纽约股票交易所的交易行情数据库包含了综合磁带系统报告的所有证券的交易和报价记录(Trades and Quotes- NYSE TAQ), 另外WRDS TAQ, Reuters, Bloomberg等。
高频数据的特点
- 数据量大:一只股票一天中可以有几百万条交易
- 交易间的时间间隔是不规则的,不是等间隔
- 保存的数据由于多种原因会包含错误
- 不正确的交易量
- 失时效的价格
- 一秒钟的多重交易
- 不准确的时间 (innaccurate times)
某股票2010年10月4日到10月15日
相邻两个交易的价格变动频率
高频金融数据用于研究与交易过程和市场微观结构相关的大量问题
- 股票买卖报价的动态性
- 市场的流动性
- 算法交易
- 收益的实际波动率
Data Structure of Trade data
- PRICE 交易价格
- SIZE 交易股数
- COND: 交易条件代码
- CORR: 修改标识, 交易为正常即没有经 过校正、修改或者被标记为取消
- G127 Combined "G", Rule 127, and stopped stock trade
Data Structure of Quote data
- BID:卖价
- BIDSIZ:卖出量,以100股为单位
- OFR:买价
- OFRSIZ:买入量
- MODE:报价条件标识
R的高频数据分析包
- R中针对高频数据的添加包:highfrequency
- 该包最新版本为0.2,基于R 2.12.0或者更高 版本,依赖于 xts, zoo两个包。
- RTAQ (Cornelissen and Boudt 2012 ) TradeAnalytics project
- realized (Payseur 2008)
highfrequency是另外两个已有R包的更新版 - 两个都被移除了
Highfrequency主要功能
- 组织高频数据
- 高频数据的清理、整理
- 高频数据的汇总
- 高频数据的相关模型:
- 波动率模型
- 流动性
三类高频数据
- NYSE TAQ数据库中的 .txt文件
- WRDS数据库中的 .csv文件
- Tickdata.com的.asc文件
- 函数convert()可以把上述三类数据转换为xts对象
convert(
from,
to,
datasource,
datadestination,
trades=TRUE,
quotes=FALSE,
ticker=c("AA","AAPL"),
dir=TRUE,
extension="txt",
header=FALSE,
tradecolnames=NULL,
quotecolnames=NULL,
format="%Y%m%d%H:%M:%S");
把数据从硬盘载入 R 中
- 函数TAQLoad把数据载入 R 中
高频数据的处理
等间隔数据、数据同步
- aggregatets(data,on="minutes",k=1)
- refreshTime(list(stock1,stock2))
Realized volatility measures
波动率预测
- HAR-模型 Heterogeneous Autoregressive
- 它实现了三种类型的HAR模型
- HAR-RV:
- HAR-RV-J:
- HAR-RV-CJ:Jump + Continuous Sample path Component Variation
harModel(
data,
periods = c(1, 5, 22),
periodsJ = c(1,5,22),
leverage=NULL,
RVest = c("rCov", "rBPCov"),
type = "HARRV",
jumptest = "ABDJumptest",
alpha = 0.05,
h = 1,
transform = NULL, ...)
HAR-RV: Dow Jones Industrial Average in 2008