用 R 进行高频金融数据分析简介
作者:李洪成
摘自: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)

- 股票买卖报价的动态性
- 市场的流动性
- 算法交易
- 收益的实际波动率
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");
- 函数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

用 R 进行高频金融数据分析简介的更多相关文章
- 【数量技术宅|金融数据分析系列分享】为什么中证500(IC)是最适合长期做多的指数
更多精彩内容,欢迎关注公众号:数量技术宅.探讨数据分析.量化投资问题,请加技术宅微信:sljsz01 投资股票指数相比个股的优势 我们在投资股票的时候,如果持仓集中在一只或者有限几只股票上,恰好不幸遇 ...
- Python 金融数据分析库及相关框架
BackTest框架库: PyAlgoTrade ZipLine 金融数据分析库: pandas
- R语言实现金融数据的时间序列分析及建模
R语言实现金融数据的时间序列分析及建模 一 移动平均 移动平均能消除数据中的季节变动和不规则变动.若序列中存在周期变动,则通常以周期为移动平均项数.移动平均法可以通过数据显示出数据长期趋势的变动 ...
- R语言数据处理利器——dplyr简介
dplyr是由Hadley Wickham主持开发和维护的一个主要针对数据框快速计算.整合的函数包,同时提供一些常用函数的高速写法以及几个开源数据库的连接.此包是plyr包的深化功能包,其名字中的字母 ...
- Python数据分析简介
1,Python作为一门编程语言开发效率快,运行效率被人诟病,但是Python核心部分使用c/c++等更高效的语言来编写的还有强大的numpy, padnas, matplotlib,scipy库等应 ...
- R vs Python,数据分析中谁与争锋?
R和Python两者谁更适合数据分析领域?在某些特定情况下谁会更有优势?还是一个天生在各方面都比另一个更好? 当我们想要选择一种编程语言进行数据分析时,相信大多数人都会想到R和Python——但是从这 ...
- 初次用R的实际案例数据分析
这是一次教授布置的期末作业,也是书籍<商务数据分析与应用>的一个课后作业 目录 数据描述 数据预处理 描述性统计分析 模型分析(方差分析) 数据描述 非学位职业培训机构的178个学员的数据 ...
- 金融数据分析还能这样做?快试试这个BI工具小白也能学会!
说起银行.保险.股票投资等这些金融行业,大多数人都认为它们都是依靠数据驱动的企业,毕竟大数据的诞生本来就是为了金融信息流通而服务的,但是事实真的是这样吗? 事实并非如此,真正在金融行业做数据分析的人, ...
- R语言统计学习-1简介
一. 统计学习概述 统计学习是指一组用于理解数据和建模的工具集.这些工具可分为有监督或无监督.1.监督学习:用于根据一个或多个输入预测或估计输出.常用于商业.医学.天体物理学和公共政策等领域.2.无监 ...
随机推荐
- linux开机随笔
(1),linux开机流程: 固件是在软件与硬件之间的那部分,他们既不叫做硬件也不叫做软件, 开机自检 ,就是 在你按下开机键时,电脑就会自动检查你的硬盘 内存 cpu等器件, 那个CMOS是固 ...
- CentOS 安装rz和sz命令
虚机装了CentOS7.2最小版本, 结果上去后发现rz命令不能用 yum install lrzsz 安装完成:
- SQL Cumulative Sum累积求和
期望结果: ID VAL CumSum 1 10 10 2 20 30 3 30 60 方法一: 使用分析函数 select id,val,sum(val) over ( or ...
- CSS 图片倾斜的制作
<style> #zhong{ height:600px; width:1350px; position:relative; z-index:2} .znei{ height:60px; ...
- HDMI IP学习笔记
在HDMI的IP核中点击,生成例子.找到./simulaion/mentor文件夹,把modelsim路径转到该路径下,即可仿真.
- ajaxSubmit
$('button').on('click', function() { $('form').on('submit', function() { var title = $('in ...
- 控制input标签中只能输入数字以及小数点后两位
js 代码如下: /* 控制input标签中只能输入数字 和小数点后两位 */ function checkNum(obj) { //检查是否是非数字值 if (isNaN(obj.value)) { ...
- Meta http-equiv属性详解(转)
http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变 ...
- ng-init,ng-controller,ng-model
1.ng-init 用于初始化数据,跟在$scope插入数据一样,但是在配合repeat指令时候比较有用: <div ng-repeat="arrOuter in arr" ...
- NOIp蒟蒻的爆零记——HA-0132
考前: 从十一月开始的听课集训,连考六场:考前的最后两天写(da)着(zhe)各种各样的奇(C)葩(S)模板:一周的疯狂,已经过去: 考前的一晚:第二批高二的六个人聚在一起(还有滑稽大师),愉快的玩( ...