开拓者期货期权程序化系统交易论坛
标题:
关于TIME的问题!
[打印本页]
作者:
xiaocai550
时间:
2010-7-22 14:15:43
标题:
关于TIME的问题!
很多朋友在用TIME这个函数的时候发现了很多局限性,比如最常见的就是:
在15分钟图表里,是没办法用TIME==0.1455,这样来实现收盘前平仓的,因为15分钟的当前BAR只有TIME==0.1445,函数才可以判断出来;
那么,我发现一个问题,既然TIME 不能用,为什么大家不用CURRENTTIME这个函数呢?
按照这个函数的解释,
CurrentTime
说明 获取交易开拓者平台(操作系统)的当前时间。
语法 Numeric CurrentTime()
参数 无
备注 获取交易开拓者平台(操作系统)的当前时间。格式为0.HHMMSS的浮点数。
示例 如果当前时间为11:34:21,CurrentTime返回值为0.113421。
---------
那么,如果你的操作系统的时间和交易所的时间是一致的话,那么用CURRENTTIME的问题应该不大吧,这个要请开拓者的老大们来确认一下!
还有,我实际测试CURRENTTIME这个函数功能的时候发现了些问题,希望大大们帮忙解决一下:
eg:
if (CurrentTime==0.1405)
{Buy;}
这种写法在图表上是没有信号出现的,也就是说实际发出了开仓指令,但是图表上没有信号,而且估计这时候MarketPosition是为0的,这个到底是什么原因要请教下!
再来,为什么我会说这样写的话MarketPosition会为0 ,
因为如果你接下来用
if (CurrentTime==0.1409)
{sell;}
来平仓的话,是无法实现的!
但是如果把BUY,SELL换成A_函数的话,则不会出现上述问题,这个需要管理员大哥来解答一下!
作者:
欲速不达
时间:
2010-7-22 22:23:12
开拓者定义Time为当前Bar的时间,而CurrentTime只是系统提取了开拓者的时间,并无法确定在哪个bar上,因为系统没有这样的定义,所以Time开平仓可以在bar上显示,而CurrentTime不能
作者:
speed_fj
时间:
2010-7-22 23:19:57
请问CurrentTime是取服务器时间还是电脑终端时间?还有就是TIME()取的是服务器时间吗?
作者:
lh948
时间:
2010-7-23 08:53:26
CurrentTime是计算机系统的时间
[attach]3694[/attach]
Time是每个bar上的时间
[attach]3695[/attach]
作者:
欲速不达
时间:
2010-7-23 12:14:44
标题:
回复 3# speed_fj 的帖子
TIME()为你自己电脑时间,CurrentTime是取服务器时间,电脑登录后本机时间与服务器也时间同步了,但运行一段时间后也有上秒的差异
作者:
文静的狮子
时间:
2010-7-24 18:30:21
如果我想限定在收盘前开平仓,如下方法没问题吧:(没办法测试,实盘太慢,等不及了,嘿嘿):
if(con1 && (tradtime1==CurrentTime>0.145600 && currenttime<0.150000)
{
``````
}
作者:
lh948
时间:
2010-7-26 09:24:29
如果你是使用buysell指令的话,这么用currenttime会信号消失的,建议使用time。
作者:
文静的狮子
时间:
2010-7-26 13:13:06
我的意图是在日线或小时线上实现收盘前三分钟开仓,貌似用time没有办法实现
这样的话,是不是只能用A_SendOrder?
另问:buy和a_sendorder混用没问题吧?
比如我开仓使用a_sendorder,这样可以精确限定只在收盘前开仓,平仓使用buy和sell,以及SetPercentTrailing,一旦达到某价位随时平仓,可以吗?
[
本帖最后由 文静的狮子 于 2010-7-26 14:27 编辑
]
作者:
lh948
时间:
2010-7-26 14:41:04
非要在日线上做日内,就用A_SendOrder和currenttime来实现
混用会有不可预知的问题,建议不要混用!
作者:
文静的狮子
时间:
2010-7-26 21:40:06
明白了,多谢!
那么a_sendorder和SetPercentTrailing等8个平仓函数同时使用没有问题吧?我做的是60分钟和日线的波段
作者:
Futures
时间:
2011-2-23 16:48:52
我的意图是在日线或小时线上实现收盘前三分钟开仓,貌似用time没有办法实现
这样的话,是不是只能用A_SendO ...
文静的狮子 发表于 2010-7-26 13:13
我觉得可以用if(time>0.1457 Or currenttime>0.1457)来实现,如果用buy,历史信号还会显示
作者:
bluefire999
时间:
2011-3-9 14:34:51
我觉得可以用if(time>0.1457 Or currenttime>0.1457)来实现,如果用buy,历史信号还会显示
==>可以显示,历史没问题,但开仓的具体位置实盘就出偏差了!用buy类
作者:
蔡宛宏
时间:
2011-12-20 10:22:34
希望TB能解决一下时间刻度的问题 这个很麻烦 很多模型放到多周期上都要改代码 太麻烦了
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2