FAQ > 金融建模 > 建模问题 > 股票相关

Q:陆港通中指定日A股标的是否存在H股、该H股在指定日是否为港股通标的?    

  • A:相关实现介绍
    相关链接:FAQ:Q:天软中提供哪些港股通数据?分别如何提取?
    1、取指定日陆港通标的
      t1:=getbkbydate('HG000002',Endt);//沪股通
      t2:=getbkbydate('HG000004',Endt);//深股通
      t3:=t1 union2 t2;//陆股通=沪股通+ 深股通
     
    2、A股是否有H股
    根据基本信息表中的'H股代码'进行判断,若取出来存在则有H股,若无,则没有H股
    例如判断万科A:
    h:= spec(base(10045),'SZ000002');//返回H股代码
    return ifstring(h)&&trim(h)<>'';//若返回非空字符串,则存在

    3、H股是否是港股通标的
      Endt:=20210126T;
      AStock:='SZ000002';
    //取指定日港股通标的代码集合
      t1:=getbkbydate('HG000001',Endt);//指定日港股通(沪)
      t2:=getbkbydate('HG000003',Endt);//指定日港股通(深)
      t3:=t1 union2 t2;//指定日港股通=港股通(沪)+ 港股通(深)
    //判断万科A的H股在20210126日是否是港股通中的标的
      h:= spec(base(10045),AStock);
      return h in t3; //返回1

    范例:
    // 判断2021年01月26日陆股通的标的A股是否存在H股,若存在,则该日H股是否为港股通标的
     Endt:=20210126T;
    //指定日陆港通标的
      t1:=getbkbydate('HG000002',Endt);//沪股通
      t2:=getbkbydate('HG000004',Endt);//深股通
      Astocks:=t1 union2 t2;//陆股通=沪股通 + 深股通
    //取指定日港股通标的代码集合
      t1:=getbkbydate('HG000001',Endt);//指定日港股通(沪)
      t2:=getbkbydate('HG000003',Endt);//指定日港股通(深)
      t3:=t1 union2 t2;//指定日港股通=港股通(沪)+ 港股通(深)
      ret:=array();
      for i:=0 to length(Astocks)-1 do
      begin
        ret[i,'AstockID']:=Astocks[i];
        HStock:=spec(base(10045),Astocks[i]);
        ret[i,'HStockID']:=HStock;
        ish:='-';
        if ifstring(HStock)&&trim(HStock)<>'' then
         ish:=HStock in t3;
        ret[i,'HisInArr']:=ish;
      end
      return ret;

    返回结果(不存在H股的为'-',存在H股且为港股通标的的为1,否则为0: