开拓者期货期权程序化系统交易论坛

标题: abcdefghijklmn [打印本页]

作者: evilroach    时间: 2015-6-27 05:31:59     标题: abcdefghijklmn

本帖最后由 evilroach 于 2020-3-3 00:38 编辑

abcdefghijklmnabcdefghijklmnabcdefghijklmnabcdefghijklmn
作者: evilroach    时间: 2015-6-27 06:05:23

本帖最后由 evilroach 于 2015-6-27 22:09 编辑

补充一句:为保证计算机本身资源不足对TB运行的影响,我采取了如下措施:
1。托管实盘交易机到深圳电信骨干网;
2。硬件高配;
3。关闭托管机上除TB以外,其它一切无关的应用、系统服务、防毒软件、、、把无关系统资源占用降到最低;
4。Tick图初始数据范围设置为100个Tick,减少内存占用;
5。尽量避免使用序列变量(NumericSerise),因为我相信那会使TB的内存占用成倍增加。

最后,TB和DataCenter各自占用的内存都在100M以下,而我的物理内存有8G,另外是4核的CPU,只跑一个策略。
我看到DataCenter显示的行情服务器延迟是8毫秒。
可是我还是遭遇了策略执行的卡顿,也即,多次出现连续十个Tick没有进行“实时执行”。
真不知道当时TB在干什么?
作者: a894554096    时间: 2015-7-10 08:27:35

顶顶顶  
作者: a894554096    时间: 2015-7-10 08:52:00

不想再说啥了  这尼玛 就是糊弄人的  能做高频交易
开国际玩笑        限制十秒钟发一次单 每到每分钟最后几秒和每分钟刚开始 就会出现重复   用的是月线 不存在每根k交替的问题吧
有问题时 就会没人回复           
作者: a894554096    时间: 2015-7-10 08:53:56

此问题不解决 TB 可以退出市场了
作者: a894554096    时间: 2015-7-10 08:54:45


作者: a894554096    时间: 2015-7-10 08:55:25


作者: a894554096    时间: 2015-7-10 08:55:55


作者: a894554096    时间: 2015-7-10 08:56:54


作者: a894554096    时间: 2015-7-10 08:57:19


作者: a894554096    时间: 2015-7-10 08:57:39


作者: a894554096    时间: 2015-7-10 08:58:58


作者: a894554096    时间: 2015-7-10 08:59:54


If((Q_LastTime-A_OrderTime)>0.000008 and  A_OrderTime<>invalidNumeric)
{setglobalvar(0,0);
}                               
iF(A_TotalPosition<>invalidNumeric AND A_BuyPosition==0 AND A_SellPosition==0 and getglobalvar(0)<>1 )  //多头条件
{ a_sendorder(enum_buy,enum_entry,1,Q_AskPrice+pjc);                   //多头开仓  
        setglobalvar(0,1);        
}
}

这是测试的源码
作者: a894554096    时间: 2015-7-10 09:04:00

气氛
作者: 小米    时间: 2015-7-10 09:12:46

a894554096 发表于 2015-7-10 08:59
If((Q_LastTime-A_OrderTime)>0.000008 and  A_OrderTimeinvalidNumeric)
{setglobalvar(0,0);
}                               

时间的秒数到分钟数是60进制,你这样判断大于0.000008就给全局变量清零,是导致每一分钟的一开始就发单的原因。

作者: a894554096    时间: 2015-7-10 18:14:05

小米 发表于 2015-7-10 09:12
时间的秒数到分钟数是60进制,你这样判断大于0.000008就给全局变量清零,是导致每一分钟的一开始就发单的 ...

怎么能把时间转换成十进制 或者能做对比
作者: a894554096    时间: 2015-7-10 22:15:13

问题解决了
作者: novasea    时间: 2015-8-8 15:00:26

楼主说的,每个tick实时执行有时会重复,修订执行有时会漏掉。可否考虑用个全局变量,记下被执行过的tick的时间戳?在程序开头判断一下,如果新来的tick时间戳一样,直接跳过不执行,是不是就做到了每个tick会被且仅执行一次?本人刚学tb,只是提个想法,不知是否可行。见笑
作者: luyuan126    时间: 2017-3-23 11:56:32

丢包
作者: luyuan126    时间: 2017-3-23 11:57:45

高频吓人哦
作者: htqh71091105    时间: 2019-5-23 09:51:38

本帖最后由 htqh71091105 于 2019-5-28 15:36 编辑

排查问题,记录下帖子。
作者: 小米    时间: 2019-5-23 11:43:07

htqh71091105 发表于 2019-5-23 09:51
十年磨一剑的结果

您的问题是什么呢?
这是一个老贴子,且问题也解决了。
所以,您现在想表达什么?想解决什么问题。




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2