整體接口相關問題
1 客服電話、iWind 量化群分別是多少?
客服電話:400‐820‐9463 iWind 量化群: 中國量化交易群 (群號 59289)
2 為什么修復量化插件會失敗?
修復插件會做兩件事,一是注冊插件的COM,一是在Matlab、R、VBA、Python 等中增加路徑引用。 如果注冊COM 失敗,會有個對話框顯示出現了錯誤。如果錯誤碼是0x8000400 這樣的,那么是因為用戶沒有管理員權限。其他可以在群中詢問。 如果Matlab、R、Python 是免安裝版本,修復程序就不能找到matlab,此時需要手工安裝matlab,安裝方法可以在對應的說明手冊中找到。 目前插件需要Matlab、R、Python 以及Wind 的終端安裝在沒有中文的等多字節字符的目錄中,最好是沒有空格的目錄,如果安裝過程出現錯誤,可以試圖把各產品安裝在一個沒 有多字節字符的目錄中。 WindR 支持的最低版本是R2.15.0,matlab 是 2008b,再低的版本將不能安裝。
3 怎么調出 Wind 的登陸界面?
關閉所有的wind 程序,包括終端,iwind,excel,Matlab,R,Python 等使用了Wind量化接口的工具;然后等待一會(任務管理欄中wbox.exe 已經推出)即可。或者在任務管理欄中尋找wbox.exe 進程,然后強行結束。
4 如何進行強制升級?
有的時候終端升級有些問題,或者用戶的版本較舊,需要升級到最新版本,需要請客戶手動升級: 參照“沒有出現登陸界面的問題”重啟Wind 終端,到登陸框的地方,然后按住鍵盤Shift 按鍵同時鼠標點擊“登錄”按鈕:
5 切換連接站點問題
有時候一個站點出現故障、另外一個站點可能還是好的,此時如用戶需要急用的時候,可以切換服務器站點,即參照“沒有出現登陸界面的問題”重啟Wind 終端,在選擇登陸服務器下拉菜單中選擇:
6 命令生成器在哪?有什么用?怎么使用?
在Matlab、R 中Wind 提供了很好的導航界面(通過w.menu())調出,但是在VBA、c++等環境則沒有對應導航界面,為了彌補這個缺陷,Wind 開發了命令生成器。 在使用命令生成器之前需要先修復好插件,可以是VBA 也可以是其他的,然后就可以直接運行該命令生成器了。在終端直接輸入鍵盤精靈“CG”或者打開 終端》量化》代碼生成器即可打開代碼生成器。界面效果如下圖:

用戶可以通過左上角下拉框選擇需要的編程語言,然后從導航欄中產生需要的代碼。
7 證券存續狀態 sec_status 表示什么意思?
>w_wsd_data<‐w.wsd("600000.SH","sec_type,sec_status","2013‐10‐20","2013‐10‐22","Fill=Previo
us")
$ErrorCode [1] 0 $Data
DATETIME SEC_TYPE SEC_STATUS
1 2013‐10‐21 普通股 L
2 2013‐10‐22 普通股 L
L 上市,N 是新證券,未上市,D 是退市
8 為什么有些財報數據有一些時間能取到有些取不到?
排除較早期和有些品種的財務數據確實不存在的情況,客戶還有一種可能就是沒有正確使用日歷日這個參數取數據而導致取不到數據。
>w.wsd("600000.SH,000002.SZ","eps_basic","2013‐01‐01","2014‐06‐17","Period=Q;")
$Data
DATETIME 600000.SH 000002.SZ
1 2013‐03‐29 NaNNaN
2 2013‐06‐28 NaNNaN
3 2013‐09‐30 1.599 0.56
4 2013‐12‐31 2.194 1.37
5 2014‐03‐31 0.574 0.14
6 2014‐06‐17 NaNNaN
>w.wsd("600000.SH,000002.SZ","eps_basic","2013‐01‐01","2014‐06‐17","Period=Q;Days=Allda
ys;")
$Data
DATETIME 600000.SH 000002.SZ
1 2013‐03‐31 0.477 0.15
2 2013‐06‐30 1.039 0.41
3 2013‐09‐30 1.599 0.56
4 2013‐12‐31 2.194 1.37
5 2014‐03‐31 0.574 0.14
6 2014‐06‐17 NaNNaN
該參數在WSD、WSS 導航界面中可以看到對應的選項。
9 取不到數據問題
這個問題有多種可能性,首先需要排除各種出錯的可能性,所以最好是找到具體的哪條命令,找到具體的報錯信息。 有這么幾種可能性:
全角半角字符弄錯(尤其是逗號)
指標是不支持的指標(可能是 VBA 的單值函數,可能是其他函數的類似指標)
命令行太長(我們現在支持最長 65535 個字符)
取的是非交易日行情數據,或者是非報告期日的財務數據
日期宏用錯。‐100D 和ED‐100D 的區別
期貨品種取到了未上市或已退市的日期
本來就沒有該種數據,比如用基金代碼(.OF)取高開低收
如果是手敲的命令,丟失了不常見的參數,例如經常有人沒有給 rptType=1 這個參 數
拼接字符串的問題:有些用戶把變量寫進了字符串里面,這樣是不行的。例如:date=’20140508’; w.wss(‘000001.SZ’, ‘close’, ‘tradedate=date’);
如果語句沒有明顯出錯,那么考慮下使用命令生成器或導航界面產生命令再運行下,如果正常則很有可能是語句出錯。其他情況可以詢問客服或者在中國量化交易群中咨詢。
10 可選參數問題
固定參數和可選參數的不同,可選參數必須寫上關鍵字 Key
可選參數的可能語法請盡量使用:‘Key1=Value1;Key2=Value2;Key3=Value3’;請注意 這要組織成字符串,并且注意參數的格式,特別是時間格式。
在 Python、R 中支持Key1=Value1,Key2=Value2,Key3=Value3 參數傳遞方式;
在 Matlab 支持:‘Key1=Value1’,’Key2=Value2’,’Key3=Value3’ 和) ‘Key1’,’Value1’,’Key2’,’Value2’,’Key3’,’Value3’方式。
11 NaN 相關問題。(怎么把空數據填成0?)
當出現無數據的情況時接口有時會返回 NaN,表示無數據,而實時函數WSQ 則只會返回只會返回0。
可以用 Fill=Previous 或者Fill=Blank 來處理NaN;默認是Fill=Blank。
WSD、WSS 函數有一個問題,假如取到的第一個數據就是NaN,它不會往前取,于是就會保持NaN。例:某股票1 號的時候某數據為10,2 號到10 號都因為停牌沒有數據,假如你取6 號到10 號的該數據,并且設置Fill=Previous,因為6 號的數據為空,且不往前追溯,則會取到5 個NaN。
MATLAB/R/Python/VBA 可以使用非公開參數showblank 來處理空值。Showblank=后面 的字符串會替代空值,并該字符串會被解釋為數字。例如showblank=0,會用數字0 來 填充空值。C/C++/C#不支持該參數。
12 速度慢及 WSD/WSS 函數使用相關問題
除 C++和C#外,其余的函數都是同步函數,需要等數據取到才能往下執行。而取數據是需要訪問網絡的,不可能太快,總要幾百毫秒;網絡不好的情況下需要1 秒以上,所以,如果連續調用取數據的函數,必然會很慢。
根據上一條,要加快速度的重點,在于減少函數的調用次數。這里有一點小技巧。WSD 和WSS 其實是取的同一個數據庫,它是一個三維組的概念,即品種、指標、時間。由于不方便一下子取一個三維數組回來,所以要限定某一維為1,這樣取回的就是一個兩維數組了。WSS 就是限定時間這一維為1,原先的WSD 就是限定品種數量為1。現在也能支持指標數量為1 了。需要取三維數組的時候怎么辦呢?做循環,但是為了速度快,應當取數量最小的那一維做循環。
例:要取全部A 股一個月的高開低收指標。(2500204) 如果對品種做循環,要取2500 次;對時間做循環,要取20 次;對指標做循環,只需要取4 次。完成同樣的功能,速度天差地別。
13 怎樣判斷股票是否是 ST 股?
通過w.wset 命令實現。具體來說通過wset 導航界面,然后選擇“板塊成分”,選擇“板塊名稱”,選擇“滬深股票”,“風險警示股票”。 對應語句為: w.wset("SectorConstituent","date=20130609;sector= 風險警示股票;field=wind_code") 在R 中可以用any(data????????wind_code=='900955.SH')語句判斷。
14 回調函數是什么
回調函數是用戶寫好讓接口調用的函數。為了更加快速和實時獲取數據,接口底層采用異步操作,在獲得數據后推送給客戶,這樣在每種語言接口上都提供了回調函數接口。 在c++/C#目前基本全都是回調函數模式;在Matlab、VBA、R、Python 中目前則只有WSQ 的訂閱功能提供了回調函數功能。
15 沒有權限怎么辦?"No R API Authority!”怎么辦?
登錄出錯信息為:"No R API Authority!”"No Matlab API Authority!” 此時應跟客戶經理聯系請開通相應權限。
16 怎么判斷證券是否正在交易?
通過WSQ 交易字段rt_susp_flag w.wsq('600058.SH','rt_susp_flag') WSQ 里面停牌標志指標含義如下: 停牌標志是五位整數,前四位是月份和日期,最后一位含義如下: 0不停; 1停1h; 2停2h; 3停半天; 4停下午; 5停半小時; 6臨時停牌; 9停牌一天 共有三種情況,舉例如下: 數據=0,說明一年以內從來沒有停牌過; 數據形如04110,說明自從最近的4月11日復牌以后,沒有停牌過; 數據形如05229,(日期是本交易日的日期),說明今天停牌了,停牌狀況見上面的數字說明。
通過wsd,wss的trade_status字
17 WSQ 相關問題
WSQ 的速度非常快,全市場某個價格數據取一次可以在秒鐘以內完成,非常方便。
對于 Matlab、VBA、R、Python 語言,WSQ 提供了兩種調用方式一種是一次性取數據,不需要回調函數,此時接口會根據參數內容完整的把數據組織好返回給用戶。另外一種則是訂閱模式,此時需要提供回調函數,WSQ 會根據客戶的參數發現數據有變動時把變動的部分通過回調函數方式告知用戶。
WSQ 訂閱模式中,因為只有變化的數據才會被推送,所以回調函數一定要檢查一起傳回的品種列表和指標列表。
WSQ 數據限制策略為同時最多只能訂閱16000 個指標:即代碼乘以指標小于 16000。
18 為什么 Wset 取指數成分沒有數據?
現在僅支持交易所指數取成份,第三方指數成分不支持。
19 為什么 Wset 取指數權(滬深300 指數)重時為NaN?
由于中證權限問題,用戶只能取到上個月的權重,但是成份卻是及時更新的。這樣那些新納入的品種的權重就是NaN 了。
20 模擬交易柜臺怎么登錄?賬戶和密碼是?
資金賬號為WindID+01(股票) 02(期貨),登陸類型要選相應的股票交易所或者期貨交易所,具體哪個交易所無所謂。 另外,需要曾經登陸過WTTS 才可以使用接口。
21 Wind 實盤交易怎么與經紀商連接的?(交易安全性嗎?)
Wind 的接口是直連券商或者期貨商機房里部署的服務器的,該服務器屬于券商不屬于Wind,因此沒有信息泄露的問題。
22 Wind 交易通道傳輸數據會加密碼?會不會有安全問題?
Wind 交易通道要么直接使用CTP 通道,要么一定會有加密過程,安全性高。
23 quota exceed 什么錯誤?數據限額是多少?
Xxx quota exceed 表示用戶最近提取數據已經超過規定數量。
WSI 限制取數據為最近三年;WST 限制為最近七天。
條件選股 WEQS 后臺會調用WSS 來實現其功能,故可能因為超限而失敗,但錯誤信息里面跟超限沒有什么關系。
遇上超限問題,可讓打服務部電話請求幫助。
24 C#程序為什么不能運行?
由于我們的Library 是分x86 和x64 的,用戶的C#程序也需要設置為x86 或者x64,并且 引用對應的library,不能使用any cpu/mixed platform 設置。
25 Wind 數據什么時候入庫?
Wind 數據庫大約是收盤后一到兩小時把當天數據入庫,海外的數據要稍晚點。財務、公告等數據一般是晚上入庫。(包括凌晨)在這段時間取數據有可能出現有時候有數據有時候無數據的情況。
26 為什么金融終端 WFT 取到的分鐘線和WSI 命令取到的數據不一致?
由于歷史原因,WFT 數據和WSI 分鐘計算方式不一致,WSI 的方式將是以后的方向。
27 Parameter Error(reported from Server)這個錯誤是因為什么原因?
這是服務器不支持語句中某個參數的返回提示。客戶可以用導航界面產生語句與自己寫的做對比。
28 不能啟動Wind 插件是什么原因?
1) 首先應重新修復下插件(在終端量化菜單中,其中 VBA 插件通過修復Excel 插件完成)。 2) 修復插件后使用 w=windmatlab 出現如下錯誤: windmatlab:login failed ??? Error using ==>windmatlab>windmatlab.windmatlab at 212 windmatlab: failure to create wind object 或者在其他語言使用w.start出現錯誤。 此時很有可能是運行身份或者兼容模式不一致導致的。以下以Matlab為例: 通常有兩種情況,一是用了不同用戶分別運行終端與matlab,讓用戶用同一個賬號運行即可;二是一個用了管理員權限運行,一個沒有用管理員權限運行,或者兼容性中的兼容模式不一致。這種情況問題一般出在終端與matlab 的設置上,請把權限那一頁設置為一樣即可。如下圖,保證兼容模式、特權登記等地方完全一致。
29 量化接口報錯是什么原因?
代碼生成器》工具》錯誤查找中輸入ErrorCode可以查看具體的錯誤說明。
30 代碼報錯提示“沒有API權限”或者“使用流量超額”找誰解決?
權限和流量問題請聯系對接的客戶經理咨詢。
31 API 接口是否提供某指標?
使用代碼生成器》工具》指標查詢查找
32 為什么調用財務指標取不到數據?
調用財務指標需將日期類型改為“日歷日”而不是“交易日”。因為財務指標按照報告期查找,即固定的幾個日期查找。如果該日期不是交易日,選用“交易日”就會取不到數據。
33 怎么查找指標的含義?
指標上鼠標右鍵點“幫助”,會出現指標說明。
34 WSI分鐘數據按照什么規則處理加工的?
在中國量化交易群 (群號 59289)的群文件中下載“萬得行情分鐘數據的處理規則”。
- 用前必讀
- Wind量化接口
- 代碼生成器
- Wind量化接口FAQ
- Wind Python接口
- 接口手冊
- 2. 接口調用from WindPy import *
- 3. 獲取日時間序列函數WSD
- 4.獲取日截面數據函數WS
- 5. 獲取分鐘序列數據函數WSI
- 6. 獲取日內tick數據函數WST
- 7.實時行情數據函數 WSQ
- 8. 獲取板塊日序列數據函數WSES
- 9. 獲取板塊日截面數據函數WSEE
- 10.獲取報表數據函數WSET
- 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. 日期宏說明
- Python接口FAQ