R
在 R 中使用 termstrc 包
我正在嘗試使用 R 中 termtrc 包中的函式 estim_nss 從美聯儲發布的恆定到期利率中找到即期曲線。我使用這個軟體包是因為我將來需要處理浮動利率息票債券。該函式需要一個“couponbonds”類的對象,但我不知道如何創建這個類。我嘗試使用類似數據創建一個列表對象,但該函式拒絕該對象並顯示以下消息:
UseMethod(“estim_nss”)中的錯誤:沒有適用於“estim_nss”的方法應用於“list”類的對象
任何援助將不勝感激。
結果比我想像的要簡單。首先,請務必在建構列表時將“STARTDATE”替換為“ISSUEDATE”。建構列表後,只需使用以下命令對其進行重新分類:
類(mybonds)=“couponbonds”
就是這樣!
您可以使用參考手冊第 31 頁和第 32 頁中描述的程序創建數據。必要的程式碼複製如下:
# The following code may be used to generate an empty data set, # which can then be filled with bond data: ISIN <- vector() MATURITYDATE <- vector() STARTDATE <- vector() COUPONRATE <- vector() PRICE <- vector() ACCRUED <- vector() CFISIN <- vector() CF <- vector() DATE <- vector() CASHFLOWS <- list(CFISIN,CF,DATE) names(CASHFLOWS) <- c("ISIN","CF","DATE") TODAY <- vector() mycountry1 <- list(ISIN,MATURITYDATE,STARTDATE, COUPONRATE,PRICE,ACCRUED,CASHFLOWS,TODAY) mycountry2 <- list(ISIN,MATURITYDATE,STARTDATE, COUPONRATE,PRICE,ACCRUED,CASHFLOWS,TODAY) names(mycountry1) <- c("ISIN","MATURITYDATE","STARTDATE","COUPONRATE", "PRICE","ACCRUED","CASHFLOWS","TODAY") names(mycountry2) <- c("ISIN","MATURITYDATE","STARTDATE","COUPONRATE", "PRICE","ACCRUED","CASHFLOWS","TODAY") mybonds <- list(mycountry1,mycountry2) names(mybonds) <- c("mycountry1","mycountry2")
最後設置剛剛創建的對象的類:
class(mybonds)="couponbonds"