小弟利用VB6写交易下单的程式
遇到一个有关于即时性的问题
需求是在一个特定的时间,同时执行多笔下单的动作
例如在 10:00:00时要送出3笔委托单
任一笔都不可以延迟至10:00:01才委托
之前的作法是用timer定时执行(每250ms)
x1=order(参数1)
x2=order(参数2)
x3=order(参数3)
但实际上遇到的问题是
x1=order(参数1) 下单后接受到委托回报,才会去下x2=order(参数1)
有时塞单时,x3就有可能会在10:00:01才送出
为解决此,现行改用
一次开三个一样的程式,触发时间都设为10:00:00
且三个程式为求同步都有彼此校时
触发时,每个程式都只下1笔 x=order(参数)
所以在10:00:00时,几乎同时送出3笔委托(时间差异不到50ms)
算是达到我要的目的
但又衍生出另一个问题
券商有限制登入帐号的次数,比如该次数为2
就无法一次开3个程式了(每个程式都要登入帐号,占用一个user)
想请教是否有其他方法可达成我的需求?
若我写在同一个程式,用3个timer,每个timer各管一个下单
是否ok呢?,还是要用多执行绪完成?
一点问题请教大家,感恩!