如何將債券發行的 CUSIP 轉換為公司股票的 CUSIP/
作為研究項目的一部分,我使用 WRDS 網站對 Mergent FISD 數據庫進行了查詢。輸出包括大量債券發行的 CUSIP(>10000)。我正在使用這些數據進行事件研究,我需要獲得發行債券的公司股票的 CUSIP。由於我有超過 10000 個數據點,因此我需要自動執行此轉換或查找過程。在這種情況下,任何程式語言或方法都適合我。
你可以在這裡使用這個網站:http: //activequote.fidelity.com/mmnet/SymLookup.phtml
我建議使用簡單的數據操作語言(例如 Python)來解決您的問題。您需要編寫一個程式碼來讀取特定 CUSIP 號碼的網頁,然後找到 HTML 文件中包含公司名稱的特定部分,並將該資訊從網頁中提取出來。
例如,為了查找 037833100 的 CUSIP,您將獲得相應的 URL: http ://activequote.fidelity.com/mmnet/SymLookup.phtml?reqforlookup=REQUESTFORLOOKUP&productid=mmnet&isLoggedIn=mmnet&rows=50&for=stock&by=cusip&criteria= 037833100&submit=搜尋
現在,您的 Python 程序可以通過為條件部分插入不同的數字來操作 URL,然後讀取頁面並提取公司名稱。
下面是一些 Python 程式碼,您可以使用它來獲取特定股票:
import urllib2 data = urllib2.urlopen('http://activequote.fidelity.com/mmnet/SymLookup.phtml?reqforlookup=REQUESTFORLOOKUP&productid=mmnet&isLoggedIn=mmnet&rows=50&for=bond&by=cusip&criteria=CUSIPNUMBERGOESHERE&submit=Search') data_string = data.read() start = data_string.find("<tr><td height=\"20\" nowrap><font class=\"smallfont\">") end = data_string[start:].find("</font>") companyName = data_string[start:][51:end]
如果您可以訪問彭博終端,則可以在 Excel 中使用此功能:
=BDP("013926500 CORP","BOND To EQY TICKER")
013926500 是 ABB 的 CUSIP
自動化 Bloomberg / Excel 功能非常容易,快速的 Google 應該會向您展示不錯的範例。彭博終端還帶有幾個這樣的範例 API,可以幫助您自動下載。