以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  请教老师次策略如何编写  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=59468)

--  作者:gsqh_zyp
--  发布时间:2013/12/3 11:19:14
--  请教老师次策略如何编写


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20131203110610.jpg
图片点击可在新窗口打开查看

请问老师,如何编写此想法。

主图中平空开多信号是根据最高价突破20周期信号,如何实现当价格突破20周期高点前后5个周期内幅图出现PDI上穿MP时在开仓。

也就是有以下两种情况:

1、当价格突破20周期内最高点后5个周期内出现PDI上穿MP,则根据cross(PDI,MP)作为开仓信号。

2、当价格突破20周期内最高点前5个周期内出现PDI上穿MP,则根据突破20周期内最高点作为开仓信号。


--  作者:jinzhe
--  发布时间:2013/12/3 11:30:24
--  
突破是当前最高点比前面20周期的高点要高?
--  作者:gsqh_zyp
--  发布时间:2013/12/3 11:56:07
--  

HHN := ref(HHV(HIGH,20),1);

当前最高价突破前20周期的最高价


--  作者:jinzhe
--  发布时间:2013/12/3 13:34:14
--  有两个策略请老师帮忙编写,谢谢
你能把已经定义好的东西都贴一下吗?
--  作者:gsqh_zyp
--  发布时间:2013/12/3 14:08:40
--  

我定义的很简单

 

INPUT:P(14,1,10,1);

INPUT:M(18,1,10,1);

INPUT:N(20,1,10,1);

 

TR1 := SUM(MAX(MAX(HIGH - LOW, ABS(HIGH-REF(CLOSE,1))), ABS(LOW - REF(CLOSE, 1))), P); 
HD := HIGH - REF(HIGH, 1);
LD := REF(LOW, 1) - LOW; 
DMP := SUM(IF(HD>0 AND HD>LD,HD,0),P);
DMM := SUM(IF(LD>0 AND LD>HD,LD,0),P);
PDI := MA(DMP*100/TR1,M);
MP := MDI-PDI;

 

HHN := ref(HHV(HIGH,N),1);
HLN := ref(LLV(LOW,N),1);


--  作者:jinzhe
--  发布时间:2013/12/3 14:45:46
--  

{主图中平空开多信号是根据最高价突破20周期信号,如何实现当价格突破20周期高点前后5个周期内幅图出现PDI上穿MP时在开仓。

也就是有以下两种情况:

1、当价格突破20周期内最高点后5个周期内出现PDI上穿MP,则根据cross(PDI,MP)作为开仓信号。

2、当价格突破20周期内最高点前5个周期内出现PDI上穿MP,则根据突破20周期内最高点作为开仓信号。}
1.barslast(h>ref(hhv(h,20),1))+1<=5 and cross(pdi,mp)

2.barslast(cross(pdi,mp))<=5 and h>ref(hhv(h,20),1)


--  作者:gsqh_zyp
--  发布时间:2013/12/3 18:41:17
--  

哦,老师,在补充一点

3、当价格突破20周期内最高点前后5个周期内都没出现PDI上穿MP时,则根据h>ref(hhv(h,20),1)作为开仓信号,怎么编写?

谢谢!


--  作者:jinzhe
--  发布时间:2013/12/4 8:58:43
--  
第三点的判断有未来的含义,不能写
--  作者:gsqh_zyp
--  发布时间:2013/12/4 10:13:42
--  

哦,换一种理解不知道有没有含未来,

3、当价格突破20周期内最高点前后5个周期内都没出现PDI上穿MP时,则在后第6个周期内不管什么情况都开仓


--  作者:jinzhe
--  发布时间:2013/12/4 10:26:59
--  

nn:=barslast(突破)+1;

if nn<=5 and count(上传,nn)=0 and ref(上传,nn+5)  then 开仓语句;