以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  为什么同样的条件用market可以成交用limit却不行  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=145878)

--  作者:lcgs005
--  发布时间:2017/1/4 0:39:13
--  为什么同样的条件用market可以成交用limit却不行
同样的条件下,图表上
//这个图表上正常显示且可以成交
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
--  发布时间:2017/1/4 0:44: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);
比如这个简单的策略,当加载到图表上时,所有的平仓语句都不产生作用,不知道是什么原因?

--  作者:jinzhe
--  发布时间:2017/1/4 9:06:59
--  

lmt是次周期下单函数,用法是本周期的价格放在次周期上做交易,很有可能出现一个超过次周期k线的价格,导致不成交,从而出现白色箭头

market就不一样了,是次周期开盘价,不会超过次周期k线范围,


--  作者:jinzhe
--  发布时间:2017/1/4 9:07:48
--  

还有没有直接光写一个limit的,后面要加一个下单价格:buy(1,1,limit,close);

 


--  作者:lcgs005
--  发布时间:2017/1/4 9:44:55
--  
好的,问题确实出在limit后没有指定一个限价的价格,导致不成交,后面指定价格后正常了。
谢谢!

--  作者:lcgs005
--  发布时间:2017/1/4 9:48:21
--  
这个确实也挺关键的,用market评测时是以下根k开盘成交,所以相当于实盘运行中的走完k线下单,
而marketr评测时是当根k收盘价成交,所以近似于实盘运行中的1秒轮循,

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

--  作者:jinzhe
--  发布时间:2017/1/4 9:50:20
--  

这个看你自己了,认为要走完k线就用market,认为用固定时间间隔就用marketr

次周期开盘和本周起收盘是两个不同的价格,回测上是不一样的