avatar of Wa-emmnn_ Wa-emmnn_
关注 私信
0
关注
24
关注者

策略循环一次用时忽大忽小是怎么回事

创建于: 2023-11-12 15:00:24, 更新于:
comments   9
hits   680

请教各位大佬,策略循环一次用时忽大忽小是怎么回事,有时候一次用时60ms,有时候一次用时10000+ms, 我把内部每个功能分别计时,发现小的时候所有功能用时都小,大的时候所有功能用时都大, 而且有一个功能就是更新图表信息,状态栏信息用时比获取行情信息还要久 =。= 这是云服务器导致的吗,用的亚马逊的t2.micro。(跑的策略很简单)

相关推荐
全部留言
avatar of 提供帮助(点击头像可联系)
提供帮助(点击头像可联系)
图表状态栏理论上只是展示,慢的原因应该是网络IO,将循环内的网络IO部分尽量并发执行
2023-11-15 09:22:28
avatar of 发明者量化-小小梦
发明者量化-小小梦
是实盘吗?还是回测? 状态栏内容刷新是有频率的,刷新率不会很快,所以显示的内容并不是立即显示当前的状态栏内容。实盘时耗时基本上都是有网络IO请求产生的,其它操作耗时基本都可以忽略。
2023-11-14 09:05:11
avatar of 发明者量化-小小梦
发明者量化-小小梦
把for循环减少到10次,再观察下。
2023-11-15 14:22:41
avatar of Wa-emmnn_
Wa-emmnn_
大佬我发现一个地方耗时较大,for循环收尾竟然要220+,这是什么原因? var A = new Date().getTime() var B = 0 var C = 0 for (var i = 0; i < 1000; i++) { //循环内部都是计算 B=new Date().getTime()-A } C=new Date().getTime()-A // 输出结果B=6 , C=220+ 我是这样抓取时间的,不知道有没有问题
2023-11-15 13:54:48
avatar of Wa-emmnn_
Wa-emmnn_
好的,感谢
2023-11-14 22:15:38
avatar of 发明者量化-小小梦
发明者量化-小小梦
按说没有网络IO的不会有多少耗时,一般也就几毫秒。可以给出一个简单的测试代码看下。 换一个简单的测试场景,排除是否是策略设计导致的问题。
2023-11-14 21:02:11
avatar of Wa-emmnn_
Wa-emmnn_
是实盘,我统计了一下轮询用时,总是时大时小。不单单的状态栏,所有功能耗时基本上是同比例放大缩小。
2023-11-14 13:38:55
avatar of 陈皮
陈皮
更新图表信息,状态栏信息可以用多线程
2023-11-13 19:24:01
avatar of Wa-emmnn_
Wa-emmnn_
感谢提供思路QAQ
2023-11-14 13:37:01