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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 如何才能做到一个价位不在 重复下单?

   

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


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

主题:如何才能做到一个价位不在 重复下单?

帅哥哟,离线,有人找我吗?
系统使用者
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:808 积分:667 威望:0 精华:0 注册:2011/4/9 16:17:57
如何才能做到一个价位不在 重复下单?  发帖心情 Post By:2014/5/20 21:47:54 [只看该作者]


variable:n=1;
et1:=TAVGENTERPRICEEX2('' , '', 0);//多头持仓均价
et2:=TAVGENTERPRICEEX2('' , '', 1);//空头持仓均价
if THOLDING2>0 then begin
    n:=n+1;
end
if mod(open-(et2+1),2)=0 then tsellshort(1,5,lmt,et2+1,0);
if mod(open-(et1+2),2)=0 then tsell(1,5,lmt,et1+2,0);
if mod(open-(et2+n),2)=0 then tsellshort(1,5,lmt,(et2+n),0);
if mod(open-((et1+n)+1),2)=0 then tsell(1,5,lmt,((et1+n)+1),0);

要求这样循环的.
初始第一次平空为et2+1,当第二次平空是(et2+1)+1,继续循环时,以此类推。
初始第一次平多为 et1+2,,当第二次平多是 (et1+2)+1,继续循环时,以此类推。


如何才能做到一个价位不在 重复下单?

用VBA可以不可以?

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


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2014/5/21 15:09:52 [只看该作者]

用vba是肯定可以的,使用ini文件或全局变量来标识没一个价位的交易状态。

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


加好友 发短信
等级:黑侠 帖子:808 积分:667 威望:0 精华:0 注册:2011/4/9 16:17:57
  发帖心情 Post By:2014/5/21 23:17:13 [只看该作者]

帮忙写一个

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


加好友 发短信
等级:黑侠 帖子:808 积分:667 威望:0 精华:0 注册:2011/4/9 16:17:57
  发帖心情 Post By:2014/5/21 23:29:10 [只看该作者]

后台交易程序:
1)当下持仓为多单100手,空单100手,对锁中。价位3130;
2)若上涨1个点位要求系统减仓5手空单,上涨3个点位要求系统自动减仓5手多单。这样的循环;
3)若下跌1个点位要求系统自动减仓5手多单,下跌3个点位要求系统自动减仓5手空单,这样的循环。
4)一直到减仓完毕。
5)挂单后40秒不成交自动撤单,并且当下价位直接平掉单腿。要求持仓同步。

-----若上涨1个点位要求系统减仓5手空单,上涨3个点位要求系统自动减仓5手多单。这样的循环;
多空点差保持2点的意思;
就是说比如:当下持仓为多单100手,空单100手,对锁中。价位3130;
3231减空单5手,涨到3233减多单5手;
3234减空单5手,涨到3236减多单5手;
3237减空单5手,涨到3239减多单5手;
多空点差保持2点的这样循环

variable:n=1;
if (TIME>=085600 AND TIME<=90000) then begin
tbuy(1,10,lmt,DYNAINFO(54),0);
tbuyshort(1,10,lmt,DYNAINFO(55),0);
end
if THOLDING2<0 and (time<145000) then begin
tbuy(val2>0,10,lmt,o,0);
tbuyshort(val2>0,10,lmt,o,0);
end
et1:=TAVGENTERPRICEEX2('' , '', 0);//多头持仓均价
et2:=TAVGENTERPRICEEX2('' , '', 1);//空头持仓均价
if THOLDING2>0 then begin
    n:=n+1;
end
if mod(open-(et2+1),2)=0 then tsellshort(1,1,lmt,et2+1,0);
if mod(open-(et1+2),2)=0 then tsell(1,1,lmt,et1+2,0);
if mod(open-(et2+n),2)=0 then tsellshort(1,1,lmt,(et2+n),0);
if mod(open-((et1+n)+1),2)=0 then tsell(1,1,lmt,((et1+n)+1),0);
if mod((et1-1)-open,2)=0 then tsell(1,1,lmt,et1-1,0);
if mod((et2-2)-open,2)=0 then tsellshort(1,1,lmt,et2-2,0);
if mod((et1-n)-open,2)=0 then tsell(1,1,lmt,(et1-n),0);
if mod(((et2-n)-1)-open,2)=0 then tsellshort(1,1,lmt,(et2-n)-1,0);
//撤单    
  tm:=50;//撤单时间秒 
  if tisremain(0)>0 and tsubmit(0)>tm then begin
   tcancel(1,0);
  end
  tsell(1,1,mkt);  
  tsellshort(1,1,mkt);  
  
//收盘平仓
  if CURRENTTIME>=151300 and currenttime<=151400 then begin
  tsell(1,0,mkt);
  tsellshort(1,0,mkt); 
 end


要求这样循环的.
初始第一次平空为et2+1,当第二次平空是(et2+1)+1,继续循环时,以此类推。
初始第一次平多为 et1+2,,当第二次平多是 (et1+2)+1,继续循环时,以此类推。

[此贴子已经被作者于2014/5/21 23:30:12编辑过]

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


加好友 发短信
等级:黑侠 帖子:808 积分:667 威望:0 精华:0 注册:2011/4/9 16:17:57
  发帖心情 Post By:2014/5/21 23:29:41 [只看该作者]

做到一个价位不在 重复下单

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2014/5/22 18:30:28 [只看该作者]

您的需求超出了我们客服的能力范围。

建议您尝试自行编写一下,注意一定要学会后台程序的调试,即多使用DEBUGFILE函数调试。

或者您可以考虑一下付费的策略编写服务


 回到顶部