Reailzando previsão da Estrutura a Termo da Taxa de Juros (ETTJ) utilizando métodos de dados funcionais não-paramétricos (em construção)

Bibliotecas necessárias

Para realizar a estimação e previsão da ETTJ, é necessário baixar aqui o arquivo biblioteca-npfda-ettj.R. As funções presentes nesse arquivo foram uma extensão das disponibilizadas em http://www.math.univ-toulouse.fr/staph/npfda/ por Frédéric Ferraty e Philippe Vieu, autores do livro Nonparametric Functional Data Analysis, em cuja teoria estatística foi baseada a análise da ETTJ.

Para experimentos mais longos, há disponível um framework para experimentos de simulação que pode auxiliá-lo nas tarefas de simulação e exibição dos resultados.

taxas.juro deve ser uma matriz em que cada coluna está a série temporal de uma maturidade diferente.

source("biblioteca-npfda-ettj.R")
taxas.juro <- as.matrix(read.csv(nome.base.dados, sep = ",")[, 2:21])
head(taxas.juro)
##         X3    X6    X9   X12   X15   X18   X21   X24   X30   X36   X48
## [1,] 7.297 7.485 7.658 7.818 7.965 8.102 8.229 8.346 8.555 8.736 9.029
## [2,] 7.448 7.590 7.723 7.848 7.964 8.073 8.175 8.271 8.445 8.600 8.860
## [3,] 7.201 7.332 7.455 7.570 7.679 7.781 7.877 7.967 8.133 8.282 8.535
## [4,] 7.299 7.412 7.518 7.618 7.712 7.800 7.884 7.962 8.107 8.238 8.462
## [5,] 7.297 7.408 7.511 7.607 7.698 7.782 7.862 7.936 8.073 8.195 8.404
## [6,] 7.368 7.471 7.569 7.661 7.749 7.832 7.911 7.986 8.126 8.253 8.475
##        X60   X72   X84   X96  X108  X120   X144   X180   X240
## [1,] 9.255 9.433 9.577 9.696 9.798 9.887 10.038 10.220 10.448
## [2,] 9.070 9.243 9.387 9.510 9.617 9.710  9.867 10.049 10.264
## [3,] 8.743 8.917 9.065 9.192 9.302 9.400  9.564  9.754  9.977
## [4,] 8.649 8.808 8.946 9.066 9.174 9.271  9.438  9.642  9.893
## [5,] 8.579 8.728 8.859 8.976 9.083 9.181  9.357  9.582  9.874
## [6,] 8.663 8.823 8.962 9.084 9.192 9.288  9.453  9.648  9.881

{Em breve, explicação sobre os dados funcionais disponível aqui.}

Primeiro, deve-se escolher para qual maturidade faremos a previsão. (…)


maturidade <- 7
retirar <- taxas.juro[, 6]
curvas <- PreparaCurvasCorte(taxas.juro, maturidade, intervalo.passado, intervalo.futuro, 
    retirar = retirar)
semimetricas <- SemimetricasClasse(curvas, q = 1, tipo = "deriv")
taxas.previstas <- predict(curvas, semimetricas)