不论是开发高频交易策略还是研究高频交易对于市场微观结构的影响都需要用到逐个指令的数据,而目前所有交易所提供的这类数据中以NASDAQ Total View数据最具代表性,目前最新的数据格式是4.1。有了这些数据之后就需要重新构建限价指令簿(Limit Order Book),为了达成这一目标需要克服三个难点:
1)NASDAQ Total View 4.1数据是二进制文件,而且数据是以message的形式一条一条记录,每个message代表的就是一次提单或撤单或成交。读取这样的数据会是件比较头疼的事。
2)只有提单一类的message才会包含股票的Ticker,也就是告诉你这个单子是关于哪个股票的,同时会给你一个Reference Number,但是撤单和成交这些只对应于Reference Number,不会声明是哪只股票。
3)有了所有的message,并且知道对应的是哪个股票之后就可以开始构建限价指令簿。
目前难点1)、3)已经可以很好的解决,但是2)还较麻烦,会通过几篇博客再介绍,这里先谈第一步。
NASDAQ Total View 4.1数据是以天为单位,每天所有股票的单子都放在同一个二进制文件中,最少也要1GB,多的可以有7、8GB,对于这么大的数据,硬件上最大的制约就是硬盘读写速度。SAS的一大特点就是Data步处理数据时会边从硬盘读数据边处理,处理完就写到硬盘上,读一天的数据少则半个小时很正常。
剩下的就是数据格式,NASDAQ Total View 4.1数据是以message的形式记录,message会分不同种类,例如:提单、撤单、成交、换单。但是每个message的开头都是都是同