老师帮忙改一下 (文华财经wh7睿期)

投资者咨询:老师帮忙改一下 (文华财经wh7睿期)
来源:文华财经  日期:2018-6-5 15:31
A1:=REF(H,N)=HHV(H,2*N+1);
B1:=FILTER(A1,N);
C1:=BACKSET(B1,N+1);
D1:=FILTER(C1,N);{高点}
A2:=REF(L,N)=LLV(L,2*N+1);
B2:=FILTER(A2,N);
C2:=BACKSET(B2,N+1);
D2:=FILTER(C2,N);{低点}
E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; E2:=(H+L)/2;{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2));  H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS
(IF(L1,L,10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1);{过滤后低点}
L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS
(IF(H2,H,0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1);{过滤后高点}
R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1); S1:=R1>REF(R1,1); {前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); U1:=T1>REF(T1,1); {前一低}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); S2:=R2>REF(R2,1); {前二高}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); U2:=T2>REF(T2,1); {前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2); U3:=T3>REF(T3,1); {前三低}
T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2); U4:=T4>REF(T4,1); {前四低}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); S3:=R3>REF(R3,1); {前三高}
R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2); S4:=R4>REF(R4,1); {前四高}
短期压力:DRAWLINE(S2,H,S1,H,1),COLORRED;
短期支撑:DRAWLINE(U2,L,U1,L,1),COLORGREEN;
中期压力:DRAWLINE(S3,H,S2,H,1),COLORYELLOW;
中期支撑:DRAWLINE(U3,L,U2,L,1),COLORGREEN;
长期压力:DRAWLINE(S4,H,S3,H,1),COLORFF00FF;
长期支撑:DRAWLINE(U4,L,U3,L,1),COLORGREEN;
DRAWICON(S1,H*1.01,2);
DRAWICON(S2,H*1.01,2);
DRAWICON(S3,H*1.01,2);
DRAWICON(S4,H*1.01,2);
DRAWICON(U1,L*0.99,1);
DRAWICON(U2,L*0.99,1);
DRAWICON(U3,L*0.99,1);
DRAWICON(U4,L*0.99,1);

请老师改成文化的,谢谢
 
技术人员回复
日期:2018-6-5 15:38
N代表着周期,您可以自己定义下,另外不同软件对函数处理机制不同,改写后加载有不同,属于正常情况。

N:=1;
A1:=REF(H,N)=HHV(H,2*N+1);
B1:=FILTER(A1,N);
C1:=BACKSET(B1,N+1);
D1:=FILTER(C1,N);//{高点}
A2:=REF(L,N)=LLV(L,2*N+1);
B2:=FILTER(A2,N);
C2:=BACKSET(B2,N+1);
D2:=FILTER(C2,N);//{低点}
E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; 
E2:=(H+L)/2;
{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2));  
H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; 
F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS
(IF(L1,L,10000),X1));
G1:=F1>REF(F1,1); 
I1:=BACKSET(G1,2); 
LD:=I1>REF(I1,1);
{过滤后低点}
L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; 
F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS
(IF(H2,H,0),X2));
G2:=F2>REF(F2,1); 
I2:=BACKSET(G2,2); 
HD:=I2>REF(I2,1);
{过滤后高点}
R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1); 
S1:=R1>REF(R1,1); //{前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); 
U1:=T1>REF(T1,1); //{前一低}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); 
S2:=R2>REF(R2,1); //{前二高}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); 
U2:=T2>REF(T2,1); //{前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2); 
U3:=T3>REF(T3,1); //{前三低}
T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2); 
U4:=T4>REF(T4,1);// {前四低}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); 
S3:=R3>REF(R3,1); //{前三高}
R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2); 
S4:=R4>REF(R4,1); //{前四高}
DRAWLINE1(S2,H,S1,H,1),COLORRED;
DRAWLINE1(U2,L,U1,L,1),COLORGREEN;
DRAWLINE1(S3,H,S2,H,1),COLORYELLOW;
DRAWLINE1(U3,L,U2,L,1),COLORGREEN;
DRAWLINE1(S4,H,S3,H,1),COLORFF00FF;
DRAWLINE1(U4,L,U3,L,1),COLORGREEN;
DRAWICON(S1,H*1.01,2);
DRAWICON(S2,H*1.01,2);
DRAWICON(S3,H*1.01,2);
DRAWICON(S4,H*1.01,2);
DRAWICON(U1,L*0.99,1);
DRAWICON(U2,L*0.99,1);
DRAWICON(U3,L*0.99,1);
DRAWICON(U4,L*0.99,1);
投资者咨询:老师帮忙改一下 (文华财经wh7睿期)
来源:文华财经  日期:2018-6-5 15:31
老师加载到文华7K线中不显示啊
技术人员回复
日期:2018-6-5 16:14
 跟您核实下,您的指标是通达信的还是哪里的?
投资者咨询:老师帮忙改一下 (文华财经wh7睿期)
来源:文华财经  日期:2018-6-5 15:31
 通达信里的
技术人员回复
日期:2018-6-5 17:22
 因为不同软件函数处理机制不同,逐句分析指标需要时间,您可以提供思路给我,按照您的思路进行编写。
投资者咨询:老师帮忙改一下 (文华财经wh7睿期)
来源:文华财经  日期:2018-6-5 15:31
 N:=3;{原码 N:=3;}
A1:=REF(H,N)=HHV(H,2*N+1); B1:=FILTER(A1,N); C1:=BACKSET(B1,N+1); D1:=FILTER(C1,N);{高点}
A2:=REF(L,N)=LLV(L,2*N+1); B2:=FILTER(A2,N); C2:=BACKSET(B2,N+1); D2:=FILTER(C2,N);{低点}
E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; E2:=(H+L)/2;{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2));  H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,L,10000),X1));
G1:=F1>REF(F1,1); I1:=BACKSET(G1,2); LD:=I1>REF(I1,1),LINETHICK0;{过滤后低点}
L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,H,0),X2));
G2:=F2>REF(F2,1); I2:=BACKSET(G2,2); HD:=I2>REF(I2,1),LINETHICK0;{过滤后高点}


R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1); S1:=R1>REF(R1,1); {前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); U1:=T1>REF(T1,1); {前一低}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); S2:=R2>REF(R2,1); {前二高}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); U2:=T2>REF(T2,1); {前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2); U3:=T3>REF(T3,1); {前三低}
T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2); U4:=T4>REF(T4,1); {前四低}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); S3:=R3>REF(R3,1); {前三高}
R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2); S4:=R4>REF(R4,1); {前四高}

★压力1:DRAWLINE(S2,H,S1,H,1),Color80FFFF;          
★支撑1:DRAWLINE(U2,L,U1,L,1),POINTDOT,Color00FFFF,linethick2;
★压力2:DRAWLINE(S3,H,S2,H,1),ColorFF8000; 
★支撑2:DRAWLINE(U3,L,U2,L,1),POINTDOT,ColorFF8000;         
★压力3:DRAWLINE(S4,H,S3,H,1),Color0000FF;
★支撑3:DRAWLINE(U4,L,U3,L,1)POINTDOT,Color0000FF;
那老师您试着改一下这个,看能否在文华中适用
技术人员回复
日期:2018-6-5 21:24

不同软件函数机制不同,加载效果可能略有差异,参考:

 

 N:=3;
//{原码 N:=3;}
A1:=REF(H,N)=HHV(H,2*N+1);
B1:=FILTER(A1,N);
C1:=BACKSET(B1,N+1);
D1:=FILTER(C1,N);
{高点}
A2:=REF(L,N)=LLV(L,2*N+1);
B2:=FILTER(A2,N);
C2:=BACKSET(B2,N+1);
D2:=FILTER(C2,N);
{低点}
E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2;
E2:=(H+L)/2;
{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2)); 
H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1;
F1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,L,10000),X1));
G1:=F1>REF(F1,1);
I1:=BACKSET(G1,2);
LD:=I1>REF(I1,1),LINETHICK1;
{过滤后低点}
L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1;
F2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,H,0),X2));
G2:=F2>REF(F2,1);
I2:=BACKSET(G2,2);
HD:=I2>REF(I2,1),LINETHICK1;
{过滤后高点}

 


R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1);
S1:=R1>REF(R1,1);
{前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1);
U1:=T1>REF(T1,1);
{前一低}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2);
S2:=R2>REF(R2,1);
{前二高}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2);
U2:=T2>REF(T2,1);
{前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2);
U3:=T3>REF(T3,1);
{前三低}
T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2);
U4:=T4>REF(T4,1);
{前四低}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2);
S3:=R3>REF(R3,1);
{前三高}
R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2);
S4:=R4>REF(R4,1);
{前四高}


★压力1:TRENDLINES(S2,H,S1,H) ,POINTDOT,COLOR00FFFF,LINETHICK2;
DRAWTRENDLINE(S2,H,S1,H,1),COLOR80FFFF;         
★支撑1:TRENDLINES(U2,L,U1,L) ,POINTDOT,COLOR00FFFF,LINETHICK2;
DRAWTRENDLINE(U2,L,U1,L,1),POINTDOT,COLOR00FFFF,LINETHICK2;
★压力2:TRENDLINES(S3,H,S2,H) ,COLORFF8000;
DRAWTRENDLINE(S3,H,S2,H,1),COLORFF8000;
★支撑2:TRENDLINES(U3,L,U2,L) ,COLORFF8000;
DRAWTRENDLINE(U3,L,U2,L,1),POINTDOT,COLORFF8000;        
★压力3:TRENDLINES(S4,H,S3,H) ,COLOR0000FF;
DRAWTRENDLINE(S4,H,S3,H,1),COLOR0000FF;
★支撑3:TRENDLINES(U4,L,U3,L) ,COLOR0000FF;
DRAWTRENDLINE(U4,L,U3,L,1),POINTDOT,COLOR0000FF;

技术人员回复
日期:2018-6-6 9:50
 不能软件对函数处理机制不同,改写可能会出现差别:

一楼问题请参考:

N:=5;
A1:=REF(H,N)=HHV(H,2*N+1);
B1:=FILTER(A1,N);
C1:=BACKSET(B1,N+1);
D1:=FILTER(C1,N);
//{高点}
A2:=REF(L,N)=LLV(L,2*N+1);
B2:=FILTER(A2,N);
C2:=BACKSET(B2,N+1);
D2:=FILTER(C2,N);
//{低点}
E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; 
E2:=(H+L)/2;
//{高低点出现在同一K线上时可作取舍}
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2));  
H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; 
FF1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,L,10000),X1));
F1:=IF(LLVBARS(IF(L1,L,10000),X1)=0,0,FF1);
G1:=F1>REF(F1,1); 
I1:=BACKSET(G1,2); 
LD:=I1>REF(I1,1);
//{过滤后低点}
L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; 
FF2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,H,0),X2));
F2:=IF(HHVBARS(IF(H2,H,0),X2)=0,0,FF2);
G2:F2>REF(F2,1); 
I2:=BACKSET(G2,2); 
HD:I2>REF(I2,1);
//{过滤后高点}
R1:BACKSET(ISLASTBAR,BARSLAST(HD)+1);
S1:R1>REF(R1,1); 
//{前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); 
U1:=T1>REF(T1,1); 
//{前一低}
R2:BACKSET(S1,REF(BARSLAST(HD),1)+2); 
S2:R2>REF(R2,1); 
//{前二高}
T2:BACKSET(U1,REF(BARSLAST(LD),1)+2); 
U2:T2>REF(T2,1); 
//{前二低}
T3:BACKSET(U2,REF(BARSLAST(LD),1)+2); 
U3:T3>REF(T3,1); 
//{前三低}
T4:BACKSET(U3,REF(BARSLAST(LD),1)+2); 
U4:T4>REF(T4,1); 
//{前四低}
R3:BACKSET(S2,REF(BARSLAST(HD),1)+2); 
S3:R3>REF(R3,1); 
//{前三高}
R4:BACKSET(S3,REF(BARSLAST(HD),1)+2); 
S4:R4>REF(R4,1); 
//{前四高}
DRAWLINE1(S2,H,S1,H,1),COLORRED;
DRAWLINE1(U2,L,U1,L,1),COLORGREEN;
DRAWLINE1(S3,H,S2,H,1),COLORYELLOW;
DRAWLINE1(U3,L,U2,L,1),COLORGREEN;
DRAWLINE1(S4,H,S3,H,1),COLORFF00FF;
DRAWLINE1(U4,L,U3,L,1),COLORGREEN;
DRAWICON(S1,H*1.01,2);
DRAWICON(S2,H*1.01,2);
DRAWICON(S3,H*1.01,2);
DRAWICON(S4,H*1.01,2);
DRAWICON(U1,L*0.99,1);
DRAWICON(U2,L*0.99,1);
DRAWICON(U3,L*0.99,1);
DRAWICON(U4,L*0.99,1);
 
技术人员回复
日期:2018-6-6 10:07
 不同软件对函数处理的机制不同,可能会有略微差别

七楼问题请参考:

 N:=3;
//{原码 N:=3;}
A1:=REF(H,N)=HHV(H,2*N+1); 
B1:=FILTER(A1,N); 
C1:=BACKSET(B1,N+1); 
D1:=FILTER(C1,N);
{高点}
A2:=REF(L,N)=LLV(L,2*N+1); 
B2:=FILTER(A2,N); 
C2:=BACKSET(B2,N+1); 
D2:=FILTER(C2,N);

E1:=(REF(LLV(L,2*N),1)+REF(HHV(H,2*N),1))/2; 
E2:=(H+L)/2;
H1:=(D1 AND NOT(D2 AND E1>=E2)) OR ISLASTBAR OR BARSCOUNT(C)=1;
L1:=(D2 AND NOT(D1 AND E1<E2));  
H2:=D1 AND NOT(D2 AND E1>=E2);
X1:=REF(BARSLAST(H1),1)+1; 

FF1:=BACKSET(H1 AND COUNT(L1,X1)>0,LLVBARS(IF(L1,L,10000),X1));
F1:=IF(LLVBARS(IF(L1,L,10000),X1)=0,0,FF1);
G1:=F1>REF(F1,1); 
I1:=BACKSET(G1,2); 
LD:=I1>REF(I1,1),LINETHICK1;

L2:=LD OR ISLASTBAR OR BARSCOUNT(C)=1;
X2:=REF(BARSLAST(L2),1)+1; 
FF2:=BACKSET(L2 AND COUNT(H2,X2)>0,HHVBARS(IF(H2,H,0),X2));
F2:=IF(HHVBARS(IF(H2,H,0),X2)=0,0,FF2);
G2:=F2>REF(F2,1); 
I2:=BACKSET(G2,2); 
HD:=I2>REF(I2,1),LINETHICK1;

 

R1:=BACKSET(ISLASTBAR,BARSLAST(HD)+1); 
S1:=R1>REF(R1,1); 
{前一高}
T1:=BACKSET(ISLASTBAR,BARSLAST(LD)+1); 
U1:=T1>REF(T1,1); 
{前一低}
R2:=BACKSET(S1,REF(BARSLAST(HD),1)+2); 
S2:=R2>REF(R2,1); 
{前二高}
T2:=BACKSET(U1,REF(BARSLAST(LD),1)+2); 
U2:=T2>REF(T2,1); 
{前二低}
T3:=BACKSET(U2,REF(BARSLAST(LD),1)+2); 
U3:=T3>REF(T3,1); 
{前三低}
T4:=BACKSET(U3,REF(BARSLAST(LD),1)+2); 
U4:=T4>REF(T4,1); 
{前四低}
R3:=BACKSET(S2,REF(BARSLAST(HD),1)+2); 
S3:=R3>REF(R3,1); 
{前三高}
R4:=BACKSET(S3,REF(BARSLAST(HD),1)+2); 
S4:=R4>REF(R4,1); 
{前四高}

★压力1:TRENDLINES(S2,H,S1,H) ,POINTDOT,COLOR00FFFF,LINETHICK2;
DRAWTRENDLINE(S2,H,S1,H,1),COLOR80FFFF;          
★支撑1:TRENDLINES(U2,L,U1,L) ,POINTDOT,COLOR00FFFF,LINETHICK2;
DRAWTRENDLINE(U2,L,U1,L,1),POINTDOT,COLOR00FFFF,LINETHICK2;
★压力2:TRENDLINES(S3,H,S2,H) ,COLORFF8000;
DRAWTRENDLINE(S3,H,S2,H,1),COLORFF8000; 
★支撑2:TRENDLINES(U3,L,U2,L) ,COLORFF8000;
DRAWTRENDLINE(U3,L,U2,L,1),POINTDOT,COLORFF8000;         
★压力3:TRENDLINES(S4,H,S3,H) ,COLOR0000FF;
DRAWTRENDLINE(S4,H,S3,H,1),COLOR0000FF;
★支撑3:TRENDLINES(U4,L,U3,L) ,COLOR0000FF;
DRAWTRENDLINE(U4,L,U3,L,1),POINTDOT,COLOR0000FF;