欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]Tick周期的高频交易使用not(tisremain(0))能否解决重复发单问题?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有9482人关注过本帖树形打印复制链接

主题:[求助]Tick周期的高频交易使用not(tisremain(0))能否解决重复发单问题?

帅哥哟,离线,有人找我吗?
z7c9
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
[求助]Tick周期的高频交易使用not(tisremain(0))能否解决重复发单问题?  发帖心情 Post By:2010/9/8 10:10:10    Post IP:114.241.168.49[只看该作者]

在做一个Tick周期的高频交易系统,采用高频扫描方式,此时无法使用holding或tholding状态来判断是否已经发单,
后来使用Variable变量做发单控制,发现一些问题,现在想改用not(tisremain(0))来做状态判断,不知是否能解决重复发单问题?
具体格式如下:

if not(tisremain(0)) and tholding=0 then begin
end;

if not(tisremain(0)) and tholding>0 then begin
end;

if not(tisremain(0)) and tholding<0 then begin
end;

 

 

另外还有一个问题,在同一个tick上sellvol和buyvol均大于0的现象,和函数描述不符,请问怎么理解?

取得主动性卖单量。
用法:
SELLVOL()
当本笔成交为主动性卖盘时,其数值等于成交量,否则为0
(本函数仅个股在分笔成交分析周期有效)
所属函数组:行情函数

[此贴子已经被作者于2010-9-8 10:15:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
admin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/9/8 10:19:15    Post IP:58.246.57.26[只看该作者]

你可以把部分公式贴过来我们帮你看看,不过从使用经验角度来说,后台自动交易不能tisremain来控制重复发单,一般可以使用TTYPE来控制


 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/8 10:26:41    Post IP:114.241.168.49[只看该作者]

以下是引用admin在2010-9-8 10:19:15的发言:

你可以把部分公式贴过来我们帮你看看,不过从使用经验角度来说,后台自动交易不能tisremain来控制重复发单,一般可以使用TTYPE来控制

代码结构如下:

 

if tholding=0 then begin
 tbuy(enterlongcond,1,lmt,bidprice);
 tbuyshort(entershortcond,1,lmt,askprice);
end;

if tholding>0 then begin
 tsell(exitlongcond,tholding,lmt,askprice);
end;

if tholding<0 then begin
 tsellshort(exitshortcond,tholding,lmt,bidprice);
end;


 回到顶部
帅哥哟,离线,有人找我吗?
admin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/9/8 11:05:34    Post IP:58.246.57.26[只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/8 11:13:59    Post IP:114.241.168.49[只看该作者]

以下是引用admin在2010-9-8 11:05:34的发言:

http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=332

参考问题15

问题15没有解决重复发单的问题呀,在Tick周期上,完全可能下个tick也满足开平仓条件,但是因为tholding还没有与交易所柜台同步,导致开仓条件和tholding同时成立,继续重复开仓。

[此贴子已经被作者于2010-9-8 11:14:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/8 11:17:37    Post IP:114.241.168.49[只看该作者]

原打算用全局变量variable,发现全局变量在tick周期运算有问题,不知在tick周期上采用何种方法能彻底解决重复发单问题?


 回到顶部
帅哥哟,离线,有人找我吗?
admin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/9/8 11:21:06    Post IP:58.246.57.26[只看该作者]

variable只是在执行一次刷新的同时是全局变量,下次刷新会被重新初始化。你需要可以记忆的全局变量,请参考EXTGBDATA(S)函数,论坛已经多次讨论

此外重复发单的问题,可以用TTYPE解决,为什么你不去用

[此贴子已经被作者于2010-9-8 11:22:03编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
z7c9
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:1882 积分:3310 威望:0 精华:15 注册:2010/3/15 13:11:56
  发帖心情 Post By:2010/9/8 11:43:04    Post IP:114.241.168.49[只看该作者]

以下是引用admin在2010-9-8 11:21:06的发言:

variable只是在执行一次刷新的同时是全局变量,下次刷新会被重新初始化。你需要可以记忆的全局变量,请参考EXTGBDATA(S)函数,论坛已经多次讨论

此外重复发单的问题,可以用TTYPE解决,为什么你不去用

[此贴子已经被作者于2010-9-8 11:22:03编辑过]
一次刷新是什么意思?

 回到顶部
帅哥哟,离线,有人找我吗?
msedu
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:232 积分:1256 威望:0 精华:0 注册:2010/4/24 21:58:28
  发帖心情 Post By:2010/9/8 12:05:40    Post IP:116.25.226.132[只看该作者]

用:Tisremain()函数,和TTYPE()函数的一些差别,我的经验是:(不一定是对的,还请Admin确认一下啊!)

 

用,Not(Tisremain(0)) ,也能控制,但是,在后台程式化交易设置中,预警间隔至少设置为“3”秒,才有效,否则,可能还是会出现连续发出同一方向的委托单的情况,这是因为,交易系统还没来得及获得真实的“未成交委托单的状态”的情况下,又发出了新的委托。。。

 

用TTYPE,的话,TTYPE,是完全跟着交易系统的信号走的,只要发出信号,不管有没有成交,都可以不再发出同一个方向的委托,但是,这样也可能造成,把一次交易信号忽略掉的可能,就是,发出信号,未成交即撤单,可系统也不会再次发出同一方向的委托单了,所以,在“程式化交易”的设置里,要合理的设置“未成交单撤单的时间间隔”、“追单的时间间隔和追单的变动价位范围”,也就是说,你要确保,发出去这一单,一定要能成交才行。。。。

 

另外,我发觉,如果使用“金字塔VBA”来开发交易系统的话,可以精确的控制,每一次的发单,可以根据“同一个K线上的每个TICK”的变化进行精确的开平仓操作,比如说:你在PEL上,可能你要以上一根K线和最后一根K线比较,来决定开平仓动作,可是在“金字塔VBA”中,你可以那最后一个TICK上上一个TICK进行比较来决定开平仓,所以,大家可以试试看,然后,我们一起交流下经验啊。。。

 

也不知道,我说的对不对,还在学习和观察之中,大家一起交流提高啊。。。

 

QQ群:121087743


 回到顶部