10.2 Wind平台MATLAB接口介绍

10.2 Wind平台MATLAB接口介绍

10.2.1 Wind 平台简介

Wind资讯金融终端是由上海万得信息技术股份有限公司开发的商业化金融终端,其将行情报价、数据提取、分析工具、组合管理、财经信息等多种功能应用融为一体,为专业投资研究人员提供综合性的解决方案,也使客户避免购买多家公司的不同产品,节约了客户的资讯成本。

Wind资讯金融终端人性化的界面设计、统一的操作风格、完全兼容传统行情分析软件的操作习惯、灵活的用户自定义板块、在线请求万得资讯的专业服务、强大的命令管理和不同功能间的任意切换、信息之间的相互关联、导航式的功能设计、与Excel 的完美结合等特点、极大地方便了最终用户的使用。Wind资讯金融终端开放式的体系架构和用户接口允许券商、基金管理公司等金融机构在其上构造个性化的研发支持、电子商务、投资决策、信息管理等专业应用,最大限度地节约用户投资。

为满足用户在构建模型、量化研究中对大数据量的需求,Wind陆续推出了一整套数据接口,如在Excel中推出了一系列wx多值函数,数据范围涵盖基本面序列数据、日间与日内高频行情数据、历史快照与实时截面数据、日内分钟更新数据等;之后又推出了MATLAB数据接口Beta版本,方便用户远程访问Wind 资讯云数据服务,快速提取各类行情与基本面数据。

10.2.2 MATLAB接口简介

1. MATLAB接口启动方式及接口界面

升级Wind 终端程序到最新版本,双击运行WFT金融终端程序目录bin下的InitMatlab.exe文件,注册MATLAB控件,操作界面如图10-26所示。

弹出如图10-27所示的窗口,表示注册成功 。单击"确定"按钮,启动 MATLAB即可。若注册不成功, 请确认是否有管理员权限 。

单击Wind资讯菜单按钮,即可弹出数据接口向导,如图10-28所示。用户可以通过向导来熟悉WindMATLAB数据接口的各项功能,也可以生成提取数据的命令行或者直接提取数据到MATLAB变量当中。

2. MATLAB接口命令

1) windMATLAB

用来创建windMATLAB数据提取对象,比如w=windMATLAB,即可创建w对象句柄。help windMATLAB可查看windMATLAB各类接口命令说明。

2) menu

用来显示Wind数据向导工具条,也可以指定只显示特定的向导窗体。比如w.menu('wsd')只显示wsd向导窗体。

查看menu说明,可以输入help windMATLAB/menu。

3) isconnected

用来确定创建的Wind Data Object对象是否成功登录,比如x=isconnected(w)判断Wind对象w是否已经登录成功。

4) cancelRequest

可以根据创建的数据请求D取消数据请求。比如订阅了实时数据后返回reqid,若想取消订阅,则可以运行命w.canceIRequest(reqid) 。

5) wsd

返回选定证券品种的历史序列数据,包括日间的行情数据、基本面数据及技术数据指标。其相关函数语法为:

[data, codes, fields , times, errorid, reqid] =w.wsd(windCodes, windFields, startTime,endTime,varargin)

其中,data表示返回序列数据结果集,codes表示返回提取数据的WindCode代码,fields表示返回提取的指标名,times表示返回时间序列,errorid表示返回错误ID,reqid表示返回请求ID。

6) wsi

返回指定品种的日内分钟K线数据,包括历史数据和当天数据,分钟周期可以指定,技术指标参数可以自定义设置,其相关的函数语法为:

[data, codes, fields, times, errorid, reqid]=w.wsi(windCodes, windFields, startTime,endTime, varargin)

7) wst

返回日内盘口买卖十档快照数据和分时成交数据,其函数语法为:

[data, codes, fields , ti.mes, errorid, reqid]=w.wst(windCodes, windFields, startTime,endTime, varargin)

8) wss

返回指定品种的历史截面数据,比如取沪深300只股票2012年第3季度的净利润财务指标数据,其相关的函数语法为:

[data, codes, fields , times , errorid, reqid)=w.wss(windCodes, windFields, varargin)

9) wsq

返回当天实时指标数据,数据可以一次性请求,也可以通过订阅的方式获取当日实时行情数据。一次性请求实时行情数据的函数语法为:

[data, codes, fields, times, errorid, reqid)=w. wsq(windCodes, windFields)

订阅实时行情数据的函数语法为:

[data, codes, fields, times, errorid, reqid)=w.wsq(windCodes, windFields, callback)

其中,callback为回调函数,用来指定实时指标触发时执行相应的回调函数。

3. MATLAB接口使用案例

在WindMATLAB向导中,Sample和Manual分别为案例程序和使用帮助手册,如图10-29所示。

Sample指在安装目录下的MATLAB文件夹里有数据接口使用的Demo程序。指单击弹出MATLAB数据接口帮助手册。

【例10-18】Wind平台MATLAB接口的使用案例。

1) 提取历史序列数据

提取00000l.SZ 的开高低收数据,起始时间前推100天,截止时间最新的前复权数据。

2) 提取分钟序列数据

提取中金所IF股指期货当月连续合约的3分钟数据,截止时间最新,起始时间前推100天。

3) 提取历史截面数据

提取若干只股票在2012年11月30日的自由流通股本数据。