全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
开盘延迟下单
2024-05-22 17:38

针对开盘立即触发的下单信号,延迟5秒再下单,请问有什么办法实现?其他时间段都是收到信号立即下单。

kyover

这个需求看起来虽然很简单,但是想要实现还是蛮复杂并且麻烦的,tbl语言没有现成的命令,需要自己使用onsignal域接管信号以后,创建一个5s的定时器,在ontimer域里执行对应的报单。

总的来说需要三个事件域,onbar里判断交易信号,onsignal域里接管信号命令的后续执行,创建定时器,ontimer里最后执行报单动作。

由于需要多个事件域交互,复杂度比较高

2024-05-23 09:20
wang7dao

这个的确很复杂,我已实现了,原理这样:

1、用OnSignal接管信号处理

2、把系统时间赋值到信号的时间字段,也就是借用这个字段存储时间  sig[i].dateTime=SystemDateTime();

3、判断时间差:DateTimeDiff(delaySigs[i2].datetime,SystemDateTime) >= 5

4、大于你想要的秒数后:A函数发单

具体可联系我  fang3shen


2024-08-02 13:36
您未登录,请先 登录注册 后发表评论
顶部