FAQ > 金融建模 > 建模问题 > 期货相关

Q:月均价期货数据说明    

  • A:2025-10-28大商所部分品种月均价期货开始上市交易:http://www.dce.com.cn/dce/content/2025/ywggytz/18623631.html
    本文主要介绍天软对该数据处理。
    在天软中,月均价期货与普通期货,由于数据都是独立的,因此,两种期货也分为独立的两个品种在维护,数据上与普通期货品种一样,有基本信息表,主力,连续,指数线等。
    在编码上与普通期货合约有差异,具体表现如下:
    编码规则
    期货合约:品种+合约到期年份(2位数字)+合约到期月份(2位数字)+F,如:v2602F、l2602F等
    月均价品种代码:品种+“_F”,如聚氯乙烯月均价:v_F
    主力线代码:ZL+品种+10+F,主力线是昨持仓最大的合约
    主力线2代码:ZL+品种+00+F,主力线2是最近5个交易日昨持仓总和、成交量总和均为最大的合约
    次主力线代码:ZL+品种+11+F,次主力线是昨持仓第二大的合约
    指数线代码:QI+品种+10+F
    连续线代码:LX+品种+xx+F,其中:xx=00表示连续代码,xx=01表示连一代码,xx=02表示连二代码……,详情如下:
    商品期货:一般有5个,连续、连一、连二、连三、连四,
      连续:当月合约的连续;
      连一:当月合约后第一个合约的连续;
      连二:当月合约后第二个合约的连续;
      连三:当月合约后第三个合约的连续;
      连四:当月合约后第四个合约的连续。
    主力|连续|指数等虚拟合约代码对照表
    品种名称品种代码主力合约代码主力合约代码2次主力合约代码指数线代码连续连一连二连三连四
    聚氯乙烯月均价v_FZLV10FZLV00FZLV11FQIV10FLXV00FLXV01FLXV02FLXV03FLXV04F
    聚乙烯月均价l_FZLL10FZLL00FZLL11FQIL10FLXL00FLXL01FLXL02FLXL03FLXL04F
    聚丙烯月均价pp_FZLPP10FZLPP00FZLPP11FQIPP10FLXPP00FLXPP01FLXPP02FLXPP03FLXPP04F

    更多期货编码规则及虚拟合约代码对照表参考:FAQ:Q:期货代码、名称(连续合约、主力合约、指数合约)编制规则
    取数说明
    板块相关
    范例01:获取所有月均价期货品种
    return sselect thisrow from getbk("期货品种代码") where ansipos("_F",thisrow) end;
    //array("l_F","pp_F","v_F"),不同日期执行结果不一样

    范例02:获取指定品种指定日在市的月均价期货合约
    //获取聚氯乙烯月均价品种指定日在市合约
    return GetFuturesID("v_F",20251030t);
    //array("v2602F","v2603F","v2604F")

    范例03:获取指定日在市的所有月均价品种期货合约
      pzs:=sselect thisrow from getbk("期货品种代码") where ansipos("_F",thisrow) end;
      return GetFuturesID(array2str(pzs,";"),20251030t);

    范例04:获取指定品种所有月均价期货合约
    //获取聚氯乙烯月均价品种所有合约
    return getbkall("聚氯乙烯月均价");

    基本面相关
    范例05:获取指定月均价期货的基本信息
    参考:FAQ:期货基本信息
    return select * from infotable 703 of array("v2602F","v2603F","v2604F") end;
    部分结果:


    范例06:获取所有月均价期货品种的品种代码对照表 
    参考:FAQ:期货品种代码对照表
      pzs:=sselect thisrow from getbk("期货品种代码") where ansipos("_F",thisrow) end;
      return select * from infotable 708 of pzs end;



    范例07:获取月均价期货品种主力信息变更记录
    参考:FAQ:期货主力信息
      //获取聚氯乙烯月均价品种主力合约信息
      return select * from infotable 700 of "ZLV10F" end;



    范例08:获取指定日月均价期货品种的主力合约
      ////获取聚氯乙烯月均价品种指定日主力合约代码
      return ZLToFuturesID("ZLV10F",20251030t);//v2602F

    行情相关
    取数参考:FAQ:Q:高频、超高频数据说明
    范例09:获取日线行情
      setsysparam(pn_cycle(),cy_day());//设置为日线
      t:= select ['StockID'],['StockName'],datetostr(['date']) as 'date',['close'],
            ['vol'],['amount'],['buy1'],['bc1'],['sale1'],['sc1']
        from Markettable datekey 20251029T to 20251030T of array("v2602F","v2603F","v2604F") end;
      return t;



    范例10:获取分钟线行情
      setsysparam(pn_cycle(),cy_1m());//设置为分钟线
      t:= select ['StockID'],['StockName'],datetimetostr(['date']) as 'date',['close'],
            ['vol'],['amount'],['buy1'],['bc1'],['sale1'],['sc1']
        from Markettable datekey 20251029.1800T to 20251030.1800T of 'v2602F' end;
      return t;