-1

在寻找测试纸面交易策略的模板时,我偶然发现了 IBPy。我已经完成了初始设置,可以连接并从服务器接收更新。我想做的是:

a)在发布新价格(出价/要价)时从 1..n 个符号中收集刻度 b)将它们临时存储在一个向量中(我猜是 vector.append((bid,ask)) c)一旦向量到达它的计算最大值(我需要 30 秒或一定数量的滴答声)我将在 vector[] 上计算一些值并决定一个条目是否合适 d)如果不是 pop(0) 并继续收集 e)在止损或追踪利润上退出

我的问题是:

i)我已经读到更新是 250 毫秒,这对我的分析来说很好,但是程序/系统可以跟上,因为不同的符号在不同的时间更新,所以仅仅因为 symbolA 每 250 毫秒更新一次,有 10 个符号更新可能非常频繁 ii ) 当我停下来进行计算时,我没有丢失更新吗?

如果有这方面的骨架代码,最好弄乱它

谢谢收听!

4

1 回答 1

0

如果您需要处理 100 个股票代码,您将拥有多个(至少 2 个)线程。一个线程从套接字中提取传入的数据,按消息类型对消息进行排序并将数据推送到队列中。其他线程正在等待各自的队列获取一些数据并处理传入的数据。这个想法是调度程序线程确保所有传入数据尽可能快地从套接字中提取。

通常,您的 PC 将能够处理 IB 愿意发送给您的任何内容。如果你的处理不需要太多时间——没有锁、调用 sleep()、文件操作——你可以在一个线程中完成所有事情。

于 2016-02-25T07:13:06.110 回答