大金融行业必备数据终端操作手册-wind python数据及交易接口_第1页
大金融行业必备数据终端操作手册-wind python数据及交易接口_第2页
大金融行业必备数据终端操作手册-wind python数据及交易接口_第3页
大金融行业必备数据终端操作手册-wind python数据及交易接口_第4页
大金融行业必备数据终端操作手册-wind python数据及交易接口_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WindWindPythonVersionShanghaiWindInformation 浦东新区福山路33号建工9h版本历时更新备WINDPY接口说 WINDPY接口概 WINDPY接口安 WindPy对系统环境要 Python环境安 正常WindPy接口安 接口向导界 WINDPY获取帮助途 本用户手 量化交易群和R语 WINDPY接口相关规 以下所有命令都有如下假 命令区分大小写,且“w.”不能省 中文以及单字节码和双字节码的问 品种、指标、参数等引号内的部分不区分大小 参数支持list输 参数中有缺省值的可以不用输 可以带参数名输 Showblank参 ErrorCode定 WINDPY插件命令说 fromWindPyimport*:装载WindPy w.start:启动 w.stop:停止 W.ISCONNECTED:判断是否已经登 w.cancelRequest:取消订 W.WSD:获取历史序列数 W.WSI:获取分钟数 W.WST:获取日内TICK级别数 W.WSS:获历史截面数 W.WSQ:获取和订阅实时行情数 W.WSET:获取板块、指数等成分数 W.WEQS:获取条件选股结 W.WPF:获取资产管理、组合管理数 交易相关函 w.tlogon交易登 w.tlogout交易登 w.torder委托下 w.tcancel撤销委 w.tquery交易查 W.TDAYS,W.TDAYSOFFSET,W.TDAYSCOUNT:日期函 w.tdays:返回区间内的日期序 w.tdaysoffset:返回某个偏移值对应的日 w.tdayscount:返回某个区间内日期数 WINPY插件函数体说 日期序列 历史截面数据 分钟序列 日内跳价 实时数据 数据集 条件选股 资管函数 组合上传函数 交易函 登录 登出 下单 撤单 查询 日期函 特定交易日 日期偏移函数 交易日统计 日期 通用日期 特殊日期 WINDPYTHON应用案 常见问 交易接口查询返回的数据字 5.1.1查询返回消 持仓查询返回消 当日委托查询返回消 当日成交查询返回消 营业部查询返回消 股东查询返回消 券商(商)信息返 已登录账户信息返 WindPy接口说明WindPy接口概述20137月,我们Python数据接口Beta版本,在支持多种量化研WindPy接口安装WindPy对系统环境要求Wind终端版2013年9月27日后版本 Python环境安装Python是一个古老、成 语言,拥有大量的工具包,是在GNU协议下免费的。与 、R相比,Python具有更好的开放性,更适合Python地址为 限,否则可能需要手工安装WindPy插件。正常WindPy接口安装 用户可以在量化菜单下选择修复Python插件,或者输入))Python插件安装框特殊安装WindPy方式假设Wind终端安装在 下有bin等等子 ,Python安装在C:\python28 首先通过Windows进入cmd命令,然后输入如下命令即可:py""c:\wind\.client\windnet"接口向导界面种命令,是熟悉WindPy的必要。但由于Python环境问题,WindPy没有 WindR一般,WindR向导产生的语句只要修改赋值号<-为=即可,WindWindPy获取帮助途径用户可以通过如下方式获取WindPy本用户手册量化交易群和R语言用户可以通过WM申请加入中国量化交易群(群号 (群60747)和Python 61862 WindPy接口相关规范以下所有命令都有如下假设fromWindPyimportwfromdatetimeimport*命令区分大小写,且“w.”不能省略如:w.tdaysoffset(-1)不能写成tdaysoffset(-1),或者w.TDaysOffset(-中文以及单字节码和双字节码的问题中文常使字节编码,这在Python中使用时就会错误。比如引号、逗号、括号等输入的字符串中若存在中文,有的平台可以直接输入中文,而有的需要使用unicode编码,即如:u”上 品种、指标、参数等引号内的部分不区分大小写比 w.wsd('090007.IB','close',Sys.Date()-和w.wsd('090007.ib','CLOSE',Sys.Date()- 一样参数支持list输入时间、日期支 Python语言的时间、日期格比如参数中有缺省值的可以不用输入w.wsdw.wsd(codesfieldsbeginTimeendTimeNoneoptionsNone),可选参数和结束时间都有缺如:w.wsd('600000.SH','open','20130505')等同 可以带参数名输入w.wsdw.wsd(codesfieldsbeginTimeendTimeNoneoptionsNone)。w.wsd("600000.SH","high","2013-05-09",datetime.today(),"Period=W")等同于Showblank参数Showblank参数可以指定对返回的NaN单元进行特别处理把NaN用-1替换: w.wsd('600001.sh','open,close','20130707','20130909',showblank=-把NaN用0替换:交易接口中Showfields参数showfields参数。如或 ErrorCode定义ErrorCode=0表示操作成---------40521010-40520009本地WBOX错 -40520010需要内容不存----未登录使用WIM工具,故无--IO操作---------40521010网络超--话-------40522009不支持的指标参 -40522010日期与时间语法错-------在手册中,有些带有中文内容令不能运行,此时请尝试把非unicode改成unicode,或者unicode改成非unicode,即在字符串前增加或删除“u”如 u"date=20130608;sector=风险警示改 w.wset("SectorConstituent","date=20130608;sector=风险警示fromWindPyimport*:装WindPy在具体运行各种命令前,用户首先应装载WindPy实例:fromWindPyimportw.start:启动在真正开始操作之前,可以使用该命令登录并启动windPy插件实例:fromWindPyimport*w.start(waitTime=60);#命令超时时间设置成60注w.start不重复启动,若需要改变参数,如超时时间,用户可以使用w.stop命令先停止后再启动w.stop:停止当需要停止WindPy时,可以使用该实例注:退出时,会自动执行w.stop(),用户一般并不需要执行w.stopw.isconnected:判断是否已经登录可以使用该命令确定windPy是否登陆成功。实例w.isconnected()#即判断WindPy是否已经登陆成w.cancelRequest:取消订阅该命令用来根据订阅请求的id,取消订阅(目前只有w.wsq订阅实例:fromWindPyimport*w.cancelRequest(data$RequestID);#根据刚才wsq返回的请求ID,取消订阅注:可以象w.cancelRequest(3)一样,输入一个id的数字,而取消某订阅w.wsd:获取历史序列数据实例:fromWindPyimport*data=w.wsd("600000.SH","close,amt","2013-04- datetime.today()-timedelta(1))#取浦发银行收盘息 datetime.today()-timedelta(100))#取浦发银行收盘价注:1)一次只能一个品种,并且品种名带有“.SH”等后缀指标和可选参数也可以用list实现日期支持Python可选参数有很多种w.wsi:获取分钟数据该命令用来获取选定品种的分 线数据,包含历史和当天,分钟周期可以指定,技术指标参数可以自定义设置。命令原=实例:w.wsi("600000.SH","close,amt","2013-05-309:00:00")#取浦发银行分钟收盘价等信息注:1)一次只能一个品种,并且品种名带有“.SH”等后缀指标和可选参数也可以用list实现日期支持R可选参数有很多种一次只能取3w.wst:获取日内tick级别数据fromWindPyimport*data=w.wst("600000.SH","open",datetime.today()-timedelta(0,2*3600),datetime.now())#取浦发银行tick注:1)一次只能一个品种,并且品种名带有“.SH”等后缀指标和可选参数也可以用list实现日期支持R可选参数有很多种目前只支持当天数据(假日可以取上一交易日数据w.wss:获历史截面数据命令用来获取选定品种的历史截面数据,比如取沪深300只的2012年3季度的净利润财务指标数据。命令原型为=实例fromWindPyimport*注:1)一次只能取一个报告期,但可以取多个品种数品种代码、指标和可选参数也可以用list实现可选参数有很多种w.wsq:获取和订阅实时行情数据命令用来获取选定品种的当天实时指标数据,数据可以请求,也可以通过订阅的方式获取。命令原型为data=w.wsq(品种代码,指标,可选参数,回调函数实例注

fromWindPyimport*w.wsq("600000.SH,000001.SZ","rt_last,rt_last_vol")#取浦发银行等当前行情信息data=w.wsq("600000.SH","rt_low,rt_last_vol",func=DemoWSQCallback)#订阅浦发银行等当前行情信息w.cancelRequest(data.RequestID)#取消订用户自己定义的回调函数格式请参 DemoWSQCallback,回调函数中不应处理复杂的操作品种代码、指标和可选参数也可以用list实现;用户可以一次提取或者订阅多个品种数订阅时 发现用户订阅内容发生变化则调用回调函数,并且只把变动的内容传递给回调函数w.wset:获取板块、指数等成分数据品、回购担保品、停牌、复牌、分红送转。参数设置为起止日期、板块名称等。命令原型为:data=w.wset(数据集名称,fromWindPyimport*w.wset("SectorConstituent",u"date=20130608;sector=全部")#取全 代码、名称信#取沪深300指数中代码和权#取ST等风险警示信w.wset("SectorConstituent",u"date=20130608;sector=风险警示w.weqs:获取条件选股结果用来某个条件选股的结果。命令原型为:data=实例fromWindPyimport*#事先已经创建了“七日新低”这个条件选股。(可以在终端上输入eqs创建w.weqs('七日新低注1)可选参数也可以用listw.wpf:获取资产管理、组合管理数据用来交易账户与资管账户中的报表数据。命令原型为:data=w.wpf(产品名,数据表名,可选参数实例fromWindPyimport* Data=w.wpf(u"总账-MMM","AMS.PortfolioDailySerial")#取资产管理AMS中"总账-MMM"产品日数据序列信息注:1)可选参数也可以用listams需要先,并创建了产品之后才能使用,具体可以联系Windpms有缺省产品“组合管理演示”,用户可以使用交易相关函数w.tlogon交易登录命令用来登录交易系统。命令原型为:data=w.tlogon(BrokerID,DepartmentID,LogonAccount,Password,返回参Data.Fields返回内容列的标题 返回的数据,每个标题有对应的一列数据,最后两列为错误号和错Data.ErrorCode命令是否成功的错误码,0表示成例如:Wind终端账号为w0812638的用户自动开启了'w081263801'模拟交易账号,'w081263802'模拟交易账>>> #同时登陆>>>.Data=[[1,2],[u'w081263801',u'w081263802'],[u'SZSHA',u'CFE'],[0,0],[u'OK',注本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充3)有WFT账号的用户,已经自动开通模拟账号,其中模拟账号为:WFT账号+01,为WFT账号w.tlogout交易登出命令用来登出交易系统。命令原型为:dataw.tlogout((LogonID返回参Data.Fields返回内容列的标题 返回的数据,每个标题有对应的一列数据,最后两列为错误号和错例如:退出登陆ID为1,2两个账号>>>.Data=[[u'1',u'2'],[0,0],[u'logout',注本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充只有一个交易登录时,可以不输入LogonIDw.torder委托下单命令用来委托下单。命令原型为:data=w.torder(SecurityCodeTradeSideOrderPriceOrderVolumeMarketType="",OrderType="",HedgeType="",LogonID="")返回参Data.Fields返回内容列的标题 返回的数据,每个标题有对应的一列数据,最后两列为错误号和错Data.ErrorCode命令是否成功的错误码,0表示成功例如w.torder('600000.SHbuy9.8100,logonid=1.Fields=[u'RequestID',u'SecurityCode',u'TradeSide',u'OrderPrice',u'OrderVolume',u'LogonID',u'ErrorCode',u'ErrorMsg'].Data=[[23],[u'600000.SH'],[u'Buy'],[u'9.8'],[u'100'],[u'1'],[0],[u'Sending例如>>>>>>>>>.Fields=[u'RequestID',u'SecurityCode',u'TradeSide',u'OrderPrice',u'OrderVolume',u'LogonID',u'ErrorCode',u'ErrorMsg'][u'1',u'1'],[0,0],[u'Sending...',u'Sending注本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入。4)TradeSide可以为:1/buy2/short3/cover4/sell;5/coverToday6/sellToday5)OrderType可以为:0/LMT;1/BOC;2/BOP;3/ITC;4/B5TC;5/FOK;6/B5TL;当用户输入的代码没有带.的市场后缀时,需要提供MarketTypeMarketTyp可以取:0SZ;1/SZ;2/OC;6/HK;7/CZC;9/DCE;可以通 w.tquery(‘order’,requestid=XXX)查询委托情套保账号时一定需要加上HedgeType=HEDG/1,因为缺省是投机SPEC0w.tcancel撤销委托命令用来撤销委托。命令原型为:data=w.tcancel(OrderNumber,MarketTypeLogonID返回参Data.Fields返回内容列的标题 返回的数据,每个标题有对应的一列数据,最后两列为错误号和错Data.ErrorCode命令是否成功的错误码,0表示成功例如>>>.Data=[[u'24',u'25'],[u'1',u'1'],[0,02],[u'Sending...',u'Sending注本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入当用户有很多笔不同市场的下单时,OrderNumber可能会有重复,此时需要使用MarketType区别,MarketType可以取:0/SZ;1/SZ;2/OC;6/HK;7/CZC;8/SHF;9/DCE;10/CFE;w.tquery交易查询命令用来查询交易相关各信息。命令原型为:data=w.tquery(qrycode,...,LogonID="",RequestID="",OrderNumber="",SecurityCode="",options="")返回参Data.Fields返回内容列的标题 返回的数据,每个标题有对应的一列数据,最后两列为错误号和错例如>>>w.tquery(0,logonid=[1,2])#查询情.Fields=[u'MoneyType',u'AvailableFund',u'BalanceFund',u'SecurityValue',u'FundAsset',u'TotalAsset',u'Profit',u'FundFrozen',u'OtherFund',u'BuyFund',u'SellFund',u'FetchFund',u'ExerciseMargin',u'RealFrozenMarginA',u'RealFrozenMarginB',u'HoldingProfit',u'TotalFloatProfit',u'InitRightsBalance',u'CurrRightsBalance',u'FloatRightsBal',u'RealDrop',u'RealDrop_Float',u'FrozenFare',u'CustomerMargin',u'LogonID',u'ErrorCode',u'ErrorMsg'].Data=[[u'CNY',u'CNY'],[9988360.0,9917730.0],[9989220.0,10000000.0],[7548.6000000000004,[9988360.0,None],[9995910.0,None],[-0.079000000000000001,None],[0.0,None],[0.0,None],[861.0,[0.0,None],[None,0.0],[None,82238.399999999994],[None,0.0],[None,0.0],[None,0.0],[None,[None,9999970.0],[None,9999970.0],[None,9999970.0],[None,0.0],[None,0.0],[None,[None,82238.399999999994],[None,0.0],[None,0.0],[None,0.0],[u'\u6a21\u62df\u5f00\u6237',[u'W081',None],[u'W0812638',u'W0812638'],[u'W081263801',u'W081263802'],[1,2],[0,0],[u'OK',>>>w.tquery(2,logonid=1w.tquery(7.Data=[[1,2],[u'w081263801',u'w081263802'],[u'SZSHA',u'CFE'],[0,0],[u'',注 qrycode外,本命令支持向量操作,也即其他每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入qrycode可取:0/capital查询;1/position持仓查询;2/order今日委托查询;3/trade今日成交查询营业部查询;5/account股东账号查询;6/broker经济商查询;7/logonid登录的账今日委托查询2/order时可以依据委托order返回的requestid查询,该查询立即返回,返回服务器已经返回的信息营业部查询时4/department,需要输入brokerid w.tdaysoffset,w.tdayscount:日期函数w.tdays:返回区间内的日期序列实例:fromWindPyimport*w.tdays("2013-05-01","2013-06-08")#返回5月1日到6月8日之间的交易日序w.tdays("2013-05-01")#返回5月1日到当前时间的交易日序注时间支持Pythonw.tdaysoffset:返回某个偏移值对应的日期实例:fromWindPyimport*w.tdaysoffset(-5,"2013-05-01")#返回5月1日前推五个交易日的日期,返回2013-4-19注时间支持Pythonw.tdayscount:返回某个区间内日期数量返回参data$Data返回的序列数据,为data.frame ode无意data$ErrorCode命令是否成功的错误码,0表示成功fromWindPyimport*w.tdayscount("2013-05-01","2013-06-08")#返回5月1日到6月8日之间的交易日序列长度,为w.tdayscount("2013-05-01")#返回5月1注时间支持Python WinPy插件函数体说明日期序列函数名:范例:范例范例范例范例1:’2011-01-01’,’-用方式参考’日期宏’范例ementDWMQSY,默认ement1:’Days=Trading’,默认ement1:’Fill=Previous’,默认ementAD1:Order=A’Orderement范例1:TradingCalendarSSE’,默认TradingCalendarSSE;SSE表示上交所,SZSE表示交易所,CFFE表示中金所,DCE表示大商所,CZCE表示郑商所,SHFE表示上期所,HKEX表示交易所,TWSE表示交易所,Nasdaq表示纳斯达克交易所,NYSE表示纽约交易所,NYMEX表示纽约商品交易所,COMEX表示纽约金属交易所,NYBOT表示纽约交易所,CME表示芝加哥商业交易所。CBOT表示芝加哥商品交易所,LME表示伦敦金属交易所,IPE表示伦敦国际石油交易所。历史截面数据函数名w.wss(security,fields,option):ement范例ement范例ement范例ement范例分钟序列函数名w.wsi(securityfieldsstarttimeendtime返回日内分钟K线数据,包含当天: ement范例范例ementementement范例ement1-1:BarSize=1ement1:’Fill=Previous’,默认日内跳价函数名w.wst(securityfieldsstarttimeendtime返回日内盘 :1:’600030.SH范例实时数据函数名w.wsq(security,fieldsoptionsNonefunc:范例范例范例数据集函数名:WSET,返回,基金,债券,商品等专题统计报表的数据数据集: ement提取数据集的VIEWView参数(可选 ement提取指标时使用的参数名指定参数的值字段列表(可选 ement获取字段列表的数据范例1:'sector=全部条件选股函数名:WEQS,返回终端筛选的集数据集: 终端条件选股的方案范例1:'方案',万得资讯终端上选股方案名为’方案’资管函数函数名WPFAMS组合ID/名称(必须 ement提取数据集的组合ID称(在AMS系统中是产品名称范例1:"武当一期View名称(必选 ementg提取数据集的报表名1:"PortfolioDaily组合创建人(可选 ement共享的,在此给出该组合的创建人Wind帐号View参数(可选 ementg提取报表时使用的参数名g指定参数的值范例 字段列表(可选 ementg获取字段列表的数据组合上传函数 CNYUSD 为当日收盘价。现金价格为1。 说明:默认为 1:ʺ 登录经纪商代码(必须

经纪商的代码,每家经纪商都有一个编码。1:0000即WTTS营业部代码(必选

TypeDescriptionStri券商营业部代码范例1:"0",0表示不必填写。账号(必选

账 为账号

(必选

Type

提取报表时使用的参数名账范例1:"aaa",#WFT用户模拟账号字段列表(必选

账户类型,其含义如下。 郑州商品 商 大连商品 股指商品登出函数名tlogout登 ID(单账号登录可选,多账号登录时 登录号。1:0000下单函数名torder,委托下单。Wind码(必选 Wind代码。也可以直接输入交易代码,但此时需要提供MarketType1:600000.SH交易方向(必选交易方向//卖出开//买入平范例1:"Buy"或者委托价格(必选价交易数量(必选数价格委托方式(可选委托方式,默认为限价交易。LMT0//限价委BOC1//bestofcounterparty.对方最优价格委托BOP2//bestofparty.本方最优价格委托ITC3//immediaythencancel.即时成交剩B5TC4//best5thencancel.最优五档剩余撤销FOK5//fillorkill.全额成交或撤销委托B5TL6//best5thenlimit.最优五档剩余转限1:OderType="LMT套保标志(可选 是否为投机套保。确实为SPEC投机,如果选择套SPEC'0'//'0'-HEDG'1'//'1'-保登 ID(单账号登录时可选,多账号时必选登录号。市场类型(可选当输入的是交易代码不是Wind码时,需要输入市 -港 //商 //商 ( //商 //股 撤单函数名tcancel委托号(必选 委托号。范例1:22表示委托号是22。委托号可以通过w.tquery(2)得到市场类型(可选 市场类型。当OrderNumber存在重复时必填。 -港 //商 //商 ( //商 //股 1:MarketType登录ID(单账号登录时可选登录1:查询函数名tquery查询内容(必选查询字段含义如下: Department 登录号LogonID(可选;多账号时,qrycode=0-3,5时必选 1:

登录号。请求号查询(可选

1:

系统生成请求号。Qrycode=’Order’/2有意义。立即返回本地委托状态委托号(可选

委托号 Qrycode=’Order’/’Trade’有意义

(可选

Wind代码;Qrycode=‘Position’、‘order’‘Trade’有意义经纪商ID(可选):

1:

Qrycode=’Department’日期函特定交易日函数名:TDays(startDate,endDate,[Optional释义TradingCalendar指定特定交易所交易日,从StartDate到交易日(或日历日)的列表Period ement范 1:"2011-01-01",支持日期 ement范 1:"2011-06-30",支持日期日期类型(可选 ement范例1:"Days=Trading”,默认 ementDWMQSY1:"Period=D"用,只有当DAYS为交易日的时候,这个参数才起作用默认 交易所日期偏移函数TDaysOffset(offset,refDate[Optional释义:TradingCalendar指定特定交易所交易日,从refDate起,OffSet(偏移,>0后推,<0前推)个Period(周期)的日期Elemenement日期类型(可选Elemenement范例1:"Days=Trading”,默认ElemenementDWMQSY1:"Period=DTradingCalendar(可选用,只有当DAYS为交易日的时候,这个参数才起作用默认Elemenement交易日统计释义:TradingCalendar指定特定交易所交

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论