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

Q:请问如何获得在指定日转变为ST股的股票?    

  • A:用户可以根据股票名称变更表的数据进行判断。思路如:变动日=指定日,变更前名称没有包含ST,且变更后名称包含ST。
    下面给出一段范例:
      //获得所有的A股
      stocks:=getbk("A股");
      //得到Stocks中指定日endt变成ST股的股票
      endt:=20170330T;
      data:=array();
      dEndt:=datetoInt(endt);
      //对股票轮询判断股票是否在endt当天变更为ST股
      for i:=0 to length(stocks)-1 do
        data&=select * from infotable 14 of stocks[i]
             where ['变动日']=dEndt
             and pos('ST',['变更前名称'])=0
             and pos('ST',['变更前名称'])=0
             and (pos('ST',['变更后名称'])>0
               or pos('ST',['变更后名称'])>0) end;
      if istable(data) then
        return data[:,'StockID'];
      return array();