以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  期货用这个买一量成交怎么不行  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=160581)

--  作者:haizxj
--  发布时间:2017/12/21 22:31:49
--  期货用这个买一量成交怎么不行

KD1:DYNAINFO( 25)>DYNAINFO( 31)*2;

 

这个作为买入条件,就是不执行,怎么回事

[此贴子已经被作者于2017/12/21 22:32:03编辑过]

--  作者:FireScript
--  发布时间:2017/12/22 9:03:52
--  

1.你输出下这2个函数的值,看下计算结果。

2.需要注意的是:这2个函数是动态函数,返回值只有当前最新值。历史K上这2个函数值会和当前最新的值保持一致。 如果最新K是不满足,整个历史K上这个条件都会是否。


--  作者:haizxj
--  发布时间:2017/12/22 9:52:03
--  

我是实盘测量,这个值可以显示,但是数值不断动的


--  作者:wenarm
--  发布时间:2017/12/22 9:56:37
--  
这个是动态行情函数,没有历史值,不要用在图表中。会造成图表信号闪烁。
--  作者:haizxj
--  发布时间:2017/12/22 10:02:28
--  

KD1:DYNAINFO( 25)>DYNAINFO( 31)*2;
kk1:DYNAINFO( 31)>DYNAINFO( 25)*2;

 

pd2:ENTERPRICE+2*MINDIFF;
pk2:ENTERPRICE-2*MINDIFF;

KD:= kd1;          //开多条件
PD:= c>=pd2 ;          //平多条件

 

开多:BUY(KD AND HOLDING=0,1,DYNAINFO( 34));          //开多信号
平多:SELL(PD,1,ENTERPRICE+2*MINDIFF); 


--  作者:FireScript
--  发布时间:2017/12/22 10:08:06
--  

你代码还有别的地方的错误

buy函数和sell函数的第三个参数是错的。

 

开多:BUY(KD AND HOLDING=0,1,limit,DYNAINFO( 34));         

平多:SELL(PD,1,limit,ENTERPRICE+2*MINDIFF); 

 

限价参数是这样设置的。

[此贴子已经被作者于2017/12/22 10:08:41编辑过]

--  作者:haizxj
--  发布时间:2017/12/22 11:15:24
--  

但是如果这样写,因为是动态的值,发现有时开仓信号消失了,

结果没有平仓指令。

怎么办


--  作者:wenarm
--  发布时间:2017/12/22 12:39:15
--  

你的这个需求要用后台实现。图表是基于历史数据计算虚拟持仓,而你用动态行情函数参与计算会直接干扰图表的计算结果。出现信号闪烁很正常