发现了一点问题,由于wind数据将H股统计在流通股内,在34个含H股的股票中,原数据有错误,甚至出现了流通股统计超过100%的情况。现在对含H股的股票,采用统计机构持股的方法。公式重做如下:
(如果不求完美,用前面公式可以节约系统资源)
复制内容到剪贴板
代码:
t1:=F10FIND('|★最新财务指标★ |',1);//wind数据
zd1:=F10FIND('公司简况→',t1);
zd2:=SYSPARAM(2)=BARPOS;
t2:=f10find('|wind行业分类 |',zd1);
zd3:=f10find('股东研究→',zd1);
zd4:=f10find(' 流通股东名称',zd3);
zd5:=F10FIND('│大流通股东持股(万股) ',zd3);
zd6:=if(F10TEXT(zd5+54,4)='增加',1,-1);
dzl1:=STRTONUM(F10TEXT(F10FIND('│基金持股(万股) ',zd3)+25,8)),PRECISION0;
dzl2:=STRTONUM(F10TEXT(F10FIND('│QFII持股(万股) ',zd3)+25,8)),PRECISION0;
dzl3:=STRTONUM(F10TEXT(F10FIND('│社保基金持股(万股) ',zd3)+25,8)),PRECISION0;
dzl4:=STRTONUM(F10TEXT(F10FIND('│券商持股(万股) ',zd3)+25,8)),PRECISION0;
qzl1:=STRTONUM(F10TEXT(F10FIND('│基金持股(万股) ',zd3)+40,8)),PRECISION0;
qzl2:=STRTONUM(F10TEXT(F10FIND('│QFII持股(万股) ',zd3)+40,8)),PRECISION0;
qzl3:=STRTONUM(F10TEXT(F10FIND('│社保基金持股(万股) ',zd3)+40,8)),PRECISION0;
qzl4:=STRTONUM(F10TEXT(F10FIND('│券商持股(万股) ',zd3)+40,8)),PRECISION0;
dzlh:=dzl1+dzl2+dzl3+dzl4;
qzlh:=qzl1+qzl2+qzl3+qzl4;
hzj:=(dzlh/qzlh-1)*100;
hbl:=dzlh/capital*10000;
zl:=STRTONUM(F10TEXT(zd5+25,8));
bl:=STRTONUM(F10TEXT(F10FIND(' 总 计',zd4)+48,6));
zj:=STRTONUM(F10TEXT(zd5+58,6))*zd6;
主力:if(FINANCE( 6)>0,dzlh,zl),PRECISION0,LINETHICK0,COLORGREEN;
比例%:if(FINANCE( 6)>0,hbl,bl),LINETHICK0,COLORred;
增减%:if(FINANCE( 6)>0,hzj,zj),PRECISION2,LINETHICK0,COLORGREEN;
wz:='财务数据截止日期:'+F10TEXT(t1+26,10)+' 行业类别:'+F10TEXT(t2+18,24)+'\n股本变动截止日期:'+F10TEXT(f10find('◇最新:',zd3)+7,10);
DRAWTEXT(zd2,1,wz),ALIGN3,Color408000;