Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:金字塔封装的下单接口的时间消耗问题。

1楼
虎鱼 发表于:2014/1/24 21:48:45
请问金字塔的研发人员,有没有测试过ORDER对象在调用封装的CTP类API时,所消耗的时间?
比如,下列这段代码
ATIME=timer '调用ORDER前的时间点
callorderid= Order.Buy(1,1,0,0,"ru05","sq","930137",0)     '调用ORDER
BTIME=ORDER.BUY从本机发送下单指令完成时所记录的时间点。

TIMEUSE=BTIME-ATIME.

我想知道的就是TIMEUSE为多少MS?

2楼
admin 发表于:2014/1/24 22:07:59

消耗的时间是可以忽略不计的,也就是那么几纳秒而已

[此贴子已经被作者于2014/1/24 22:08:14编辑过]
3楼
虎鱼 发表于:2014/1/24 22:14:56
我自己粗略的写了下面的代码来估算,考虑到CALL过程是异步执行,所以时间的消耗肯定不是很精确,实际消耗的时间应该要比计算的还要多。
Sub frmMain_CommandButton1_Click()
frmmain_lbltxt.caption=""
befsend=timer
callorderid= Order.Buy(1,1,0,0,"ru05","sq","XXXXX",0)     '市价开多单
if callorderid<>0 then afterorder=timer

atmp=afterorder-befsend
fundelay=(atmp-int(atmp))*1000
frmmain_lbltxt.caption="调用ORDER.BUY语句消耗:" &fundelay &"MS"

End Sub

测试的时候是实盘,XXXXX用的是实际登陆的账户。
80%时间是0MS,20%的时间是7MS。0MS估计是因为callorderid= Order.Buy(1,1,0,0,"ru05","sq","XXXXX",0) 是异步执行,所以无法真实计算。

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20140124220741.jpg
图片点击可在新窗口打开查看

但是20%所测出的时间消耗达到7MS,这是不是有点恐怖了?
[此贴子已经被作者于2014/1/24 22:15:34编辑过]
4楼
虎鱼 发表于:2014/1/24 22:18:34
还是我写的代码有误?
5楼
王锋 发表于:2014/1/26 10:51:22

你这么测试是没有任何意义的,你测试是调用函数返回的时间,我没有仔细测试你的代码不知道你写的对不对,但是方法你就有问题.金字塔的报单发送是异步的,你测试代码的执行行的返回时间,本身就有问题的

共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 2 queries.