以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- [求助]高频程序化的轮询 (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=165781) |
-- 作者:zjw888 -- 发布时间:2018/10/8 15:42:25 -- [求助]高频程序化的轮询 图表程序化,高频模式,使用全局变量A(variable定义,初始化为0) 高频,我的理解是只要品种有新的成交单,程序就会执行一遍,假设这样一种场景,刚开始执行代码,将A改为了1,可能这代码还没执行完,又有新的成交单,又要执行代码,此时读取A会是0还是1?谢谢
|
-- 作者:FireScript -- 发布时间:2018/10/8 15:48:17 -- 1.没执行完的代码肯定要执行完,不可能因为新的分笔来了,就不执行完。 2.如果因为代码量等原因导致来不及计算,在最近一次公式执行完毕之后会只取最新行情进行公式运算。 所以A的值依赖于最新行情计算结果或者是最近一次(本次计算尚未执行到给A赋值的代码)计算的值的结果。
|
-- 作者:zjw888 -- 发布时间:2018/10/8 16:00:02 -- 我意思是第一次已经给A赋值为1了,然后代码还没执行完,再次从头执行代码,读取A值,是1? |
-- 作者:无为剑 -- 发布时间:2018/10/8 16:10:22 -- 不可能存在还未执行完的情况存在 |
-- 作者:banzhuan -- 发布时间:2018/10/8 16:12:42 -- 假设有3个分笔,运行策略时间需要2个分笔的时间: 第一个分笔运行策略未结束,第二个分笔来了,那么第二个分笔就不会参与计算,待第一个分笔运行计算完成后,再去计算第三个分笔的
|
-- 作者:zjw888 -- 发布时间:2018/10/8 16:24:14 -- 也就是第一笔未结束,第二笔直接跳过不处理,等第一笔触发的代码结束了然后第三笔来了再执行,是这个意思吧? |
-- 作者:无为剑 -- 发布时间:2018/10/8 16:27:17 -- 是第2个分笔数据过来后若第一笔未计算完,等待第一笔刷新完,然后再去刷新第二笔。 若第三笔数据过来后第一笔还未计算完才会跳过第2笔,后面依次类推
|
-- 作者:zjw888 -- 发布时间:2018/10/8 16:30:40 -- 好的,谢谢了 |