帮忙编写一个代码 (文华财经WH8赢智V8.2)

投资者咨询:帮忙编写一个代码 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-28 19:59
 
麻烦老师帮忙编写一个代码,
谢谢。


图片点击可在新窗口打开查看
如图,
1,2,3这三组K线都满足一个条件,每组K线包括3根K线,中间的high小于其左右K线的high(不用管是阳K还是阴K)。
需要从当前K线出发,如果当前K线和其前面的两根K线满足形态,那么再往左扫描(最多往左扫描50(由20修改为50)根k线),再找到2个这样的形态,这个时候有了3个型态(3组K线),记作1,2,3
每组K线的最低值记作p1,p2,p3
每组K线对应的区间的RSI(9)最小值记作R1,R2,R3   (不是最低的K线对应的RSI值,而是这一组K线对应的RSI的最小值)
如果p3<p2<p1,且R3>R2>R1,且当前K线是阳K线,收盘价大于前一根K线的high,那么在当前K线low处标注“买入”

 
       红色字体为后来增加的条件  
技术人员回复
日期:2018-5-28 20:05
 A:=REF(H,1)=HHV(H,3);
L1:=VALUEWHEN(A,LLV(L,3));
L2:=VALUEWHEN(A,REF(L1,1));
L3:=VALUEWHEN(A,REF(L2,1));
Q:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20,LLVBARS(L,3)+1);
DRAWTEXT(Q>REF(Q,1),L,'买入');
投资者咨询:帮忙编写一个代码 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-28 19:59


按此在新窗口浏览图片
文件名:333.png
您好,谢谢,
1.我又增加了一个RSI的条件。 (见第一个帖子:红色字体为后来增加的条件) 
2.  另外,为了方便我看图和以后调整代码,能否分别在3组K线的最低处,写上数字1,2,3,如上图

代码处不懂,当满足条件,我在当前K线写“买入”即可。
这个买入的位置好像是很多个K线之前了
Q:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20,LLVBARS(L,3)+1);
DRAWTEXT(Q>REF(Q,1),L,'买入');
 
   
技术人员回复
日期:2018-5-28 21:02
LC := REF(CLOSE,1);//前一周期收盘价
RSI:SMA(MAX(CLOSE-LC,0),9,1)/SMA(ABS(CLOSE-LC),9,1)*100;

A:=REF(H,1)=HHV(H,3);
L1:=VALUEWHEN(A,LLV(L,3));
L2:=VALUEWHEN(A,REF(L1,1));
L3:=VALUEWHEN(A,REF(L2,1));
R1:=VALUEWHEN(A,LLV(RSI,3));
R2:=VALUEWHEN(A,REF(R1,1));
R3:=VALUEWHEN(A,REF(R2,1));
Q:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1,2);
DRAWTEXT(Q>REF(Q,1)&&ISUP&&C>REF(H,1),L,'买入');

Q1:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1&&REF(ISUP&&C>REF(H,1),1),SUMBARS(A,2));
DRAWTEXT(Q1>REF(Q1,1),L,'2');

Q2:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1&&REF(ISUP&&C>REF(H,1),1),SUMBARS(A,3));
DRAWTEXT(Q2>REF(Q2,1),L,'3');
投资者咨询:帮忙编写一个代码 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-28 19:59
 老师,我运行后。有错误
1、3个低点,感觉并不是每组K线的最低点;
2、只看到3,2, 没有看到“1” 标记



图片点击可在新窗口打开查看
   
技术人员回复
日期:2018-5-29 13:20
都不是问题,首先买入就是1,所以没标注

2,3是标注在小范围那组K线上,标注是否在最低点上并不重要,您主要看买入就行了
投资者咨询:帮忙编写一个代码 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-28 19:59
 1、我修改了第三行,(因为需求里  是中间那个K线的high是最小的。)但找不到任何满足条件的K线了。不知道怎么回事。
2、我删除了很多条件,结果发现,买入时画在了中间最低的那根K线上了。 好像判断的时候也是判断中间那根K线,这样会导致判断错误。
请老师再仔细看下。 买入要在这组K线的最后一根K线上,因为这跟K线的high会高于前一根K线的high。

 
LC := REF(CLOSE,1);//前一周期收盘价
RSI:SMA(MAX(CLOSE-LC,0),9,1)/SMA(ABS(CLOSE-LC),9,1)*100;

A:=REF(H,1)=LLV(H,3);
L1:=VALUEWHEN(A,LLV(L,3));
L2:=VALUEWHEN(A,REF(L1,1));
L3:=VALUEWHEN(A,REF(L2,1));
R1:=VALUEWHEN(A,LLV(RSI,3));
R2:=VALUEWHEN(A,REF(R1,1));
R3:=VALUEWHEN(A,REF(R2,1));
Q:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1,2);
DRAWTEXT(Q>REF(Q,1)&&ISUP&&C>REF(H,1),L,'买入');

Q1:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1&&REF(ISUP&&C>REF(H,1),1),SUMBARS(A,2));
DRAWTEXT(Q1>REF(Q1,1),L,'2');

Q2:=BACKSET(A&&L1<L2&&L2<L3&&SUMBARS(A,3)<=20&&R3>R2&&R2>R1&&REF(ISUP&&C>REF(H,1),1),SUMBARS(A,3));
DRAWTEXT(Q2>REF(Q2,1),L,'3');
 
 
技术人员回复
日期:2018-5-29 15:02
 您修改思路了,需要重新看下,预计明天给您回复
投资者咨询:帮忙编写一个代码 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-28 19:59
 没有修改思路啊。 之前的需求是这样的 “1,2,3这三组K线都满足一个条件,每组K线包括3根K线,中间的high小于其左右K线的high(不用管是阳K还是阴K)。” 
技术人员回复
日期:2018-5-29 15:12
如下试试

LC := REF(CLOSE,1);//前一周期收盘价
RSI:SMA(MAX(CLOSE-LC,0),9,1)/SMA(ABS(CLOSE-LC),9,1)*100;

A:=REF(H,1)=LLV(H,3);
L1:=VALUEWHEN(A,LLV(L,3));
L2:=VALUEWHEN(A,REF(L1,1));
L3:=VALUEWHEN(A,REF(L2,1));
R1:=VALUEWHEN(A,LLV(RSI,3));
R2:=VALUEWHEN(A,REF(R1,1));
R3:=VALUEWHEN(A,REF(R2,1));
DRAWTEXT(A&&L1>L2&&L2>L3&&SUMBARS(A,3)<=50&&R3>R2&&R2>R1&&ISUP&&C>REF(H,1),L,'买入');

Q1:=BACKSET(A&&L1>L2&&L2>L3&&SUMBARS(A,3)<=50&&R3>R2&&R2>R1&&ISUP&&C>REF(H,1),SUMBARS(A,2));
DRAWTEXT(Q1>REF(Q1,1),L,'2');

Q2:=BACKSET(A&&L1>L2&&L2>L3&&SUMBARS(A,3)<=50&&R3>R2&&R2>R1&&ISUP&&C>REF(H,1),SUMBARS(A,3));
DRAWTEXT(Q2>REF(Q2,1),L,'3');