Двойное суммирование в функции, которое будет использоваться для оценки логарифма правдоподобия - PullRequest
1 голос
/ 05 мая 2020

Я пытаюсь получить параметры оценки для следующего уравнения:

enter image description here

Во-первых, мне нужно написать функцию с двойным суммированием. Затем я воспользуюсь любым методом оптимизации, чтобы получить оценочные параметры (может быть nlm, optim et c). Вот моя попытка (хотя я не уверен, как добавить в конце часть двойного суммирования, два цикла for):

Есть 5 параметров: alpha_x, sigma_x, lambda_x, theta_x, phi_x >>> step_3[1] == alpha_x

for (a in 1:nrow(returns[[4]][,1])){
      abc <- 0      
for (b in 0:7){
  abc <- abc + (step_3[3]^b*(factorial(b))^-1*(sqrt(step_3[2]^2+b*step_3[5]^2))^-1*exp(-1*(as.numeric(returns[[4]][a,1])-(step_3[1]+b*step_3[4]))^2*(2*(step_3[2]^2+b*step_3[5]^2))^-1))
}
      abcd  <- abcd + log(abc)
    } 
  abcd <- -abcd  + 0.5*nrow(returns[[4]][,1])*log(2*pi) + nrow(returns[[4]][,1])*step_3[3]

  return(abcd)
  }

nlm(s3, step_3 <- c(0.01,0.01,0.01,0.01,0.01), hessian = TRUE )

Я получаю результаты оценки, но они неверны:

Мой вопрос в том, как реализовать (эффективно, любые предложения для sapply et c. будет оценено) двойное суммирование (sum_0_T)> ln (sum_1_l) в функцию. Функция будет использоваться при оптимизации. (l = 0: 7, T = количество наблюдений) return 1 = некоторый вектор с возвратами цены (все возвраты между -1,1). После оценки выборочное среднее и дисперсия должны быть примерно равными:

sample_mean = alpha_x + lambda_x * theta_x

sample_variance = sigma_x ^ 2 + lambda_x * (theta_x ^ 2 + phi_x ^ 2)

Спасибо.

Вот пример, который можно использовать для анализа:

c (0,02423747, -0,00419738, -0,03153278, 0,05343888, -0,0175492, 0,00848472, 0,01043673, -0,02123556, 0,01954968, -0,06462473, 0,02679873, 0,07971938, 0,00050474, -0,01768566, -0,05206762, -0,00413691, 0,06390499, 0,00269576, 0,01520837, 0,00091051, 0,03499043, -0,00121999, -0,00365123521, -0,011350690, -0,00365123521, -0,01135031 , 0,00480223, 0,01916402, 0,00054628, 0,01911904, 0,02194556, 0,00371314, 0,03376601, 0,0546574, -0,03972611, -0,0272525, 0,00271509, 0,02137819, 0,00483075, 0,03538795, 0,02981431, 0,0177017509, 0,07652155, -0,07652155 , -0,06804089, 0,0666583, 0,01304272, -0,01825728, 0,01703525, 0,02022584, 0,03348027, 0,02818876, -0,00162942, -0,08785954, -0,13366772, 0,10243928)

...