以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  K线形态问题  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=160438)

--  作者:zhangcc
--  发布时间:2017/12/14 22:18:26
--  K线形态问题

出现这样的孕线形态后  就是图中花圈的三根K线形态  然后只要有这样的K线形态 后面价格突破第一根K线的高低我就做多  跌破第一根K线的低点我就做空 应该怎么写  前面的定义K线形态我已经写好了  就是后面怎么写开仓  因为接下去第几根K线出信号我们不知道  无法定义K线 这个应该怎么解决?

这是定义画圈的K线形态

tj1:=ref(l,1)>ref(l,3) and ref(l,2)>ref(l,3);
tj2:=ref(h,1)<ref(h,3) and ref(h,2)<ref(h,3);
tj3:=VALUEWHEN(tj1 and tj2,ref(l,3));
tj4:=VALUEWHEN(tj1 and tj2,ref(h,3));


图片点击可在新窗口打开查看此主题相关图片如下:8a9}x_8w~t(z5ry2%kg3j.png
图片点击可在新窗口打开查看

--  作者:zhangcc
--  发布时间:2017/12/14 22:19:54
--  
我写法可能有错误  请教大神  按我的意思  应该怎么写  因为我们无法定义K线
--  作者:gxx978
--  发布时间:2017/12/15 8:46:17
--  

你的tj1和tj2就是定义这3根K线的形态的,是否还有其他的条件来定义,比如这3根都是阴性,3根后面的那根为阳线等,你定义的这两个条件还有其他的K线形态也是满足的。

 

举例写法:

tj1:ref(l,1)>ref(l,3) and ref(l,2)>ref(l,3);
tj2:ref(h,1)<ref(h,3) and ref(h,2)<ref(h,3);
tj3:ref(c,1)<ref(o,1);
tj4:ref(c,2)<ref(o,2);
tj5:ref(c,3)<ref(o,3);
tj6:c>o;


n1:barslast(tj1 and tj2 and tj2 and tj3 and tj4 and tj5 and tj6);//上次满足条件到当前的周期数

conkd:h>ref(h,n1+3);//开多条件
conkk:l<ref(l,n1+3);//开空条件

[此贴子已经被作者于2017/12/15 9:14:56编辑过]

--  作者:zhangcc
--  发布时间:2017/12/15 14:26:34
--  
没有其他条件来定义的   这三根后面的K线突破只要突破第一根就开仓  然后出现第二个这三根K线的形态  往上突破的就保持仓位  往下突破的就是止多单开空单  一次类推  
--  作者:zhangcc
--  发布时间:2017/12/15 14:31:25
--  
就是这三根K线的形态出现后   后面的第几根K线会突破第一根的高低点  我们不知道  所以我不会定义
--  作者:gxx978
--  发布时间:2017/12/15 14:46:16
--  

后面的第几根满足就是看上次TJ1和 tj2满足距离当前的K线周期数啊,即h>ref(h,barslast(tj1 and tj2)+3);

但是4楼的需求跟你确认以下两点:

以下两点需要跟您确认下:

1、你的意思是tj1和tj2就是定义的这三根K线,且后面的K线只要突破,就只开一次。开过之后及时再突破也是不开仓的?

2、另外第2次出现这三根K线的形态后,往下突破也是只开一次空单?那如果既不往上突破,也不往下突破,则不开也不平?等第3次满足再判断往上突破则没有动作保持仓位,往下突破,再平多开空?


--  作者:zhangcc
--  发布时间:2017/12/15 14:58:18
--  
您的第1个问题答案:是的  开过之后即使再突破也不开仓了   除非反向突破
您的第2个问题答案:是的  第二次出现这三根K线的形态后,往下破开空,只开一次,不破不开也不平。等第三次满足,往上突破保持仓位不动,往下破就平多开空,就是这样,没错

--  作者:zhangcc
--  发布时间:2017/12/15 14:59:34
--  
补充第2个问题中的第一个问好:往下突破是平多开空,也是一次
--  作者:zhangcc
--  发布时间:2017/12/15 15:49:01
--  
tj1:ref(l,1)>ref(l,3) and ref(l,2)>ref(l,3);
tj2:ref(h,1)<ref(h,3) and ref(h,2)<ref(h,3);


n1:barslast(tj1 and tj2);//上次满足条件到当前的周期数

conkd:c>ref(h,n1+3);//开多条件
conkk:c<ref(l,n1+3);//开空条件

conpd:h>ref(h,n1+3);//平多条件
conpk:l<ref(l,n1+3);//平空条件



if holding>0 and conpd then sell(1,0,LIMITR,c);//平多
if holding<0 and conpk then sellshort(1,0,LIMITR,c);//平空

if holding=0 and conkd then buy(1,0,LIMITR,c);//开多
if holding=0 and conkk then buyshort(1,0,LIMITR,c);//开空

--  作者:zhangcc
--  发布时间:2017/12/15 15:49:23
--  
这样还是有问题  我写的不对吗  信号对不上 您帮我看看