以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  画一定时期内的趋势通道怎么写?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=156339)

--  作者:qq代人发帖
--  发布时间:2017/7/28 13:53:37
--  画一定时期内的趋势通道怎么写?
画一定时期内的趋势通道怎么写?

--  作者:gxx978
--  发布时间:2017/7/28 14:24:25
--  
能否详细描述下你的需求?
--  作者:出污泥而不染
--  发布时间:2017/7/28 16:22:47
--  
比如:过100周期内的两个高点连线,然后在本周期内的最低点处画一条两高点连线的平行线
--  作者:gxx978
--  发布时间:2017/7/28 16:42:43
--  
这两个高点分别是怎么定义的。
--  作者:出污泥而不染
--  发布时间:2017/7/28 17:27:36
--  

比如这样的上升通道


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20170728172618.png
图片点击可在新窗口打开查看

--  作者:wenarm
--  发布时间:2017/7/28 17:32:09
--  
这种图没有对于量化没有意义的,必须有相应的量化定义,才能编写。
[此贴子已经被作者于2017/7/28 17:32:20编辑过]

--  作者:出污泥而不染
--  发布时间:2017/7/28 17:35:16
--  

比如:

两高点分别是:最近200周期内的最高点;最近100周期内的最高点。

最低点:最近200周期内的最低点

 

 

不是有波峰、波谷函数吗?

[此贴子已经被作者于2017/7/28 17:36:12编辑过]

--  作者:出污泥而不染
--  发布时间:2017/7/28 22:08:30
--  
V1:=ISLASTBAR;
V2:=REF(HIGH,N)=HHV(HIGH,2*N+1);
V3:=FILTER(V2,N);
V4:=BACKSET(V3,N+1);
V5:=FILTER(V4,N);
V6:=V5 OR V1;
V7:=REF(LOW,N)=LLV(LOW,2*N+1);
V8:=FILTER(V7,N);
V9:=BACKSET(V8,N+1);
VA:=FILTER(V9,N);
VB:=VA AND NOT(V5);
VC:=BACKSET(V6,REF(BARSLAST(VB),1)+1);
VD:=VC>REF(VC,1);
VE:=BACKSET(VD,2);
VF:=VE>REF(VE,1);
V10:=BACKSET(VF AND COUNT(V6,REF(BARSLAST(VB),1)+2)=0,REF(BARSLAST(VB),1)+2);
V11:=V10>REF(V10,1);
V12:=BACKSET(V11 AND COUNT(V6,REF(BARSLAST(VB),1)+2)=0,REF(BARSLAST(VB),1)+2);
V13:=V12>REF(V12,1);
V14:=IF(V6,COUNT(VB,REF(BARSLAST(V6),1)+1),0);
V15:=IF(V14=1 AND V6,BARSLAST(VF),0);
V16:=IF(V6 AND REF(LOW,BARSLAST(VF))>=REF(LOW,BARSLAST(V11)),BARSLAST(V11),BARSLAST(VF));
V17:=IF(V14=2 AND V6,V16,0);
V18:=IF(V14>=3 AND V6,IF(V6 AND REF(LOW,V16)>=REF(LOW,BARSLAST(V13)),BARSLAST(V13),V16),0);
V19:=V15+V17+V18;
V1A:=BACKSET(V6,V19);
V1B:=V1A>REF(V1A,1);
V1C:=BACKSET(V1B,2);
V1D:=V1C>REF(V1C,1);
V1E:=V1D OR V1;
V1F:=BACKSET(V1E,REF(BARSLAST(V6),1)+1);
V20:=V1F>REF(V1F,1);
V21:=BACKSET(V20,2);
V22:=V21>REF(V21,1);
V23:=BACKSET(V22 AND COUNT(V1E,REF(BARSLAST(V6),1)+2)=0,REF(BARSLAST(V6),1)+2);
V24:=V23>REF(V23,1);
V25:=BACKSET(V24 AND COUNT(V1E,REF(BARSLAST(V6),1)+2)=0,REF(BARSLAST(V6),1)+2);
V26:=V25>REF(V25,1);
V27:=IF(V1E,COUNT(V5,REF(BARSLAST(V1E),1)+1),0);
V28:=IF(V27=1 AND V1E,BARSLAST(V22),0);
V29:=IF(V1E AND REF(HIGH,BARSLAST(V22))<=REF(HIGH,BARSLAST(V24)),BARSLAST(V24),BARSLAST(V22));
V2A:=IF(V27=2 AND V1E,V29,0);
V2B:=IF(V27>=3 AND V1E,IF(V1E AND REF(HIGH,V29)<=REF(HIGH,BARSLAST(V26)),BARSLAST(V26),V29),0);
V2C:=V28+V2A+V2B;
V2D:=BACKSET(V1E,V2C);
V2E:=V2D>REF(V2D,1);
V2F:=BACKSET(V2E,2);
V30:=V2F>REF(V2F,1);
DRAWLINE(V1D,LOW,V30,HIGH,0);
DRAWLINE(V30,HIGH,V1D,LOW,0);
V31:=BACKSET(V1,BARSLAST(V1D)+1);
V32:=V31>REF(V31,1);
V33:=BACKSET(V1,BARSLAST(V30)+1);
V34:=V33>REF(V33,1);

--  作者:wenarm
--  发布时间:2017/7/31 9:36:45
--  
以下是引用出污泥而不染在2017/7/28 17:35:16的发言:

比如:

两高点分别是:最近200周期内的最高点;最近100周期内的最高点。

最低点:最近200周期内的最低点

 

 

不是有波峰、波谷函数吗?

[此贴子已经被作者于2017/7/28 17:36:12编辑过]

这个条件不充分,存在近200周期内的最高点;最近100周期内的最高点是同一个位置的情况。

 

你的需求你可以通过DRAWLINE函数完成.条件是需要能获得两个高点的位置以及两个高点之间的位置。

下面方式可以得到近似的结果

DRAWLINE(A点k线位置,HIGH,B点k线位置HIGH,1);

DRAWLINE(A点k线位置,HIGH-LOW,B点k线位置HIGH-LOW,1)

[此贴子已经被作者于2017/7/31 9:37:18编辑过]