作者:下面是重新排版的
||输出内容|说明|
| :------------- :|:-------------:| :-----:|
|错误ID |ErrorCode| 返回值为0 ,则表示代码运行正常。若为其他则需查找原因|
|数据列表|Data|函数读取的数据存到此列表中,比如:读取000592.SZ 的close,open指标从'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],[5.3,5.12,5.17,4.98,4.94,4.93,5.1,5.4,5.4]]| |证券代码列表| Codes|输入的证券代码列表 .Codes=[000592.SZ]|
|字段列表| Field |函数输入中请求的字段列表 .Fields=[CLOSE,OPEN]|
|时间列表| Times |输出时间序列.Times=[20170508,20170509,20170510,20170511,20170512,20170515,20170516,20170517,20170518]|
输出格式分析
情形1:多个代码+多个日期+多个指标
w.wsd("010504.SH,112108078.IB", "municipalbond,cityinvestmentbondgeo", "2021-12-21", "2021-12-24",usedf=True)
报错(-40522018, OUTMESSAGE0 CWSDService: multi-codes with multi-indicators...)
情形2:多个代码+多个日期+单个指标
w.wsd("010504.SH,112108078.IB", "municipalbond", "2021-12-21", "2021-12-24",usedf=True)
(0, 010504.SH 112108078.IB2021-12-21 否 否2021-12-22 否 否2021-12-23 否 否2021-12-24 否 否)
情形3:多个代码+单个日期+单个指标
w.wsd("010504.SH,112108078.IB", "municipalbond", "2021-12-24", "2021-12-24",usedf=True)
(0, MUNICIPALBOND010504.SH 否112108078.IB 否)
情形4:多个代码+单个日期+多个指标
w.wsd("010504.SH,112108078.IB", "municipalbond,cityinvestmentbondgeo", "2021-12-24", "2021-12-24",usedf=True)
报错(-40522018, OUTMESSAGE0 CWSDService: multi-codes with multi-indicators...)
情形5:单个代码+多个日期+多个指标
w.wsd("010504.SH", "municipalbond,cityinvestmentbondgeo", "2021-12-21", "2021-12-24",usedf=True)
(0, MUNICIPALBOND CITYINVESTMENTBONDGEO2021-12-21 否 None2021-12-22 否 None2021-12-23 否 None2021-12-24 否 None)
情形6:单个代码+多个日期+单个指标
w.wsd("010504.SH", "municipalbond", "2021-12-21", "2021-12-24",usedf=True)
(0, MUNICIPALBOND2021-12-21 否2021-12-22 否2021-12-23 否2021-12-24 否)
情形7:单个代码+单个日期+多个指标
w.wsd("010504.SH", "municipalbond,cityinvestmentbondgeo", "2021-12-24", "2021-12-24",usedf=True)
(0, MUNICIPALBOND CITYINVESTMENTBONDGEO010504.SH 否 None)
情形8:单个代码+单个日期+单个指标
w.wsd("010504.SH", "municipalbond", "2021-12-24", "2021-12-24",usedf=True)
(0, MUNICIPALBOND010504.SH 否)
总结:
1. 不支持多个指标和多个代码同时请求
2. 假设行标题为x,列标题为y。加上一个表格的隐含属性。分析如下表
共得到4种不同格式的结果集。
示例
# 加载相关的包
from WindPy import *
import time
import pandas as pd
w.start()
作者:实际测试这段代码是会报登陆失败的,这个后面再说。下面是文档中给的执行结果
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.
例1、 取富士康概念股近七个交易日的每天机构资金流入额
date=time.strftime("%Y-%m-%d", time.localtime())
stock=w.wset("sectorconstituent","date="+date+";sectorid=1000011346000000").Data[1] #富士康概念股最新板块成分
buyamt=w.wsd(stock, "mfd_buyamt_d", "ED-7TD", date, "unit=1;traderType=1") #traderType表示类型,如机构、大户、中户、散户,具体参数设置可以借助API函数了解
buyamt
返回结果:.ErrorCode=0
.RequestID=795
.Codes=[000727.SZ,002138.SZ,002182.SZ,002388.SZ,002681.SZ,002735.SZ,002831.SZ,002861.SZ,002885.SZ,002886.SZ,...]
.Fields=[MFD_BUYAMT_D]
.Times=[20180614,20180615,20180619,20180620,20180621,20180622,20180625,20180626]
.Data=[[4080000.0,430600.0,2555114.0,2654878.0,1080770.0,0.0,1379156.9999999998,nan],[703075.9999999999,4646056.0,7385931.000000001,41127382.0,9715612.0,1833266.9999999998,2006920.0,nan],[1370000.0,713212.0,1566466.0,162635.0,0.0,0.0,0.0,nan],[0.0,448462.00000000006,0.0,0.0,0.0,0.0,0.0,nan],[6393914.0,7288929.000000001,10012665.0,1693427.0,974352.0,1139238.0,0.0,nan],[nan,nan,nan,nan,nan,nan,nan,nan],[2423169.0,3989380.0,3885000.0,0.0,11359000.0,5429559.0,10675815.0,nan],[20436142.0,6524435.0,2883179.0,0.0,3644898.0,2440908.0,516831.00000000006,nan],[56344942.0,47787275.0,6537384.0,26814889.0,3486963.0,13616599.000000002,15223910.0,nan],[101045277.0,20793487.0,2350000.0,12947593.0,2598133.0000000005,51000.0,0.0,nan],...]
pd.DataFrame(buyamt.Data,index=stock,columns=buyamt.Times).T
000727.SZ002138.SZ002182.SZ002388.SZ002681.SZ...600673.SH601137.SH601138.SH603228.SH603595.SH
2018-06-14 00:00:00.005
4080000.0
703076.0
1370000.0
0.0
6393914.0
...
45833092.0
0.0
1.080932e+09
0.0
0.0
2018-06-15 00:00:00.005
430600.0
4646056.0
713212.0
448462.0
7288929.0
...
42659629.0
0.0
7.987039e+08
0.0
0.0
2018-06-19 00:00:00.005
2555114.0
7385931.0
1566466.0
0.0
10012665.0
...
77407028.0
0.0
7.203009e+08
1058400.0
5113660.0
2018-06-20 00:00:00.005
2654878.0
41127382.0
162635.0
0.0
1693427.0
...
69425880.0
0.0
4.781276e+08
0.0
1433600.0
2018-06-21 00:00:00.005
1080770.0
9715612.0
0.0
0.0
974352.0
...
41665049.0
0.0
4.146398e+08
0.0
6688679.0
2018-06-22 00:00:00.005
0.0
1833267.0
0.0
0.0
1139238.0
...
23974394.0
0.0
4.132930e+08
1440000.0
2397780.0
2018-06-25 00:00:00.005
1379157.0
2006920.0
0.0
0.0
0.0
...
17107278.0
0.0
1.747496e+08
0.0
2386818.0
2018-06-26 00:00:00.005
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
8 rows × 26 columns
例2、 任取一只国债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") # returnType表示到期收益率计算方法,PriceAdj表示债券价格类型‘
#pd.DataFrame(history_data.Data,index=history_data.Fields,columns=history_data.Times).T
pd.DataFrame(history_data.Data,index=["中文简称","YTM","成交量","久期","凸性","开盘价","最高价","最低价","收盘价","均价"],columns=history_data.Times).T
中文简称YTM成交量久期凸性开盘价最高价最低价收盘价均价
2018-06-01 00:00:00.005
21国债(7)
3.59133
3.8318e+07
2.95846
11.2978
102.1
102.15
101.92
101.98
101.977
2018-06-04 00:00:00.005
21国债(7)
3.6132
3.024e+07
2.95016
11.2398
101.91
101.98
101.9
101.91
101.941
2018-06-05 00:00:00.005
21国债(7)
3.596
3.1485e+07
2.94749
11.2262
101.85
101.97
101.85
101.96
101.933
2018-06-06 00:00:00.005
21国债(7)
3.60554
1.77095e+08
2.94471
11.2064
102.06
102.06
101.76
101.93
101.868
2018-06-07 00:00:00.005
21国债(7)
3.59166
5.244e+07
2.94202
11.1921
101.92
102
101.79
101.97
101.936
2018-06-08 00:00:00.005
21国债(7)
3.57107
4.0053e+07
2.93937
11.1793
101.82
102.05
101.82
102.03
101.999
2018-06-11 00:00:00.005
21国债(7)
3.5561
7.946e+07
2.93121
11.1301
102.02
102.09
101.95
102.07
102.016
例3、 取国内所有农产品主力合约不同日期所对应的具体合约