[求救] 請教這個指標公式?
請教板主這個排名指標公式錯誤在什麼地方
漲幅顯示不出
錯誤在什麼地方
謝謝
PARTLINE(1,0),COLORBLACK;
N:=datacount-SYSPARAM(1);
BK:=''00水泥工業' ;//'A股板塊';
BKS:=STKCOUNT(BK);//板塊中的證券數量
HSL:STKINDI('','漲幅.zf',0,6),LINETHICK0;//'漲幅.hs';//指標
TT:='漲幅.rq';//日期定位
DD:=date;//
SS:=DATACOUNT;//
variable: DM1[BKS]='',VarX1[BKS]=0,VarH1[BKS]=0
,DM2[BKS]='',VarX2[BKS]=0,VarH2[BKS]=0
,DM3[BKS]='',VarX3[BKS]=0,VarH3[BKS]=0;//
for i=1 to BKS do begin
D:=STRRIGHT(STKFROMBLK(BK,i),6);//板塊中第i個成員的代碼
E:=if(STRFIND(bk,'00水泥工業' ,0),4,6);
DM1[i]:=strright(D,E);
TMP1:=ref(STKINDI(D,'漲幅.zf',0,6),N);//板塊中第i個成員在最後週期前N天的指標值
TMPP1:=ref(STKINDI(D,'漲幅.rq',0,6),N);//板塊中第i個成員在最後週期前N天的日期
tmpPP1:=ref(stkindi('100','漲幅.rq',0,6),N);//在最後週期前N天大盤的日期
VarX1[i]:=IF(tmpPP1[ss]=TMPP1[SS],TMP1[SS],0);
VarH1[i]:=IF(tmpPP1[ss]=TMPP1[SS],TMP1[SS],0);
end;
Va:IF(tmpPP1[ss]=TMPP1[SS],TMP1[SS],0) ,LINETHICK0;
Nu1:=SORTPOS(VarX1,1,1,BKS);
Nu2:=SORTPOS(VarX2,1,1,BKS);
Nu3:=SORTPOS(VarX3,1,1,BKS);
xss:='';
xs:='';
xsss1:='';
xss1:='';
xsss2:='';
xss2:='';
xsss3:='';
xss3:='';
for j=1 to bks do BEGIN
ff:=if(j=2,' 漲幅',' ');
ff1:=' ';
//ff2:=if(j=2,' 昨天',' ');
//ff3:=if(j=2,'前天',' ');
sf:=if(j<10,' ',if(j<100,' ',''))+NUMTOSTR(j,0)+'.';
ssf:=if(j<10,' ',if(j<100,' ',''))+NUMTOSTR(bks-j+1,0)+'.';
xsss1:=xsss1+DM1[VarX1[j]];
aa:=STRLEFT(STKNAMEEX(DM1[VarX1[j]]),8)+'('+DM1[VarX1[j]]+')'+'='
+NUMTOSTR(VarH1[VarX1[j]],3)+'% '+'\n';
XSS1:=XSS1+ff1+ff+sf+aa;
if bks-j<3 then XSS:=ssf+aa+xss;//17
if j<4 then xs:=xs+sf+aa;//19
xsss2:=xsss2+DM2[VarX2[j]];
XSS2:=XSS2+STRLEFT(STKNAMEEX(DM2[VarX2[j]]),8)+'('+DM2[VarX2[j]]+')'+'='
+NUMTOSTR(VarH2[VarX2[j]],3)+'% '+'\n';
xsss3:=xsss3+DM3[VarX3[j]];
XSS3:=XSS3+STRLEFT(STKNAMEEX(DM3[VarX3[j]]),8)+'('+DM3[VarX3[j]]+')'+'='
+NUMTOSTR(VarH3[VarX3[j]],3)+'% '+'\n';
end;
ee:=if(e=4,3,5);
a1:=STRFIND(xsss1,STKLABEL,0);
今天:=tmppp1[datacount],LINETHICK,COLORRED;
今排名:=if(a1>0,(a1+ee)/e,0),COLORRED,LINETHICK;
漲幅a:=VarH1[VarX1[今排名]],COLORRED,LINETHICK;
DRAWTEXT(barpos=SYSPARAM(2),10,xss1);
//DRAWTEXT(barpos=SYSPARAM(2),10,xss2);
//DRAWTEXT(barpos=SYSPARAM(2),10,xss3);
EXPLAIN(1,'今天'+NUMTOSTR(今天,0)+'\n 漲幅排序前3名\n'+xs),COLORRED;
EXPLAIN(1,'\n跌幅排序前3名\n'+xss),COLORBLUE;
|