WindAPI文档
目录
- WindAPI文档
- 2.调用WindPy
- 3. 获取日时间序列函数WSD
- 4.获取日截面数据函数WSS
- 5. 获取分钟序列数据函数WSI
- 6. 获取日内tick数据函数WST
- 7.实时行情数据函数 WSQ
- 8.获取板块日序列数据函数WSES
- 9. 获取板块日截面数据函数WSEE
- 10.获取报表数据函数WSET
- 11. 获取全球宏观经济数据函数EDB
- 12.交易登录函数tlogon
- 13.交易登出函数tlogout
- 14.交易委托下单函数torder
- 15.交易撤销委托函数tcancel
- 16.交易情况查询函数tquery
- 17.获取组合报表数据函数WPF
- 18.获取组合多维数据函数WPS
- 19.获取组合序列数据函数WPD
- 20.组合上传函数WUPF
- 21.获取区间内日期序列tdays
- 22.获取某一偏移值对应的日期tdaysoffset
- 23.获取某个区间内日期数量tdayscount
- 24. 日期宏说明
2.调用WindPy
WindPy API接口可用于获取各类高质量的金融数据,在使用时可借助万矿或Wind终端的API代码生成器生成获取数据的函数代码,而无需记住各类繁杂的参数说明及函数手册。具体使用流程如下:
首先,用户必须加载WindPy,然后执行w.start()启动API接口
from WindPy import w
w.start() # 默认命令超时时间为120秒,如需设置超时时间可以加入waitTime参数,例如waitTime=60,即设置命令超时时间为60秒
w.isconnected() # 判断WindPy是否已经登录成功
Welcome to use Wind Quant API for Python (WindPy)!
COPYRIGHT (C) 2017 WIND INFORMATION CO., LTD. ALL RIGHTS RESERVED.
IN NO CIRCUMSTANCE SHALL WIND BE RESPONSIBLE FOR ANY DAMAGES OR LOSSES CAUSED BY USING WIND QUANT API FOR Python.
True
可以使用如下命令停止WindPy:
w.stop() # 当需要停止WindPy时,可以使用该命令
# 注: w.start不重复启动,若需要改变参数,如超时时间,用户可以使用w.stop命令先停止后再启动。
# 退出时,会自动执行w.stop(),一般用户并不需要执行w.stop
需要注意的是,程序退出时会自动执行w.stop(),因此一般用户并不需要执行w.stop()
3. 获取日时间序列函数WSD
w.wsd(codes, fields, beginTime, endTime, options)
支持股票、债券、基金、期货、指数等多种证券的基本资料、股东信息、市场行情、证券分析、预测评级、财务数据等各种数据。wsd可以支持取 多品种单指标 或者 单品种多指标 的时间序列数据
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str或list | 否 | 无 | 证券代码,支持获取单品种或多品种, 如“600030.SH”或[“600010.SH”,“000001.SZ”] |
fields | str或list | 否 | 无 | 指标列表,支持获取单指标或多指标, 如“CLOSE,HIGH,LOW,OPEN” |
beginTime | str或datetime | 是 | endTime | 起始日期,为空默认为截止日期, 如: “2016-01-01”、“20160101”、“2016/01/01”、 "-5D"(当前日期前推5个交易日)、datetime |
endTime | str或datetime | 是 | 系统当前日期 | 如: “2016-01-05”、“20160105”、“2016/01/05”、 "-2D"(当前日期前推2个交易日) 、datetim |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。 如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Days | str | 是 | ‘Trading’ | 日期选项,参数值含义如下: Weekdays: 工作日, Alldays: 日历日, Trading: 交易日 |
Fill | str | 是 | ‘Blank’ | 空值填充方式。参数值含义如下: Previous:沿用前值, Blank:返回空值, 如需选择自设数值填充, 在options添加“ShowBlank=X", 其中X为自设数。 |
Order | str | 是 | ‘A’ | 日期排序, “A”:升序, “D”:降序 |
Period | str | 是 | ‘D’ | 取值周期。参数值含义如下: D:天, W:周, M:月, Q:季度, S:半年, Y:年 |
TradingCalendar | str | 是 | ‘SSE’ | 交易日对应的交易所。参数值含义如下: SSE :上海证券交易所, SZSE:深圳证券交易所, CFFE:中金所, TWSE:台湾证券交易所, DCE:大商所, NYSE:纽约证券交易所, CZCE:郑商所, COMEX:纽约金属交易所, SHFE:上期所, NYBOT:纽约期货交易所, HKEX:香港交易所, CME:芝加哥商业交易所, Nasdaq:纳斯达克证券交易所, NYMEX:纽约商品交易所, CBOT:芝加哥商品交易所, LME:伦敦金属交易所, IPE:伦敦国际石油交易所 |
Currency | str | 是 | ‘Original’ | 输入币种。参数值含义如下: Original:“原始货币”, HKD:“港币”, USD:“美元”, CNY:“人民币” |
PriceAdj | str | 是 | 不复权 | 股票和基金(复权方式)。参数值含义如下: F:前复权, B:后复权, T:定点复权;债券(价格类型) CP:净价, DP:全价, MP:市价, YTM:收益率 |
注:
1.Fields和Parameter也可以传入list,比如可以用[“CLOSE”,“HIGH”,“LOW”,“OPEN”]替代“CLOSE,HIGH,LOW,OPEN”;
2.获取多个证券数据时,Fields只能选择一个。
3.日期支持相对日期宏表达方式,日期宏具体使用方式参考’日期宏’部分内容
4.options为可选参数,可选参数多个,在参数说明详细罗列。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的数据,比如读取000592.SZ的close指标从’2017-05-08’到’2017-05-18’区间的数据,返回值为.Data=[[5.12,5.16,5.02,4.9,4.91,5.13,5.35,5.42,5.32]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[000592.SZ] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[CLOSE] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20170508,20170509,20170510,20170511,20170512,20170515,20170516, 20170517,20170518] |
- 示例说明
w.start()
# 任取一只国债010107.SH六月份以来的净值历史行情数据
history_data=w.wsd("010107.SH", "sec_name,ytm_b,volume,duration,convexity,open,high,low,close,vwap", "2018-06-01", "2018-06-11", "returnType=1;PriceAdj=CP", usedf=True)
# returnType表示到期收益率计算方法,PriceAdj表示债券价格类型‘
history_data[1].head()
Welcome to use Wind Quant API for Python (WindPy)!
COPYRIGHT (C) 2017 WIND INFORMATION CO., LTD. ALL RIGHTS RESERVED.
IN NO CIRCUMSTANCE SHALL WIND BE RESPONSIBLE FOR ANY DAMAGES OR LOSSES CAUSED BY USING WIND QUANT API FOR Python.
SEC_NAME | YTM_B | VOLUME | DURATION | CONVEXITY | OPEN | HIGH | LOW | CLOSE | VWAP | |
---|---|---|---|---|---|---|---|---|---|---|
2018-06-01 | 21国债(7) | 3.591328 | 38318000.0 | 2.958463 | 11.297840 | 102.10 | 102.15 | 101.92 | 101.98 | 101.977496 |
2018-06-04 | 21国债(7) | 3.613196 | 30240000.0 | 2.950157 | 11.239785 | 101.91 | 101.98 | 101.90 | 101.91 | 101.941359 |
2018-06-05 | 21国债(7) | 3.596003 | 31485000.0 | 2.947486 | 11.226217 | 101.85 | 101.97 | 101.85 | 101.96 | 101.933362 |
2018-06-06 | 21国债(7) | 3.605539 | 177095000.0 | 2.944708 | 11.206388 | 102.06 | 102.06 | 101.76 | 101.93 | 101.867666 |
2018-06-07 | 21国债(7) | 3.591661 | 52440000.0 | 2.942024 | 11.192059 | 101.92 | 102.00 | 101.79 | 101.97 | 101.935645 |
4.获取日截面数据函数WSS
w.wss(codes, fields, option)
同样支持股票、债券、基金、期货、指数等多种证券的基本资料、股东信息、市场行情、证券分析、预测评级、财务数据等各种数据。但是WSS支持取多品种多指标某个时间点的截面数据。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
windCodes | str或list | 否 | 无 | 证券代码,支持获取单品种或多品种如’600030.SH’或[‘600010.SH’,‘000001.SZ’] |
Fields | str或list | 否 | 无 | 指标列表,支持获取多指标如’CLOSE,HIGH,LOW,OPEN’ |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
注:
1.wss函数一次只能提取一个交易日或报告期数据,但可以提取多个品种和多个指标;
2.wss函数可选参数有很多,rptDate,currencyType,rptType等可借助代码生成器获取;
3.wss函数支持输出DataFrame数据格式,需要函数添加参数usedf=True。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的数据,比如读取"600111.SH,600340.SH,600485.SH" 的"eps_basic,profittogr"指标20161231(即2016年的年报)的数据,返回值为.Data=[[0.025,2.22,0.52],[1.5701,11.4605,51.8106]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[600111.SH,600340.SH,600485.SH] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[EPS_BASIC,PROFITTOGR] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20180824] |
- 实例说明
# 取被动指数型基金最新业绩排名
fund=w.wset("sectorconstituent","date=2018-06-11;sectorid=2001010102000000").Data[1]
error_code,returns=w.wss(fund, "sec_name,return_1w,return_1m,return_3m,return_6m,return_1y,return_ytd,fund_fundmanager", "annualized=0;tradeDate=20180611",usedf=True)
returns.head(10)
SEC_NAME | RETURN_1W | RETURN_1M | RETURN_3M | RETURN_6M | RETURN_1Y | RETURN_YTD | FUND_FUNDMANAGER | |
---|---|---|---|---|---|---|---|---|
000008.OF | 嘉实中证500ETF联接A | -0.838095 | -5.460048 | -8.500791 | -9.612825 | -4.733439 | -9.155421 | 何如,陈正宪 |
000051.OF | 华夏沪深300ETF联接A | -0.324412 | -1.837061 | -7.245283 | -6.397563 | 7.055749 | -5.534204 | 张弘弢,赵宗庭 |
000059.OF | 国联安中证医药100A | -0.595570 | -2.197400 | 5.730971 | 6.511118 | 10.465357 | 7.162921 | 黄欣 |
000248.OF | 汇添富中证主要消费ETF联接 | -2.027110 | 4.086663 | 3.756870 | 7.402945 | 36.666383 | 2.793081 | 吴振翔,过蓓蓓 |
000368.OF | 汇添富沪深300安中动态策略 | -0.912972 | -1.263172 | -6.199092 | -8.297368 | 5.092302 | -6.836287 | 吴振翔 |
000373.OF | 华安中证细分医药ETF联接A | -0.575816 | 0.974659 | 7.617729 | 10.604982 | 21.122369 | 10.920771 | 苏卿云 |
000376.OF | 华安中证细分医药ETF联接C | -0.584795 | 0.923483 | 7.519325 | 10.389610 | 20.662461 | 10.709117 | 苏卿云 |
000596.OF | 前海开源中证军工A | -1.858108 | -10.821182 | -9.992254 | -16.821761 | -16.642755 | -13.670134 | 黄玥,陶曙斌 |
000613.OF | 国寿安保沪深300ETF联接 | -0.466362 | -2.298627 | -8.014672 | -7.232036 | 5.015025 | -6.409778 | 李康 |
000656.OF | 前海开源沪深300 | -0.932994 | -2.990033 | -8.535630 | -7.080350 | 3.454384 | -5.654281 | 黄玥 |
5. 获取分钟序列数据函数WSI
w.wsi(codes, fields, beginTime, endTime, options)
用来获取国内六大交易所(上海交易所、深圳交易所、郑商所、上金所、上期所、大商所)证券品种的分钟线数据,包含基本行情和部分技术指标的分钟数据,分钟周期为1-60min,技术指标参数可以自定义设置。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str或list | 否 | 无 | 证券代码,支持获取单品种或多品种,如’600030.SH’或[‘600010.SH’,‘000001.SZ’] |
fields | str或list | 否 | 无 | 指标列表,支持获取单指标或多指标,,如’CLOSE,HIGH,LOW,OPEN’ |
beginTime | str或datetime | 是 | endTime | 分钟数据的起始时间,支持字符串、datetime/date如: “2016-01-01 09:00:00” |
endTime | str或datetime | 是 | 当前系统时间 | 分钟数据的截止时间,支持字符串、datetime/date如: “2016-01-01 15:00:00”,缺省默认当前时间 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
BarSize | str | 是 | “1” | BarSize在1-60间选择输入整数数字,代表分钟数 |
Fill | str | 是 | ‘Blank’ | 空值填充方式。参数值含义如下:Previous:沿用前值,Blank:返回空值 如需选择自设数值填充,在options添加“ShowBlank=X", 其中X为自设数。 |
PriceAdj | str | 是 | U | 股票和基金(复权方式)。参数值含义如下: U:不复权, F:前复权, B:后复权。 |
注
1.wsi一次支持提取单品种或多品种,并且品种名带有“.SH”等后缀;
2.wsi提取的指标fields和可选参数option可以用list实现;
3.wsi支持国内六大交易(上交所、深交所、大商所、中金所、上期所、郑商所)近三年的分钟数据;
4.wsi函数支持输出DataFrame数据格式,需要函数添加参数usedf=True,如例2.
5.wsi支持多品种多指标,单次提取一个品种支持近三年数据,若单次提多个品种,则品种数*天数≤100。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 类型 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 读取中国平安"601318.SH"的"open,high"指标2017-06-01 09:30:00至2017-06-01 10:01:00的五分钟数据,返回值为.Data=[[45.4,45.15,45.42,45.34,45.47,45.48],[45.63,45.49,45.56,45.52,45.51,45.72]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[600111.SH,600340.SH,600485.SH] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[open,high] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20170601 09:35:00,20170601 09:40:00,20170601 09:45:00,20170601 09:50:00,20170601 09:55:00,20170601 10:00:00] |
- 示例说明
# 取IF00.CFE的分钟数据
from datetime import *
codes="IF00.CFE"
fields="open,high,low,close"
error,data=w.wsi(codes, fields, "2017-06-01 09:30:00", datetime.today(), "",usedf=True)
#其中,datetime.today()是python内置的日期函数,表示当前时刻。
data.head()
open | high | low | close | |
---|---|---|---|---|
2017-06-01 09:30:00 | 3479.4 | 3479.6 | 3475.2 | 3479.6 |
2017-06-01 09:31:00 | 3479.8 | 3485.8 | 3479.8 | 3484.8 |
2017-06-01 09:32:00 | 3485.0 | 3485.0 | 3479.4 | 3481.6 |
2017-06-01 09:33:00 | 3481.8 | 3482.8 | 3476.6 | 3477.6 |
2017-06-01 09:34:00 | 3478.0 | 3480.4 | 3476.8 | 3478.4 |
6. 获取日内tick数据函数WST
w.wst(codes, fields, beginTime, endTime, options)
用获取国内六大交易所(上海交易所、深圳交易所、郑商所、上金所、上期所、大商所)证券品种的日内盘口买卖五档快照数据和分时成交数据(tick数据).
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str或list | 否 | 无 | 证券代码,支持获取单品种,如’600030.SH’ |
fields | str或list | 否 | 无 | 指标列表,支持获取单指标或多指标,,如’CLOSE,HIGH,LOW,OPEN’ |
beginTime | str或datetime | 是 | endTime | 分钟数据的起始时间,支持字符串、datetime/date如: “2016-01-01 09:00:00” |
endTime | str或datetime | 是 | 当前系统时间 | 分钟数据的截止时间,支持字符串、datetime/date如: “2016-01-01 15:00:00”,缺省默认当前时间 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
注:
1.wst只支持提取单品种,并且品种名带有“.SH”等后缀;
2.wst提取的指标fields可以用list实现;
3.wst支持国内六大交易(上交所、深交所、大商所、中金所、上期所、郑商所)近七个交易日的tick数据;
4.wst函数支持输出DataFrame数据格式,需要函数添加参数usedf=True。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 类型 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的tick数据,读取中国平安"601318.SH"的"last,bid1"指标2017-06-13 09:30:00至2017-06-13 9:31:00的tick数据,返回值为.Data=[[9.11,9.11,9.11,9.11,9.11,9.11,9.11,9.11,9.11,9.11,…],[9.11,9.11,9.12,9.11,9.11,9.11,9.11,9.11,9.11,9.12,…]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[601318.SH] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[open,high] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20170601 09:35:00,20170601 09:40:00,20170601 09:45:00,20170601 09:50:00,20170601 09:55:00,20170601 10:00:00] |
- 示例说明
# 提取平安银行(000001.SZ)当天的买卖盘数据。
from datetime import * # 设置起始时间和截止时间,通过wst接口提取序列数据
begintime=datetime.strftime(datetime.now(),'%Y-%m-%d 09:30:00')
endtime=datetime.strftime(datetime.now(),'%Y-%m-%d %H:%M:%S')
# last最新价,amt成交额,volume成交量
# bid1 买1价,bsize1 买1量 # ask1 卖1价, asize1 卖1量
codes="000001.SZ"
fields="last,bid1,ask1"
w.wst(codes,fields,begintime,endtime)
.ErrorCode=0
.Codes=[000001.SZ]
.Fields=[last,bid1,ask1]
.Times=[20200420 09:30:00,20200420 09:30:03,20200420 09:30:06,20200420 09:30:09,20200420 09:30:12,20200420 09:30:15,20200420 09:30:18,20200420 09:30:21,20200420 09:30:24,20200420 09:30:27,...]
.Data=[[12.85,12.86,12.87,12.86,12.86,12.87,12.86,12.87,12.87,12.87,...],[12.84,12.86,12.87,12.86,12.85,12.87,12.85,12.86,12.87,12.86,...],[12.85,12.87,12.88,12.87,12.86,12.88,12.87,12.87,12.88,12.87,...]]
7.实时行情数据函数 WSQ
w.wsq(codes, fields, options, func)
用来获取股票、债券、基金、期货、指数等选定证券品种的当天指标实时数据,可以一次性请求实时快照数据,也可以通过订阅的方式获取实时数据
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str或list | 否 | 无 | 证券代码,支持获取单品种或多品种,如:"600030.SH,000001.SZ "、[“600030.SH”,“000001.SZ”]’ |
fields | str或list | 否 | 无 | 指标列表,支持获取多指标,,如’CLOSE,HIGH,LOW,OPEN’ |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
func | str | 是 | None | func默认为None, 此时以一次性快照方式获取数据,func=DemoWSQCallback时, 以订阅的方式实时返回行情数据, DemoWSQCallback的函数定义可参考API帮助中心的案例 |
注:
1.wsq函数的参数中品种代码、指标和可选参数也可以用list实现;用户可以一次提取或者订阅多个品种数据多个指标;
2.wsq函数订阅模式下只返回订阅品种行情有变化的订阅指标, 对没有变化的订阅指标不重复返回实时行情数据;
3.wsq订阅时,API发现用户订阅内容发生变化则调用回调函数,并且只把变动的内容传递给回调函数。
4.用户自己定义的回调函数格式请参考API帮助中心的案例,回调函数中不应处理复杂的操作;
5.wsq函数快照模式支持输出DataFrame数据格式,需要函数添加参数usedf=True。
- 返回说明
快照模式下函数输出字段解释如下:
返回码 | 类型 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的快照数据,读取中国平安"601318.SH "的"rt_last,rt_open"指标快照数据.Data=[[54.16],[53.72]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[601318.SH] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[open,high] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20170626 17:50:53] |
订阅模式下函数输出字段解释如下:
w.wsq运行后,会将行情传入回调函数DemoWSQCallback, 传入数据为WindData类型,具体数据字段信息如下:
返回码 | 类型 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
StateCode | 状态ID | 返回订阅时的字段,无实质意义…StateCode=1 |
RequestID | 请求ID | 返回订阅的请求ID.RequestID=4 |
Code | 证券代码列表 | 返回获取实时数据的品种列表, 只返回行情变动指标对应的品种…Code=[601318.SZ] |
Fileds | 字段列表 | 返回获取的实时数据的指标列表, 只返回行情变动的指标列表.Fields=[RT_OPEN,RT_LAST] |
Times | 时间列表 | 返回获取数据的本地时间戳.Times=[20170626 17:50:53] |
Data | 数据列表 | 返回函数获取的实时行情数据,获取中国平安"601318.SH" 的"rt_last,rt_open"指标订阅数据.Data=[[54.16],[53.72]] |
取消实时行情订阅函数CancelRequest
w.cancelRequest(RequestID)
用来根据w.wsq的订阅请求ID来取消订阅
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
RequestID | int | 否 | 无 | 输入取消订阅的订阅ID, 支持取消单次订阅和全部订阅.支持格式: 1或0 |
注:
1.可以像w.cancelRequest(3)一样,输入一个id的数字,而取消某订阅;
2.请求ID为0代表取消全部订阅,即输入w.cancelRequest(0)。
- 示例说明
data=w.wsq("600000.SH","rt_low,rt_last_vol",func=DemoWSQCallback)#订阅
#等待回调,用户可以根据实际情况写回调函数
#....
#根据刚才wsq返回的请求ID,取消订阅
w.cancelRequest(data.RequestID)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-5-047e2c44ae46> in <module>()
----> 1 data=w.wsq("600000.SH","rt_low,rt_last_vol",func=DemoWSQCallback)#订阅
2 #等待回调,用户可以根据实际情况写回调函数
3 #....
4 #根据刚才wsq返回的请求ID,取消订阅
5 w.cancelRequest(data.RequestID)
NameError: name 'DemoWSQCallback' is not defined
8.获取板块日序列数据函数WSES
w.wses(codes, fields, beginTime, endTime, options)
用来获取沪深股票、香港股票、全球股票的板块的历史日序列数据,包括依据板块个股数据计算的板块日行情数据、基本面数据以及盈利预测数据等。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str | 否 | 无 | 支持获取单板块或多板块如:“a001010100”、[“a001010200”,“a001010200”] |
fields | str | 否 | 无 | 仅支持单指标如:“sec_close_avg” |
beginTime | str | 是 | 截止日期 | 为空默认为截止日期如: “2016-01-01”、“20160101”、“2016/01/01”、"-5D"(当前日期前推5个交易日)、datetime/date格式 |
endTime | str | 是 | 当前系统日期 | 如: “2016-01-05”、“20160105”、“2016/01/05”、"-2D"(当前日期前推2个交易日) 、datetime/date格式 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些经常被用到的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Fill | str | 是 | “Blank” | 空值填充方式。参数值含义如下: Previous:沿用前值, Blank:返回空值 如需选择自设数值填充,在options添加“ShowBlank=X", 其中X为自设数。 |
Period | str | 是 | “D” | 取值周期。参数值含义如下: D:天, W:周, M:月, Q:季度, S:半年, Y:年 |
Days | str | 是 | “Trading” | 日期选项。参数值含义如下: Weekdays:工作日, Alldays: 日历日, Trading:交易日 |
TradingCalendar | str | 是 | “SSE” | 交易日对应的交易所。参数含义如下: SSE : 上海证券交易所, SZSE: 深圳证券交易所, CFFE: 中金所, TWSE: 台湾证券交易所, DCE: 大商所, NYSE: 纽约证券交易所, CZCE: 郑商所, COMEX: 纽约金属交易所, SHFE: 上期所, NYBOT: 纽约期货交易所, HKEX: 香港交易所, CME: 芝加哥商业交易所, Nasdaq: 纳斯达克证券交易所, NYMEX: 纽约商品交易所, CBOT: 芝加哥商品交易所, LME: 伦敦金属交易所, IPE: 伦敦国际石油交易所 |
DynamicTime | str | 是 | “1” | “0”:使用板块历史成分,“1”:使用板块最新成分 |
注:
1.wses函数一次性可选取多个板块一个指标来提取日期序列数据;
2.wses函数支持Python中的date或datetime时间格式;
3.wses函数支持输出DataFrame数据格式,需要函数添加参数usedf=True. 如例1.
4.板块名称或板块ID可通过板块查询工具查找
- 返回说明
如果不指定used=True,该函数将返回一个windData对象,包含以下成员:
返回码 | 类型 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 比如读取上证A股和深证A股近两日的平均收盘价"sec_close_avg"指标数据,返回值为.Data=[[13.00764,13.31552],[ 12.88665,13.19833]] |
Codes | 证券代码列表 | 返回获取数据的板块ID.Codes=[a001010200000000, a001010300000000] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[sec_close_avg] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20180828] |
- 示例说明
# 提取上证A股和深证A股的当日平均收盘价信息。
errorCode,data=w.wses("a001010200000000,a001010100000000", "sec_close_avg", "2018-08-21", "2018-08-27", "", usedf=True)
data.head()
a001010200000000 | a001010100000000 | |
---|---|---|
2018-08-21 | 13.138751 | 13.007229 |
2018-08-22 | 12.988484 | 12.837115 |
2018-08-23 | 13.076611 | 12.955727 |
2018-08-24 | 13.026604 | 12.907473 |
2018-08-27 | 13.335344 | 13.219980 |
9. 获取板块日截面数据函数WSEE
w.wsee(codes, fields, options)
获取沪深股票、香港股票、全球股票选定板块的历史日截面数据,比如取全部A股板块的平均行情数据、平均财务数据等。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | str | 否 | 无 | 支持获取单板块或多板块如:“a001010100”、[“a001010200”,“a001010200”]、 |
fields | str | 否 | 无 | 仅支持单指标如:“sec_close_avg” |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了国歌参数,以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
DynamicTime | str | 是 | “1” | 0:使用板块历史成分,1:使用板块最新成分 |
注:
1.wsee函数一次只能提取一个交易日数据,但可以提取多个板块和多个指标;
2.wsee函数可选参数有很多,unit,currencyType等可借助代码生成器获取;
3.wsee函数支持输出DataFrame数据格式,需要函数添加参数usedf=True,如例1;
4.板块名称或板块ID可通过板块查询工具查找。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 比如读取上证A股和深证A股近两日的平均收盘价"sec_close_avg"指标数据,返回值为.Data=[[13.00764,13.31552],[ 12.88665,13.19833]] |
Codes | 证券代码列表 | 返回获取数据的板块ID.Codes=[a001010200000000, a001010300000000] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[sec_close_avg] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20180828 ] |
- 示例说明
# 提取上证A股和深证A股的当日平均收盘价信息。
errorCode,data=w.wsee("a001010200000000,a001010300000000","sec_close_avg","tradeDate=20180827",usedf=True)
data.head()
SEC_CLOSE_AVG | |
---|---|
a001010200000000 | 13.335344 |
a001010300000000 | 13.141531 |
10.获取报表数据函数WSET
w.wset(tableName, options)
用来获取数据集信息,包括板块成分、指数成分、ETF申赎成分信息、分级基金明细、融资标的、融券标的、融资融券担保品、回购担保品、停牌股票、复牌股票、分红送转等报表数据。
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
tableName | str | 否 | 无 | 输入获取数据的报表名称,可借助代码生成器生成如:" SectorConstituent ", |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
注:
1.数据集涉及内容较多,并且每个报表名称均不同,建议使用代码生成器生成代码,更方便地获取数据;
2.wset函数支持输出DataFrame数据格式,需要函数添加参数usedf = True, 如例2.
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的报表数据,比如读取全部A股2018-08-27的板块成分,返回值为.Data=[[2018-08-27,2018-08-27,…],[ 000001.SZ,000002.SZ,…],[平安银行,万科A,…]] |
Codes | 证券代码列表 | 返回获取数据的板块ID.Codes=[1,2,3,4,5,6,7,8,9,10,…] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[date,wind_code,sec_name] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20180828] |
- 示例说明
# 获取申万一级行业的成分股
sw_index=w.wset("sectorconstituent","date=2018-06-12;sectorid=a39901011g000000",usedf=True)
sw_index[1].head(5)
date | wind_code | sec_name | |
---|---|---|---|
1 | 2018-06-12 | 801010.SI | 农林牧渔(申万) |
2 | 2018-06-12 | 801020.SI | 采掘(申万) |
3 | 2018-06-12 | 801030.SI | 化工(申万) |
4 | 2018-06-12 | 801040.SI | 钢铁(申万) |
5 | 2018-06-12 | 801050.SI | 有色金属(申万) |
11. 获取全球宏观经济数据函数EDB
w.edb(codes, beginTime, endTime, options)
用来获取Wind宏观经济数据库中的数据信息,为用户提供了一个方便查看及导出宏观/行业板块数据的工具。宏观经济数据库现在包括中国宏观经济、全球宏观经济、行业经济数据、商品数据、利率数据这几大类。
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
codes | String/ List | 否 | 无 | 输入获取数据的指标代码,可借助代码生成器生成格式如"M5567877,M5567878" ,[“M5567877”,“M5567878”] |
beginTime | str | 是 | 截止日期 | 为空默认为截止日期如: “2016-01-01”、“20160101”、“2016/01/01”、"-5D"(当前日期前推5个交易日)、datetime/date类型 |
endTime | str | 是 | 系统当前日期 如: “2016-01-05”、“20160105”、“2016/01/05”、"-2D"(当前日期前推2个交易日) 、datetime/date类型 |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Fill | str | 是 | ‘Blank’ | 空值填充方式。参数值含义如下: Previous:沿用前值, Blank:返回空值 如需选择自设数值填充,在options添加“ShowBlank=X", 其中X为自设数。 |
注:
1.edb函数对接Wind终端宏观经济数据库, 其中的指标一般都可以通过API下载;
2.edb函数支持输出DataFrame数据格式,需要函数添加参数usedf = True, 如例1。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回函数获取的数据,比如读取 M5567878,M5567879从’2017-05-08’到’2017-05-18’的季度数据,返回值为.Data[[83128.5,85232.9,96176.7,77451.3,91847.2],[104097.2,107120.5,114167.0,112427.8,115147.8]] |
Codes | 证券代码列表 | 返回获取数据的证券代码列表.Codes=[M5567878,M5567879] |
Field | 指标列表 | 返回获取数据的指标列表.Fields=[CLOSE] |
Times | 时间列表 | 返回获取数据的日期序列.Times=[20170508,20170509,20170510,20170511,20170512,20170515,20170516,20170517,20170518] |
- 示例说明了
# 提取我国近十年三大产业的GDP值
from datetime import *
w.edb("M0001395,M0001396,M0001397,M0001400,M0028610,M0045788","ED-10Y","2017-06-28","Fill=Previous",usedf = True)
(0, M0001395 M0001396 M0001397 M0001400 M0028610 M0045788
2007-12-31 270092.3 27674.1 126630.5 115787.7 20494.0 14.2
2008-12-31 319244.6 32464.1 149952.9 136827.5 24100.0 9.7
2009-12-31 348517.7 33583.8 160168.8 154765.1 26180.0 9.4
2010-12-31 412119.3 38430.8 191626.5 182061.9 30808.0 10.6
2011-12-31 487940.2 44781.5 227035.1 216123.6 36302.0 9.6
2012-12-31 538580.0 49084.6 244639.1 244856.2 39874.0 7.9
2013-12-31 592963.2 53028.1 261951.6 277983.5 43684.0 7.8
2014-12-31 643563.1 55626.3 277282.8 310654.0 47173.0 7.4
2015-12-31 688858.2 57774.6 281338.9 349744.7 50237.0 7.0
2016-12-31 746395.1 60139.2 295427.8 390828.1 54139.0 6.8
2017-12-31 832035.9 62099.5 331580.5 438355.9 60014.0 6.9)
12.交易登录函数tlogon
w.tlogon(BrokerID, DepartmentID, LogonAccount, Password, AccountType, options, func)
可以登录资金账号或者量化模拟账号,登录成功时系统自动为登录号生成一个登录ID logonID, 作为登录账号的唯一标示.
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
BrokerID | str / list | 否 | 无 | 输入模拟交易或期货实盘交易的经纪商ID,经纪商ID可借助代码生成器获取, 模拟交易为"0000" |
DepartmentID | str | 否 | 无 | 输入模拟交易或实盘交易的经纪商营业部ID。(绝大部分证券和期货柜台无需指定营业部代码,即填0;请使用命令生成器确认详情) |
LogonAccount | str | 否 | 否 | 输入模拟交易或实盘交易的资金账号. 若是模拟交易,账号需在Wind终端WTTS模块开通,其中: 股票(沪深A股+沪市B股+深市B股)模拟账号为WFT账号+01, 期货(中金、上期、大商、郑商)模拟账号为WFT账号+02, 衍生品(上交所期权)模拟账号为WFT账号+03, 港股模拟账号为WFT账号+04 |
Password | str | 否 | 否 | 输入资金账号对应的资金密码模拟交易资金密码为任意值 |
AccountType | str | 否 | 否 | 账户的市场类型。参数值含义如下: SHSZ:深圳上海A CZC:郑商所 SHF:上期所 DCE:大商所 CFE:中金所 SHO:上证期权 HK:港股 |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
func | str | 是 | None | 输入CTP委托/成交回报的回调函数, 期货CTP账号登录下, 通过回调函数返回委托或成交信息,其中: 001:委托回报, 4002:成交回报。 |
注:
1.w.tlogon支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充;
2.Wind终端WTTS模块开通模拟交易账号,其中股票模拟账号为:WFT账号+01,期货为WFT账号+02,衍生品为WFT账号+03,港股为WFT账号+04。
3.w.tlogon可以登录实盘资金账号或者模拟交易账号,登录成功时系统自动生成一个登录号登录ID,用于标识登录账号。退出登录时也是使用登录ID登出。
- 返回说明
该函数返回WindData对象,包含以下成员:
字段 | 解释 | 说明 |
---|---|---|
.ErrorCode | 错误码 | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
.Field | 返回数据的字段名称 | 返回登录信息的字段。字段含义如下: LogonID: 返回登录账号的登录ID, LogonAccount:返回登录时输入的登录账号, AccountType:返回账号类型,即账号所属市场, ErrorCode:返回登录错误码,正常登录错误码为0, ErrorMsg:返回登录错误信息 例如:终端账号为w0817573登录期权模拟交易账户.Fields=[LogonID,LogonAccount,AccountType,ErrorCode,ErrorMsg] |
.Data | 返回数据的值 | 返回登录信息字段对应的具体值, 如.Data=[[3],[W081757303],[SHO],[0],[]] |
- 示例说明
# Wind终端账号为W0812638的用户终端WTTS模块创建了'W081263801'股票模拟交易账号,'W081263802'期货模拟交易账号, 则登录代码为同时登录两个账号
LogonID=w.tlogon('0000',0,['w081263801','w081263802'],'000000',['sh','cfe']) # 登录股票模拟账号
w.tlogon("0000","","W081756801","****","SHSZ")
13.交易登出函数tlogout
w.tlogout(LogonID, options)
根据账号登录时的logonID退出登录
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
LogonID | str | 否 | 无 | logon登录返回或 tquery(‘LogonID’)查询返回,输入LogonID登出,输入LogonID登出。登出时调用LogonID即可,只有单个交易登录时可缺省。 |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
注:
1.w.tlogout的登录参数LogonID支持的格式为“0”、0、LogonID = “1”.
2.只有一个交易登录时,登出可不输入LogonID。
- 返回说明
该函数返回WindData对象,包含以下成员:
字段 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回登出信息字段对应的具体值, 如.Data=[[1],[0],[logout]] |
Field | 指标列表 | 返回登录信息的字段,其中: LogonID:登录返回的ID ErrorCode:返回登录错误码。正常登录错误码为0, ErrorMsg:返回登录错误信息 例如: 终端账号为w0817573登录期权模拟交易账户.Fields=[LogonID,LogonAccount,AccountType,ErrorCode,ErrorMsg] |
14.交易委托下单函数torder
w.torder(SecurityCode, TradeSide, OrderPrice, OrderVolume, options)
用于登录账号的委托下单
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
SecurityCode | str | 否 | 无 | 输入委托下单证券代码, 如“600000.SH”,可输入交易代码,此时需指定MarketType |
TradeSide | str | 否 | 否 | 输入委托下单的交易方向, 根据不同品种选择交易方向. 参数值含义如下: Buy / 1: 买入开仓、证券买入, Short / 2: 卖出开仓, Cover / 3: 买入平仓, Sell / 4: 卖出平仓、证券卖出, CoverToday / 5: 买入平今仓, SellToday / 6 卖出平今仓, ShortCovered / 7: 备兑开仓, CoverCovered / 8: 备兑平仓 |
OrderPrice | str或int | 否 | 否 | 输入委托下单的委托价格格式: “10.12”、10.12 |
OrderVolume | str或int | 否 | 否 | 输入委托下单的委托数量格式:“100”、100 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
OrderType | str | 是 | “LMT” | 输入委托方式,默认为限价交易 “OrderType=LMT”。参数值含义如下: LMT / 0: 限价委托, BOC / 1: 对方最优价格委托, BOP / 2: 本方最优价格委托, ITC / 3: 即时成交剩余撤销, B5TC / 4: 最优五档剩余撤销, FOK / 5: 全额成交或撤销委托(市价FOK), B5TL / 6: 最优五档剩余转限价, ALO: 竞价限价盘, ACO: 竞价盘, ELO: 增强限价盘, SLO: 特别限价盘, FOK_LMT: 全额成交或撤销委托(限价FOK), EXE: 期权行权, MTL: 市价剩余转限价。 深证支持方式为LMT / 0, BOC / 1, BOP / 2, ITC / 3, B5TC / 4, FOK / 5 上证支持方式为LMT / 0, B5TC / 4, B5TL / 6 期权支持方式为LMT / 0, ITC / 3, FOK / 5, FOK_LMT , EXE, MTL 港股支持方式为LMT / 0, ALO, ACO, ELO, SLO 期货支持方式为LMT / 0 |
HedgeType | str | 是 | “SPEC” | 选择投机套保类型,可选参数。默认为"HedgeType=Spec", 选择套保需要专门的保账号。HedgeType可取值如下: Spec:投机 Hedge:套保 |
LogonID | str | 是 | 否 | logon登录返回或 tquery(‘LogonID’)查询返回,用于区分多个账号同时登录,输入登录ID, 单账号时可不填,多账号时必选,来自于账户登录的登录ID,如 “LogonID=1” |
MarketType | str | SH | “SH” | 输入市场类型,SecurityCode为交易码时需要填写,默认"MarketType=SH", 参数值含义如下: SZ / 0: 证券-深圳, SH / 1: 证券-上海, OC / 2: 证券-深圳特(三版), HK / 6: 证券-港股, CZC / 7: 商品期货(郑州), SHF / 8: 商品期货(上海), DCE / 9: 商品期货(大连), CFE / 10: 股指期货(中金) |
注:
1.本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充;
2.只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入;
3.当用户输入的代码没有带.的市场后缀时,需要提供MarketType,MarketType可以取:0/SZ; 1/SH; 2/OC; 6/HK; 7/CZC; 8/SHF; 9/DCE; 10/CFE;
4.通过w.tquery(‘order’,requestid=XXX)查询委托情况;
5.期货套保账号时一定需要加上HedgeType=HEDG/1,因为缺省是投机HedgeType =SPEC/0
- 返回说明
该函数返回WindData对象,包含以下成员:
字段 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回登录信息字段对应的具体值, 如.Data=[[3],[W081757303],[SHO],[0],[]] |
Field | 指标列表 | 返回委托下单信息的字段。字段含义如下: RequestID:请求ID, SecurityCode:委托下单的证券代码, TradeSide:买卖方向, OrderPrice:委托价格, OrderVolume:委托数量, HedgeType:投机保值类型, OrderType:委托类型, LogonID:登录账号返回的登录ID, ErrorCode:错误ID,若成功则返回0, ErrorMsg:报错字符串 例如: 以10.3元委托下单买入000001.SZ 100股. Fields=[RequestID,SecurityCode,TradeSide,OrderPrice,OrderVolume,OrderType,LogonID,ErrorCode,ErrorMsg] |
15.交易撤销委托函数tcancel
w.tcancel(OrderNumber, options)
用于撤销w.torder发出的委托请求
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
OrderNumber | str | 否 | 无 | 输入撤销委托对应的委托编号,委托下单时会生成委托编号, 通过w.tquery(“Order”)可获得委托编号,委托编号在撤销委托时使用。 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
LogonID | str | 是 | 否 | tlogon登录返回或 tquery(‘LogonID’)查询返回,用于区分多个账号同时登录,输入撤单账号对应的登录ID单账户登录可选,多账户登录必选. |
MarketType | str | 是 | “SH” | 输入市场类型,SecurityCode为交易码时需要填写,默认"MarketType=SH"。参数值含义如下: 参数值含义如下: SZ / 0: 证券-深圳, SH / 1: 证券-上海, OC / 2: 证券-深圳特(三版), HK / 6: 证券-港股, CZC / 7: 商品期货(郑州), SHF / 8: 商品期货(上海), DCE / 9: 商品期货(大连), CFE / 10: 股指期货(中金) |
注:
1.本命令支持向量操作,也即每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充;
2.只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入;
3.当用户有很多笔不同市场的下单时,RequestID可能会有重复,此时需要使用MarketType区别,MarketType可以取:0/SZ; 1/SZ; 2/OC; 6/HK; 7/CZC; 8/SHF; 9/DCE; 10/CFE。
- 返回说明
该函数返回WindData对象,包含以下成员:
字段 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Data | 数据列表 | 返回撤销信息字段对应的具体值, 如.Data=[[3],[W081757303],[SHO],[0],[]] |
Field | 指标列表 | 返回撤销委托信息的字段,其中: OrderNumber:委托编号, ErrorCode:错误编号, ErrorMsg:错误信息,如: 撤销登录ID为1,委托编号为250的委托 .Fields=[OrderNumber,LogonID,ErrorCode,ErrorMsg] |
16.交易情况查询函数tquery
w.tquery(qrycode, options)
用于查询交易相关信息
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
queryType | str | 否 | 无 | 输入需要查询的内容,例如: Capital:资金查询, Position:持仓查询, Order:当日委托查询, Trade:当日成交查询, Account:股东账号查询, LogonID:登录ID查询 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
LogonID | str | 是 | 否 | 输入撤单账号对应的登录ID单账户登录可选,多账户登录必选. |
RequestID | str | 是 | 否 | 输入查询对应的请求ID,请求ID系统自动生成.当日委托查询2/order时可以依据委托torder返回的requestID查询。例如"RequestID=3". |
OrderNumber | str | 是 | 否 | 输入委托号查询委托,"Qrycode=Order"时有意义,委托号来源于w.tquery(“Order”)获得的OrderNumber |
MarketType | str | 是 | “SH” | 输入市场类型,SecurityCode为交易码时需要填写,默认"MarketType=SH"。参数含义如下: SZ / 0: 证券-深圳, SH / 1: 证券-上海, OC / 2: 证券-深圳特(三版), HK / 6: 证券-港股, CZC / 7: 商品期货(郑州), SHF / 8: 商品期货(上海), DCE / 9: 商品期货(大连), CFE / 10: 股指期货(中金) |
OrderType | str | 是 | 全部委托 | 输入查询委托的委托类型,默认是查询全部委托.Withdrawable 可撤 |
WindCode | str | 是 | 否 | 输入查询指定证券的信息"WindCode=002311.SZ", Qrycode=Order/Position/Trade时 |
BrokerID | str | 是 | 否 | 营业部查询4/department时,必填。例如L"BrokerID=0000"。 |
注:
1.除qrycode外,本命令支持向量操作,也即其他每个参数都可以使用数组输入,对于只有一个元素的参数会自动扩充;
2.只有一个交易登录时,可以不输入LogonID,否则一定需要输入,即用LogonID=xxxx方式输入。
3.qrycode可取:Capital资金查询;Position持仓查询;Order当日委托查询;Trade当日成交查询; broker 经济商查询; LogonID登录ID查询, Account登录账号查询。
4.当日委托查询Order时可以依据委托Order返回的RequestID查询,该查询立即返回,返回服务器已经返回的信息。
- 返回说明
该函数返回WindData对象,包含以下成员:
返回码|解释|说明
ErrorCode|错误ID|返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因.
Data|数据列表|返回查询信息的具体值,
Field|指标列表|返回查询信息的字段
当QueryCode =Capital进行股票、期货、期权账号资金查询时, ResFields返回值的字段说明如下:
股票返回字段 | 期货返回字段 | 期权返回字段 |
---|---|---|
MoneyType:货币类型 | MoneyType | MoneyType:货币类型 |
AvailableFund:资金可用 | AvailableFund | AvailableFund:资金可用 |
SecurityValue:持仓市值 | BalanceFund:资金余额 | BalanceFund:资金余额 |
FundAsse:资金资产 | FetchFund:可取资金 | FundAsset:资金资产 |
TotalAsset:总资产 | ExerciseMargin:履约保证金 | TotalAsset:总资产 |
Profit:总盈亏 | RealFrozenMarginA:当日开仓预冻结金额 | Profit:总盈亏 |
FundFrozen:冻结资金 | RealFrozenMarginB:当日开仓预冻结保证金和费用 | FundFrozen:冻结资金 |
OtherFund:其他资金HoldingProfit:盯市盈亏 | FetchFund:可取资金 | ExerciseMargin:履约保证金 |
BuyFund:今买入额 | TotalFloatProfit | RealFrozenMarginA:当日开仓预冻结金额 |
SellFund:今卖出额 | InitRightsBalance | RealFrozenMarginB:当日开仓预冻结保证金和费用 |
Remark:说明 | FloatRightsBal:浮动客户权益 | HoldingProfit:盯市盈亏 |
Customer:客户号 | RealDrop:盯市平仓盈亏 | CurrRightsBalance:当前客户权益 |
AssetAccount:资金账号 | FrozenFare:冻结费用 | CustomerMargin:客户保证金 |
LogonID:登录ID | CustomerMargin:客户保证金 | Customer:客户号 |
ErrorCode:错误码 | RealOpenProfit:盯市开仓盈亏 | AssetAccount:资金账号 |
– | FloatOpenProfit:浮动开仓盈亏 | LogonID:登录ID |
– | Interest:预计利息 | ErrorCode:错误码 |
– | Customer:客户号 | – |
– | AssetAccount:资金账号 | – |
– | LogonID:登录ID | – |
– | ErrorCode:错误码 | – |
– | ErrorMsg:错误信息 | – |
当qrycode=Position进行股票、期货、期权账号当日委托查询时, ResFields返回值的字段具体说明如下:
股票返回字段 | 期货返回字段 | 期权返回字段 |
---|---|---|
SecurityCode:交易品种代码 | SecurityCode:交易品种代码 | SecurityCode:交易品种代码 |
SecurityName:交易品种名称 | SecurityName:交易品种名称 | SecurityName:交易品种名称 |
SecurityBalance:股份余额 | CostPrice :成本价格 | SecurityForzen :股份冻结 |
SecurityAvail:股份可用 | LastPrice :最新价格 | CostPrice :成本价格 |
SecurityForzen:股份冻结 | TradeSide:交易方向 | LastPrice:最新价格 |
TodayBuyVolume:当日买入量 | BeginVolume :期初数量 | TradeSide:交易方向 |
TodaySellVolume:当日卖出量 | EnableVolume :可用数量 | EnableVolume:可用数量 |
SecurityVolume:当前拥股数 | TodayRealVolume :当日可平仓数 | TodayOpenVolume :当日开仓可用数 |
CallVolume:可申赎数量 | TodayOpenVolume :当日开仓可用数 | TotalFloatProfit:总浮动盈 |
CostPrice:成本价格 | HoldingProfit :盯市盈亏 | RealFrozenMarginA:当日开仓预冻结金额 |
TradingCost:当前成本 | TotalFloatProfit :总浮动盈 | MoneyType :货币类型 |
LastPrice:最新价格 | PreMargin :上交易日保证金 | LogonID:登录ID |
HoldingValue:市值 | MoneyType :货币类型 | OptionType :期权类型 |
Profit:盈亏 | LogonID:登录ID | ErrorCode :错误码 |
MoneyType:货币类型 | ErrorCode:错误码 | ErrorMsg:错误信息 |
LogonID:登录ID | ErrorMsg:错误信息 | – |
ErrorCode:错误码 | – | |
ErrorMsg:错误信息 | – | – |
当qrycode=Order进行股票、期货、期权账号当日委托查询时, ResFields返回值的字段具体说明如下:
股票返回字段 | 期货返回字段 | 期权返回字段 |
---|---|---|
OrderNumber:柜台委托编号 | OrderNumber:柜台委托编号 | OrderNumber:柜台委托编号 |
OrderStatus:委托状态 | OrderStatus:委托状态 | OrderStatus:委托状态 |
SecurityCode:交易品种代码 | SecurityCode:交易品种代码 | SecurityCode:交易品种代码 |
SecurityName:交易品种名称 | SecurityName:交易品种名称 | SecurityName:交易品种名称 |
TradeSide:交易方向 | TradeSide:交易方向 | TradeSide:交易方向 |
OrderPrice:委托价格 | rderPrice:委托价格 | OrderPrice:委托价格 |
OrderVolume:委托数量 | OrderVolume:委托数量 | OrderVolume:委托数量 |
OrderTime:委托时间 | OrderTime:委托时间 | OrderTime:委托时间 |
TradedPrice:成交均价 | TradedPrice:成交均价 | TradedPrice:成交均价 |
TradedVolume:成交数量 | TradedVolume:成交数量 | TradedVolume:成交数量 |
CancelVolume:撤单数量 | CancelVolume:撤单数量 | CancelVolume:撤单数量 |
LastPrice:最新价格 | LastPrice:最新价格 | LastPrice:最新价格 |
MadeAmt:成交金额 | PreMargin :开仓冻结保证金 | MadeAmt:成交金额 |
OrderFrozenFund:委托冻结资金 | TotalFrozenCosts:冻结总费用 OrderFrozenFund:委托冻结资金 | |
HedgeType:套保标志 | HedgeType:套保标志 | HedgeType:套保标志 |
MoneyType:货币类型 | Remark:说明 | MoneyType:货币类型 |
Remark:说明 | LogonID:登录ID | Remark:说明 |
LogonID:登录ID | QryPostStr:请求信号 | LogonID:登录ID |
QryPostStr:请求信号 | OrderDate:委托日期 | QryPostStr:请求信号 |
OrderDate:委托日期 | ErrorCode:错误码 | OptionType:期权类型 |
ErrorCode:错误码 | ErrorMsg:错误信息 | OrderDate:委托日期 |
ErrorMsg:错误信息 | – | ErrorCode:错误码 |
– | – | ErrorMsg:错误信息 |
其中:OrderStatus包含Normal(正常)、Cancelled(撤单)、Invalid(无效)、Dealing(处理中)选项
当qrycode=Trade进行股票、期货、期权账号当日成交查询时, ResFields返回值的字段具体说明如下:
股票返回字段 | 期货返回字段 | 期权返回字段 |
---|---|---|
OrderNumber:柜台委托编号 | OrderNumber:柜台委托编号 | OrderNumber:柜台委托编号 |
TradedNumber:成交编号 | TradedNumber:成交编号 TradedNumber:成交编号 | |
TradedStatus:成交状态 | TradedStatus:委托状态 | TradedStatus:委托状态 |
SecurityCode:交易品种代码 | SecurityCode:交易品种代码 | SecurityCode:交易品种代码 |
SecurityName:交易品种名称 | SecurityName:交易品种名称 | SecurityName:交易品种名称 |
TradeSide:交易方向 | TradeSide:交易方向 | TradeSide:交易方向TradedTime:委托价格 OrderPrice:委托价格 OrderPrice:委托价格OrderVolume:委托数量 OrderVolume:委托数量 OrderVolume:委托数量OrderTime:委托时间 |
TradedPrice:成交均价 | TradedPrice:成交均价 | TradedPrice:成交均价 |
TradedVolume:成交数量 | TradedVolume:成交数量 | TradedVolume:成交数量 |
CancelVolume:撤单数量 | CancelVolume:撤单数量 | CancelVolume:撤单数量 |
LastPrice:最新价格 | LastPrice:最新价格 | LastPrice:最新价格 |
MadeAmt:成交金额 | AmountPerHand :每手吨数 | MadeAmt:成交金额 |
MoneyType:货币类型 HedgeType:套保标志 | OrderType:委托类型 | |
Remark:说明 | TotalFrozenCosts:冻结总费用 | MoneyType:货币类型 |
LogonID:登录ID | DropProfit:平仓盈亏 | Remark:说明 |
QryPostStr:请求信号 | DropFloatFrofit:平仓浮动盈亏 | LogonID:登录ID |
OrderDate:委托日期 | Remark:说明 | QryPostStr:请求信号 |
TradedDate:成交日期 | LogonID:登录ID | OptionType:期权类型 |
ErrorCode:错误码 | QryPostStr:请求信号 | OrderDate:委托日期 |
ErrorMsg:错误信息 | OrderDate:委托日期 | TradedDate:成交日期 |
– | ErrorCode:错误码 | ErrorCode:错误码 |
– | ErrorMsg:错误信息 | ErrorMsg:错误信息 |
其中: TradedStatus包含Normal(正常)、Cancelled(撤单)、Invalid(无效)
当qrycode=Account进行账号查询时, ResFields返回值的具体说明如下:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误码 | 函数返回的错误码。函数如果成功运行,ErrorCode=0。如果返回码等于其他值,可根据错误码查找错误原因 |
Fields | 指标列表 | 字段含义如下: ShareholderStatus:股东状态, MainShareholderFlag:主股东标志, AccountType:账号类型, MarketType:市场代码, Shareholder:股东代码, AssetAccount:资金账号, Customer:客户号, Seat:席位号, LogonID:登录ID, ErrorCode:错误码, ErrorMsg:错误信息 |
Data | 数据列表 | 返回查到信息 |
当qrycode=LogonID进行账号查询时, ResFields返回值的具体说明如下:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误码 | 函数返回的错误码。函数如果成功运行,ErrorCode=0。如果返回码等于其他值,可根据错误码查找错误原因 |
Fields | 指标列表 | 返回的字段信息。字段含义如下: LogonID:登录ID, LogonAccount:登录账号, AccountType:账号类型, ErrorCode:错误码, ErrorMsg:错误信息 |
Data | 数据列表 | 返回查到信息 |
17.获取组合报表数据函数WPF
w.wpf(productname, tablename, options)
用来获取资产管理系统PMS以及组合管理系统AMS某一段时间组合的业绩和市场表现的报表数据。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
productName | str | 否 | 无 | 输入组合ID或组合名称, 取自Wind终端PMS或AMS模块.如: “全球投资组合管理演示” |
tablename | str | 否 | 否 | 输入报表的指标名称如: NetHoldingValue、 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
view | str | 是 | 否 | 选择组合管理模块:“AMS” 或“PMS” |
Owner | str | 是 | 否 | 可选参数, view=PMS且组合是别人共享的时,应给出组合创建人的Wind帐号, 如"Owner=W0817573" |
date | str | 是 | 否 | 选择获取数据中截面指标的日期, 如: “date = 20180302”、 |
startDate | str | 是 | 否 | 选择获取数据中区间指标的起始日期如: “startDate = 20180531” |
endDate | str | 是 | 否 | 选择获取数据中区间指标的截止日期如: " endDate = 20180731" |
Currency | str | 是 | “ORIGINAL” | 选择获取数据的货币类型,默认"Currency =ORIGINAL"。参数值含义如下: ORIGINAL:原始货币, HKD:港币, USD:美元, CNY:人民币 |
sectorcode | str | 是 | 否 | 择组合按资产或总市值进行分类如: “sectorcode=101” |
MarketCap | str | 是 | 否 | 选择组合按总市值分类, 此时"sectorcode=208"如: " sectorcode=208, MarketCap=1000,500,100,50" |
displaymode | str | 是 | 否 | 选择报表展示方式。参数值含义如下: 1:明细, 2:分类, 3:全部 |
注:
wpf函数支持输出DataFrame数据格式,需要函数添加参数usedf = True。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode=0表示代码运行正常。若为其他则需查找错误原因. |
Codes | 组合列表 | 返回获取报表的组合名称 |
Field | 字段列表 | 返回获取报表的字段 |
Times | 组合列表 | 返回获取报表的本地时间戳 |
Data | 数据列表 | 返回查询信息的具体值 |
18.获取组合多维数据函数WPS
w.wps(PortfolioName, fields, options)
获取资产管理系统PMS以及组合管理系统AMS某一天组合的基本信息、业绩、市场表现和交易统计等方面的截面数据。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
PortfolioName | str | 否 | 无 | 输入组合ID或组合名称, 取自Wind终端PMS或AMS模块.如: “全球投资组合管理演示” |
fields | str | 否 | 否 | 输入报表的指标名称如: NetHoldingValue、 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
view | str | 是 | 否 | 选择组合管理模块:“AMS” 或“PMS” |
Owner | str | 是 | 否 | 可选参数, view=PMS且组合是别人共享的时,应给出组合创建人的Wind帐号, 如"Owner=W0817573" |
date | str | 是 | 否 | 选择获取数据中截面指标的日期, 如: “date = 20180302”、 |
startDate | str | 是 | 否 | 选择获取数据中区间指标的起始日期如: “startDate = 20180531” |
endDate | str | 是 | 否 | 选择获取数据中区间指标的截止日期如: " endDate = 20180731" |
Currency | str | 是 | “ORIGINAL” | 选择获取数据的货币类型,默认"Currency =ORIGINAL"。参数值含义如下: ORIGINAL:原始货币, HKD:港币, USD:美元, CNY:人民币 |
注:
wps函数支持输出DataFrame数据格式,需要函数添加参数usedf = True。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Codes | 组合列表 | 返回获取报表的组合名称 |
Field | 字段列表 | 返回获取报表的字段 |
Times | 组合列表 | 返回获取报表的本地时间戳 |
Data | 数据列表 | 返回查询信息的具体值 |
19.获取组合序列数据函数WPD
w.wpd(PortfolioName, fields, beginTime, endTime, options)
获取资产管理系统PMS以及组合管理系统AMS一段时间组合的持仓和业绩表现等日序列数据。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
PortfolioName | String | 否 | 无 | 输入组合ID或组合名称, 取自Wind终端PMS或AMS模块.如: “全球投资组合管理演示” |
fields | str | 否 | 否 | 输入报表的指标名称如: NetHoldingValue |
beginTime | str | 是 | endTime | 输入获取数据的起始日期,为空默认为截止日期如: “2016-01-01”、“20160101”、datetime/date类型 |
endTime | str | 是 | 系统当前时间 | 输入获取数据的截止日期,为空默认为系统当前日期,如: “2016-01-05”、“20160105”、datetime/date类型 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
view | str | 是 | 否 | 选择组合管理模块:“AMS” 或“PMS” |
Owner | str | 是 | 否 | 选择组合创建人, view=PMS且组合是别人共享的时,应给出组合创建人的Wind帐号,如"Owner=W0817573" |
Period | str | 是 | ‘D’ | 取值周期。参数值含义如下: D:天, W:周, M:月, Q:季度, S:半年, Y:年 |
Fill | str | 是 | 否 | 空值填充方式。参数值含义如下: Previous:沿用前值, Blank:返回空值。 如需选择自设数值填充,在options添加“ShowBlank=X", 其中X为自设数。 |
Currency | str | 是 | “” | 选择获取数据的货币类型,默认"Currency = ORIGINAL"。参数值含义如下: ORIGINAL:原始货币, HKD:港币, USD:美元, CNY:人民币 |
注:
wpd函数支持输出DataFrame数据格式,需要函数添加参数usedf = True。
- 返回说明
如果不指定usedf=True,该函数将返回一个WindData对象,包含以下成员:
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Codes | 组合列表 | 返回获取报表的组合名称 |
Field | 字段列表 | 返回获取报表的字段 |
Times | 组合列表 | 返回获取报表的本地时间戳 |
Data | 数据列表 | 返回查询信息的具体值 |
20.组合上传函数WUPF
在终端组合管理系统中新建组合后, 根据量化策略可以点击‘调整持仓’或‘导入持仓’按钮手动调整组合持仓. 为了实现程序化调仓和回测的执行, 量化平台提供了WUPF函数对组合进行调仓. 下面就介绍利用WUPF函数对组合管理系统中的组合进行程序化调仓的实现, 注意在组合调仓前需要在组合管理系统中新建组合. 在‘资管WPF’下, 点击‘组合上传(WUPF)’按钮,进入组合上传页面.
这里Wind账号默认为终端账号,选择终端已存在组合的名称后, 下面可以看到三种组合上传方式, 依次为‘持仓上传’,‘权重上传’和‘流水上传’, 按导航就能生成组合上传所需的代码。
wupf(PortfolioName, TradeDate, WindCode, Quantity, CostPrice, options)
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
PortfolioName | str | 否 | 无 | 输入组合ID或组合名称, 取自Wind终端PMS或AMS模块.如: “全球投资组合管理演示” |
TradeDate | str | 否 | 否 | 输入调整持仓的日期.如: “20151231” |
WindCode | str | 否 | 否 | 输入调整持仓的品种, 当上传多个持仓的时候可以输入数组.现金视为一种证券,现金数量为其金额,价格为1,目前仅支持上传一笔现金。如: "600000.SH, 000001.SZ ,CNY " |
Quantity | str | 否 | 否 | 输入调整品种的持仓数量, 当上传多个持仓的时候可以输入数组. 股票为股,期货为手,现金为其数额,必须为整数, 当卖出时可为负数,如: “100, 100, 10000” |
CostPrice | str | 是 | 否 | 输入调整持仓的成本价格(含佣金等交易费用),默认为证券调仓日收盘价,现金价格为指定1.如: “10.17,10.19,1” |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Owner | str | 是 | 否 | 输入组合拥有者的Wind用户账号,默认为当前账户, 当组合是别人共享的,则填入组合创建人的Wind帐号例:“Owner=W0817573” |
Direction | str | 是 | “Long” | 输入调仓品种的多空方向,对期货品种有效。默认"Direction=Long"。参数值含义如下: Long:多方 Short:空方 |
HedgeType | str | 是 | “Spec” | 选择投机套保类型,可选参数。默认为"HedgeType=Spec", 选择套保需要专门的保账号。HedgeType可取值如下: Spec:投机 Hedge:套保 |
CreditTrading | str | 是 | 否 | 输入是否调仓品种是否为融资融券交易例: CreditTradig=No,No,No |
TotalAsset | str | 是 | 10000000 | 总资产 |
Method | str | 是 | 否 | 输入调仓品种的调仓方式。参数值含义如下: BuySell:买卖调仓(会增减现金), InOut:划入划出调仓(不会增减现金) |
AssetType | str | 是 | 否 | 选择证券类型,AssetType可取为: Margin: 融资融券, Cash: 现金, Equity: 股票, Bond: 债券, Repo: 债券回购, Fund: 基金, Cmdty: 期货, SFP: 券商理财产品, Trust: 信托产品, BFP: 银行理财产品, Pfund: 阳光私募 后台可以自动自动解析资产类别,因此除融资融券字段外,无需设置相应类别。一旦在此设置,后台不做类别错误检查。 |
type | str | 是 | 持仓上传 | 输入调整持仓的上传方式。默认为持仓上传。参数值含义如下: “flow":流水上传, ”weight“:权重上传。 |
- 返回说明
返回码 | 解释 | 说明 |
---|---|---|
ErrorCode | 错误ID | 返回代码运行错误码,.ErrorCode =0表示代码运行正常。若为其他则需查找错误原因. |
Field | 字段列表 | 返回上传调仓的返回字段, .Fields=[ErrorMessage] |
Data | 数据列表 | 错误信息。如果上传调仓成功,返回.Data=[[OK]] |
流水上传
在该模式下,你可以调整组合中的现金配置或者调整仓位。
1.调整现金:通过调整现金可以增减组合中的现金数额, 数额为正即增加组合现金, 为负即减少组合现金. 此外还可以选择相应币种类型.
2.调整持仓 :调整持仓分两种情况:买卖调仓和资产划转,其中买卖调仓会扣减或增加现金,而资产划转不会。
当证券买入时,‘买卖数量’记为正;当证券卖出时,‘买卖数量’记负,其与‘信用交易’和‘交易类型’的关系如下表:
买卖数量 | 信用交易 | 买卖类型 |
---|---|---|
正 | 否 | 证券买入/买入多单-long/买入空单-short/正回购-short/逆回购-long |
负 | 否 | 证券卖出/卖出空单-short/卖出多单-long |
正是 | 融资买入-long/买券还券-short | |
负 | 是 | 卖券还款-long/融券卖出-short |
这里要注意只有股票的融资融券交易才是有实际意义的.
权重上传
权重上传是在当前总资产下,按一定权重将持仓日组合的所有持仓上传,每次上传的持仓即视为当前组合的最新持仓,最小调仓单位为1股或1手。
注:
1.初次权重上传之前组合为空,上传组合持仓时,如果不上传总资产,则总资产默认为10000000,反之则以上传的总资产为准;
2.再次权重上传之前组合不为空,上传组合持仓时,不用调整总资产;
对于权重上传,持仓权重和信用交易的关系的含义情况如下
持仓数量 | 信用交易 | 含义 |
---|---|---|
正 | 否 | 证券买入/逆回购/多开 |
负 | 否 | 正回购/空开 |
正 | 是 | 融资买入 |
负 | 是 | 融券卖出 |
持仓上传
持仓上传是将调仓日组合的所有持仓情况上传, 包括现金持仓. 持仓截面的每次上传即视为当前组合的最新持仓,持仓上传对历史持仓没有记忆性。持仓上传分调整持仓和调整现金两种:
1.调整现金:通过调整现金可以确定调仓日组合的现金持仓情况金, 并可以选择相应币种类型;
2.调整持仓:调整持仓是将调仓日组合的持仓情况上传。
*注: *
1.通过调整现金可以确定调仓日组合的现金持仓情况金. 并可以选择相应币种类型;
2.可选参数也可以用list实现;
3.如果调仓的品种对应是同一天,则日期参数可以只保留一个,同样调仓方向相同也可以只保留一个。
其中,持仓数量和信用交易的关系的含义情况如下
持仓数量 | 信用交易 | 含义 |
---|---|---|
正 | 否 | 证券买入/逆回购/多开 |
负 | 否 | 正回购/空开 |
正 | 是 | 融资买入 |
负 | 是 | 融券卖出 |
重置组合
如果需要将组合中的持仓信息和资金信息全部清空,可按照如下方式设置w.wupf:
w.wupf(portfolioName, “”, “”, “”, “reset=true”)
21.获取区间内日期序列tdays
w.tdays(beginTime , endTime, options)
用来获取一个时间区间内的某种规则下的日期序列。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
beginTime | str | 是 | endTime | 时间序列的起始日期,支持日期宏 |
endTime | str | 是 | 系统当前时间 时间序列的结束日期,支持日期宏 | |
options | str | 是 | ”“ | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Days | str | 是 | ‘Trading’ | 日期选项。参数值含义如下: Weekdays: 工作日, Alldays:日历日, Trading:交易日 |
Period | str | 是 | ‘D’ 取值周期。参数值含义如下: D:天, W:周, M:月, Q:季度, S:半年, Y:年 | |
TradingCalendar | str | 是 | ‘SSE’ | 选择不同交易所的交易日历,默认’SSE’上交所 |
- 示例说明
# 取上交所2018年5月13日至6月13日的交易日期序列,交易所为空默认为上交所
date_list=w.tdays("2018-05-13", "2018-06-13"," ")
date_list
.ErrorCode=0
.Codes=[]
.Fields=[]
.Times=[20180514,20180515,20180516,20180517,20180518,20180521,20180522,20180523,20180524,20180525,...]
.Data=[[2018-05-14 00:00:00,2018-05-15 00:00:00,2018-05-16 00:00:00,2018-05-17 00:00:00,2018-05-18 00:00:00,2018-05-21 00:00:00,2018-05-22 00:00:00,2018-05-23 00:00:00,2018-05-24 00:00:00,2018-05-25 00:00:00,...]]
22.获取某一偏移值对应的日期tdaysoffset
w.tdaysOffset(offset, beginTime, options)
用于将基准日期前推若干周期得到符合选定日期类型的日期
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
offset | int | 否 | 否 | 偏移参数,>0后推,<0前推 |
beginTime | str | 是 | 系统当前时间 | 参照日期,支持日期宏 |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Days | str | 是 | ‘Trading’ | 日期选项。参数含义如下: Weekdays: 工作日 Alldays:日历日 Trading:交易日 |
Period | str | 是 | ‘D’ | 取值周期。参数值含义如下: D:天, W:周, M:月, Q:季度, S:半年, Y:年 |
TradingCalendar | str | 是 | ‘SSE’ | 选择不同交易所的交易日历,默认’SSE’上交所 |
- 示例说明
# 取从今天往前推10个月的日历日
import datetime
today = datetime.date.today()
w.tdaysoffset(-10, today.isoformat(), "Period=M;Days=Alldays")
.ErrorCode=0
.Codes=[]
.Fields=[]
.Times=[20190622]
.Data=[[2019-06-22 00:00:00]]
23.获取某个区间内日期数量tdayscount
w.tdayscount(beginTime, endTime, options)
命令返回某个日期区间内指定日期类型日期的总数。
- 参数说明
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
beginTime | str | 是 | endTime | 时间序列的起始日期,支持日期宏 |
endTime | str | 是 | 系统当前时间 时间序列的结束日期,支持日期宏 | |
options | str | 是 | “” | options以字符串的形式集成多个参数,具体见代码生成器。如无相关参数设置,可以不给option赋值或者使用options="" |
- 集成在options中的参数
options以字符串的形式集成了多个参数。以下列举了一些常用的参数:
参数 | 类型 | 可选 | 默认值 | 说明 |
---|---|---|---|---|
Days | str | 是 | ‘Trading’ | 日期选项。参数值含义如下: Weekdays: 工作日, Alldays:日历日, Trading:交易日 |
TradingCalendar | str | 是 | ‘SSE’ | 选择不同交易所的交易日历,默认’SSE’上交所 |
- 示例说明
# 统计2018年交易日天数
days=w.tdayscount("2018-01-01", "2018-12-31", "").Data[0]
days
[243]
24. 日期宏说明
通用日期宏
支持相对日期表达方式,相对日期周期包括:交易日TD、日历日:D、日历周:W、日历月:M、日历季:Q、日历半年:S、日历年:Y。
相关说明
1.以’-’代表前推,数字代表N个周期,只支持整数;后推没有负号,比如’-5D’表示从当前最新日期前推5个日历日;
2.截止日期若为’’空值,取系统当前日期;
3.可对日期宏进行加减运算,比如’ED-10d’。
举例:
1.起始日期为1个月前,截至日期为最新 StartDate=’-1M’,EndDate=’’
2.起始日期为前推10个交易日,截至日期为前推5个交易日 StartDate=’-10TD’,EndDate=’-5TD’
特殊日期宏
宏名称 | 助记符 | 宏名称 | 助记符 | 宏名称 | 助记符 |
---|---|---|---|---|---|
截止日期 | ED | 今年一季 | RQ1 | 本月初 | RMF |
开始日期 | SD | 今年二季 | RQ2 | 本周一 | RWF |
去年一季 | LQ1 | 今年三季 | RQ3 | 上周末 | LWE |
去年二季 | LQ2 | 最新一期 | MRQ | 上月末 | LME |
去年三季 | LQ3 | 本年初 | RYF | 上半年末 | LHYE |
去年年报 | LYR | 下半年初 | RHYF | 上年末 | LYE |
上市首日 | IPO | – | – | – | – |
# 用日期宏IPO的示例,获取股票600039.SH上市首日至20180611的收盘价
error_code,data=w.wsd("600039.SH", "close", 'IPO', "2018-06-11", usedf=True)
data.head()
CLOSE | |
---|---|
2003-03-25 | 9.07 |
2003-03-26 | 8.86 |
2003-03-27 | 9.75 |
2003-03-28 | 10.00 |
2003-03-31 | 10.04 |
# 用日期宏本月初的示例,获取000001.SZ本月初至20180611的收盘价
from datetime import datetime
td = datetime.today().strftime("%Y%m%d")
error_code,data=w.wsd("600039.SH", "close", 'RMF', td, usedf=True)
data
CLOSE | |
---|---|
2020-04-01 | 3.88 |
2020-04-02 | 3.94 |
2020-04-03 | 3.91 |
2020-04-07 | 3.91 |
2020-04-08 | 3.92 |
2020-04-09 | 3.83 |
2020-04-10 | 3.90 |
2020-04-13 | 3.89 |
2020-04-14 | 3.92 |
2020-04-15 | 3.89 |
2020-04-16 | 3.86 |
2020-04-17 | 3.87 |
2020-04-20 | 3.94 |
2020-04-21 | 3.91 |
2020-04-22 | 3.91 |