以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  怎么无法控制取得哪一年的数据呢?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=171884)

--  作者:qq代人发帖
--  发布时间:2019/9/2 15:02:57
--  怎么无法控制取得哪一年的数据呢?
per:=20;
m:=0;//指定季报类型,为0则表示不做过滤,为1表示取第一季度季报,为2表示取第二季度中报,为3表示取第三季度季报,为4表示取第四季度年报;
n:=1;//第几大流通股东
a1:=FINTRADABLESHARETOP10(\'\' ,\'shName\' ,m ,0 ,n);
a2:=FINTRADABLESHARETOP10(\'\' ,\'holdPct\' ,m ,0 ,n)*100;
a3:=FINTRADABLESHARETOP10(\'\' ,\'endDate\' ,m ,0 ,n);
DRAWTEXTEX( 1, 0,0 ,n*per,a1+\' \'+NUMTOSTR(a2,2)+\'% \'+NUMTOSTR(a3,0) ,colorred);
n:=2;//第几大流通股东
a1:=FINTRADABLESHARETOP10(\'\' ,\'shName\' ,m ,0 ,n);
a2:=FINTRADABLESHARETOP10(\'\' ,\'holdPct\' ,m ,0 ,n)*100;
a3:=FINTRADABLESHARETOP10(\'\' ,\'endDate\' ,m ,0 ,n);
DRAWTEXTEX( 1, 0,0 ,n*per,a1+\' \'+NUMTOSTR(a2,2)+\'% \'+NUMTOSTR(a3,0) ,colorred);
用这段代码想要调用现在免费的深度财务数据中的十大流通股东信息,也已经下载了最新的深度财务数据,并在查看--数据--深度财务数据中看到了比如600519的2019半年报的十大流通股东了,但是公式运行的结果是这样
怎么无法控制取得哪一年的数据呢?

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

--  作者:FireScript
--  发布时间:2019/9/2 15:29:38
--  
目前无法指定到特定的年份。只能通过偏移的方式去获取历史位置的。主要是这个数据发布的日期也不是都统一固定的。所以不好处理。



--  作者:zhangt312
--  发布时间:2019/9/2 21:10:47
--  
不是要取指定特定的年份的股东信息,而是同样都是去取最新的季报的第一大股东,在不同的股票上,得到的是不同年份的;即使是同一个股票,取同样的最新的一季报,从第一大流通股东,到第十大流通股东,都是不同年份的一季报信息。尽管它们都已经有今年一季度的数据了(在查看--数据--深度财务数据中已经能看到了)
这取出来的数据随机出现,即使去调节了偏移,难道每只股票都要去调节吗   写公式就是想一劳永逸。
这个数据存储处理起来应该不难吧,没出半年报的公司也给它们留一条空记录,只记录一下半年报截止时间,比如20190630,不就可以解决吗

--  作者:FireScript
--  发布时间:2019/9/3 10:28:43
--  
你这边是取值没能取得最新的是吧。即使是财务数据里面已经有最新的了,但是看上面截图取到的还是17和18年的。我用上面代码,第二条的截止日期取的也是不对的,其他正确,我这边本地进一步核实下。