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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 为什么同样的条件用market可以成交用limit却不行

   

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


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

主题:为什么同样的条件用market可以成交用limit却不行

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


加好友 发短信
等级:黑侠 帖子:649 积分:1359 威望:0 精华:0 注册:2009/10/24 1:57:01
为什么同样的条件用market可以成交用limit却不行  发帖心情 Post By:2017/1/4 0:39:13    Post IP:125.86.80.54[显示全部帖子]

同样的条件下,图表上
//这个图表上正常显示且可以成交
if holding=0 and kd and H>L then buy(1,cw,market);
if holding=0 and kk  and H>L then buyshort(1,cw,market);

而用下面的开仓语句时,在图表上却显示无法开仓
//这样的语句图表上显示无法开仓
if holding=0 and kd and H>L then buy(1,cw,limit),IGNORECHECKPRICE;
if holding=0 and kk  and H>L then buyshort(1,cw,limit),IGNORECHECKPRICE;
从函数表上看应该都可以在图表上显示的啊,为什么用第二种限价委托时,无法显示成交?
[此贴子已经被作者于2017-1-4 0:39:53编辑过]

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


加好友 发短信
等级:黑侠 帖子:649 积分:1359 威望:0 精华:0 注册:2009/10/24 1:57:01
  发帖心情 Post By:2017/1/4 0:44:54    Post IP:125.86.80.54[显示全部帖子]

m5:ema(c,5);
m10:ema(c,10);
jc:=cross(m5,m10);
sc:=cross(m10,m5);
kd:=jc;
kk:=sc;
if holding<0 and kd then sellshort(1,0,limit);
if holding=0 and kd then buy(1,1,limit);
if holding>0 and kk then sell(1,0,limit);
if holding=0 and kk then buyshort(1,1,limit);
比如这个简单的策略,当加载到图表上时,所有的平仓语句都不产生作用,不知道是什么原因?

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


加好友 发短信
等级:黑侠 帖子:649 积分:1359 威望:0 精华:0 注册:2009/10/24 1:57:01
  发帖心情 Post By:2017/1/4 9:44:55    Post IP:125.86.80.54[显示全部帖子]

好的,问题确实出在limit后没有指定一个限价的价格,导致不成交,后面指定价格后正常了。
谢谢!

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


加好友 发短信
等级:黑侠 帖子:649 积分:1359 威望:0 精华:0 注册:2009/10/24 1:57:01
  发帖心情 Post By:2017/1/4 9:48:21    Post IP:125.86.80.54[显示全部帖子]

这个确实也挺关键的,用market评测时是以下根k开盘成交,所以相当于实盘运行中的走完k线下单,
而marketr评测时是当根k收盘价成交,所以近似于实盘运行中的1秒轮循,

为尽可能地让实盘与测试相符,对这个细节的处理还是有必要的?

 回到顶部