o********n 发帖数: 100 | 1 大家好
我们现在在开发自动交易的程序,有两个数据源,一个是较慢的高频数据,一个月更新
一次,优点是有长时间完整的数据,缺点是无法得到即时数据。
另一个是从bloomberg得到的即时数据,优点是即时性,缺点是可以查询的历史数据有
限。
因此我们希望整合一下两者,并且封装在自动交易程序里面,实现根据最近一百天左右
的高频数据,制定下一天的交易策略。由于涉及大量矩阵运算,我们目前使用的平台是
matlab(见笑了),以后会过渡到java或者.net
我们目前的想法是写一个专门的数据处理的类,根据情况将最近的数据放在内存中,再
往前的数据写入磁盘里。 由于我们非CS背景出身,所以对于写的系统的高效性没有把
握,也不知道是否这样实现恰当。
请问大家这种自动交易程序的一般结构是什么?是否有可以参考的资料?需要考虑哪些
方面的技术细节? 另外我们了解到一些高频交易公司使用APAMA等事件处理平台,请问
对于在分钟尺度上的交易模型,是否有必要使用此平台? 我们目前模型back-testing在minute by
minute 频率上, 可能实盘后会逐渐调整到更高频率上进行交易
谢谢! |
s****n 发帖数: 24 | 2 目前我们也是在用matlab进行自动交易系统的研究。在数据处理部分,我们采用的是
Event机制来存储tick数据,然后定时(目前设置的是10sec)将最新的数据写到磁盘中。
分享一下我们的做法,也想看看大家是怎么处理这个问题的。谢谢。 |
a****n 发帖数: 1887 | 3 数据量大的话用in mem database, 少的话用mem mapping file |
h*******e 发帖数: 72 | 4 交易和back testing应该是两个系统吧。如果交易就是实时的market data,不存在保
存大量的数据,顶多也是写一些log。如果是back testing,那就必须是一天天的从硬
盘中读取。
你不会想是用“较慢的高频数据”做back testing,然后用bloomberg做rt交易吧?如
果这样, 你的back testing是不可信的。 |
mw 发帖数: 525 | 5 有钱的话kdb
没钱的话hdf5
hiahia
【在 o********n 的大作中提到】 : 大家好 : 我们现在在开发自动交易的程序,有两个数据源,一个是较慢的高频数据,一个月更新 : 一次,优点是有长时间完整的数据,缺点是无法得到即时数据。 : 另一个是从bloomberg得到的即时数据,优点是即时性,缺点是可以查询的历史数据有 : 限。 : 因此我们希望整合一下两者,并且封装在自动交易程序里面,实现根据最近一百天左右 : 的高频数据,制定下一天的交易策略。由于涉及大量矩阵运算,我们目前使用的平台是 : matlab(见笑了),以后会过渡到java或者.net : 我们目前的想法是写一个专门的数据处理的类,根据情况将最近的数据放在内存中,再 : 往前的数据写入磁盘里。 由于我们非CS背景出身,所以对于写的系统的高效性没有把
|
s***1 发帖数: 8 | 6 到底多大的数据量啊?能用matlab处理还不慢,应该数据量不大。
【在 o********n 的大作中提到】 : 大家好 : 我们现在在开发自动交易的程序,有两个数据源,一个是较慢的高频数据,一个月更新 : 一次,优点是有长时间完整的数据,缺点是无法得到即时数据。 : 另一个是从bloomberg得到的即时数据,优点是即时性,缺点是可以查询的历史数据有 : 限。 : 因此我们希望整合一下两者,并且封装在自动交易程序里面,实现根据最近一百天左右 : 的高频数据,制定下一天的交易策略。由于涉及大量矩阵运算,我们目前使用的平台是 : matlab(见笑了),以后会过渡到java或者.net : 我们目前的想法是写一个专门的数据处理的类,根据情况将最近的数据放在内存中,再 : 往前的数据写入磁盘里。 由于我们非CS背景出身,所以对于写的系统的高效性没有把
|
o********n 发帖数: 100 | 7 请问是用event processing 框架吗?
我们知道memory mapping会比较快,所以考虑接上python使用memory mapping file (
不清楚matlab是否提供memory map file操做)
中。
【在 s****n 的大作中提到】 : 目前我们也是在用matlab进行自动交易系统的研究。在数据处理部分,我们采用的是 : Event机制来存储tick数据,然后定时(目前设置的是10sec)将最新的数据写到磁盘中。 : 分享一下我们的做法,也想看看大家是怎么处理这个问题的。谢谢。
|
o********n 发帖数: 100 | 8 较慢是说比如最多截至到上个月的高频数据。
因为实时交易系统也需要大量数据估计相关性哪
【在 h*******e 的大作中提到】 : 交易和back testing应该是两个系统吧。如果交易就是实时的market data,不存在保 : 存大量的数据,顶多也是写一些log。如果是back testing,那就必须是一天天的从硬 : 盘中读取。 : 你不会想是用“较慢的高频数据”做back testing,然后用bloomberg做rt交易吧?如 : 果这样, 你的back testing是不可信的。
|
o********n 发帖数: 100 | 9 请问是直接在matlab 里面用memory mapping吗?
另外问一下关于“少的话用mem mapping file”,mem mapping file会有瓶颈吗,其实
我们早前的TAQ data, 用memory mapping 直接读, 速度方面还是很快的
【在 a****n 的大作中提到】 : 数据量大的话用in mem database, 少的话用mem mapping file
|
s****n 发帖数: 24 | 10 是的,tick data变动的时候回调来处理。刚刚查了一下matlab的帮助文件,是支持使
用memory mapping file的。这个应该会比我们目前使用的模式更加高效。
【在 o********n 的大作中提到】 : 请问是用event processing 框架吗? : 我们知道memory mapping会比较快,所以考虑接上python使用memory mapping file ( : 不清楚matlab是否提供memory map file操做) : : 中。
|
a****n 发帖数: 1887 | 11 mem mapping file 没有index, 数据量大了, retrieve速度还是比in mem database
慢, 当然你自己实现index另说
没用过matlab, 我们用c/c++
【在 o********n 的大作中提到】 : 请问是直接在matlab 里面用memory mapping吗? : 另外问一下关于“少的话用mem mapping file”,mem mapping file会有瓶颈吗,其实 : 我们早前的TAQ data, 用memory mapping 直接读, 速度方面还是很快的
|