以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请问如何求上次开仓以来的交易时间分钟数?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=180802)

--  作者:longkun
--  发布时间:2020/6/24 17:10:16
--  请问如何求上次开仓以来的交易时间分钟数?
如题
--  作者:gxx978
--  发布时间:2020/6/24 17:27:07
--  

可以将时间换算成秒,再除以60,计算出分钟数,如下,例子中用的是开仓位置的K线时间来作为开仓时间了,如果需要更精确的时间,那可能需要全局变量来标记开仓时具体的时间了。

A:REF(TIME,ENTERBARS+1);
B:(TIMETOT0(DYNAINFO(207))-TIMETOT0(A))/60;

[此贴子已经被作者于2020/6/24 17:27:20编辑过]

--  作者:longkun
--  发布时间:2020/6/28 19:09:57
--  
周末测试,好像对外盘无效
--  作者:FireScript
--  发布时间:2020/6/29 9:15:05
--  
 这个只能在最新K返回最近一次开仓信号的分钟数。历史的建议用  开仓历时*周期对应分钟数



buy(TODAYBAR=11,1,market);
A:REF(TIME,ENTERBARS+1);
B1:=(TIMETOT0(DYNAINFO(207))-TIMETOT0(A))/60;
B2:=(ENTERBARS+1);

//先获得周期对应的秒数
z1:=VALUEWHEN(TODAYBAR=1,time);
z2:=VALUEWHEN(TODAYBAR=2,time);
df:TIMETOT0(z2)-TIMETOT0(z1);//计算周期对应的秒数


B:IF(ISLASTBAR,B1,B2*DF/60);//区分最新K和历史K的计算结果。历史K按照信号所跨周期数目等效的分钟数来计算。