Les tests d’hypothèses économiques
Une question centrale à se poser avant de conclure quant à la validité des résultats est de savoir si le modèle spécifié est correcte:
La relation est-elle commune pour l’ensemble des individus de l’échantillon?
La forme fonctionnelle choisie est-elle la meilleure?
Une variable importante est-elle omise?
Dans ce TD, nous allons apporter quelques tests permettant d’avoir des “intuitions” quant à la validité du modèle choisi
set.seed(42)
suppressPackageStartupMessages({library(ggplot2); library(dplyr); library(tidyr)})
years <- 1960:1990
t0 <- min(years)
t <- years - t0
n <- length(years)
t_break <- 1974
## Trajectoire "stable"
y_stable <- 5 + 0.5 * t + rnorm(n, sd = 1.5)
## Trajectoire avec rupture (claire) : saut de niveau + pente plus forte
beta_pre <- 0.20 # pente avant 1974
beta_post <- 1.10 # pente après 1974
level_jump <- 8 # saut de niveau à 1974
sd_pre <- 1.2
sd_post <- 1.0
is_post <- years > t_break
# Formule segmentée (continue au point de rupture + saut de niveau explicite)
y_break <- 3 + beta_pre * t +
is_post * ( level_jump + (beta_post - beta_pre) * (t - (t_break - t0)) ) +
rnorm(n, sd = ifelse(is_post, sd_post, sd_pre))
df <- tibble(
year = years,
stable = y_stable,
rupture = y_break
) |>
pivot_longer(-year, names_to = "scenario", values_to = "y") |>
mutate(segment = case_when(
scenario == "stable" ~ "Stable (toutes années)",
scenario == "rupture" & year <= t_break ~ "Avant 1974",
scenario == "rupture" & year > t_break ~ "Après 1974"
))
# Bandeau après 1974 pour guider l’œil
band <- data.frame(xmin = t_break, xmax = max(years), ymin = -Inf, ymax = Inf)
ggplot() +
# Bandeau post-1974
geom_rect(data = band, aes(xmin = xmin, xmax = xmax, ymin = ymin, ymax = ymax),
inherit.aes = FALSE, fill = "grey90") +
# Points
geom_point(data = df, aes(year, y, color = scenario), alpha = 0.7) +
# Deux droites pour le scénario "rupture" (avant / après)
geom_smooth(data = df %>% filter(scenario == "rupture"),
aes(year, y, linetype = segment), method = "lm", se = FALSE, linewidth = 1.1) +
# Une seule droite pour le scénario "stable"
geom_smooth(data = df %>% filter(scenario == "stable"),
aes(year, y), method = "lm", se = FALSE, linewidth = 1.1) +
# Marqueur de la date de rupture
geom_vline(xintercept = t_break, linetype = 2) +
annotate("label", x = t_break + 0.6, y = max(df$y, na.rm = TRUE),
label = "Rupture 1974", size = 3) +
labs(x = "Année", y = "Variable (simulée)",
color = "Scénario", linetype = "Segment (rupture)") +
theme_minimal(base_size = 13) +
theme(legend.position = "top")
Figure 1: Rupture structurelle marquée en 1974 : saut de niveau + changement de pente.
Figure 2: Hétérogénéité des coefficients par groupe (pays en guerre vs autres).
Figure 3: Inverted-U dataset: linear fit misses curvature; quadratic and smoother capture it.
Test de Chow
Ce test nécessite de connaître le point de rupture
Intuition: Le test cherche à étudier si les comportements différent dans les deux sous-échantillons (1 & 2)
En présence de stabilité des coefficients, la SCR de l’chantillon total devrait être égale à la somme des SCR des deux sous chantillons
\(SCR_{t} \equiv SCR_{1}+SCR_{2}\)
\(H_0\): Stabilité des coefficients
Caution
Attention: Il faut travailler avec des erreurs homoscédastiques (sinon forte probabilité de rejet de \(H_{0}\))
Test de Chow
La statistique de Chow suit une loi de Fisher-Snedecor:
Note
On estime 3 régressions, la 1re sur le premier sous-échantillon avant la date de rupture, la 2nde sur le deuxime échantillon après la date de rupture, et la 3me sur l’échantillon complet.
KFaire: View \(\to\) Stability diagnostic \(\to\) Chow Breakpoint Test
Choisir le point de rupture
Note
Ce test peut être fait avec plus de deux sous-groupes
Test de Chow
Sur petits échantillons, appliquer le test de Chow prédictif:
Sur EViews, choisir Chow Forecast Test
Test de Quandt-Andrews
Test basé sur le test de Chow mais utile si la date de rupture est inconnue
La procédure du test est la suivante:
Estimation de la statistique de Chow pour toutes les observations possibles
On retient la date la plus défavorable l’hypothèse nulle
On regarde en fonction de la table tabulée par Andrews si \(H_{0}\) est rejetée ou non
Ce test est enregisté sur EViews:
Stability Diagnostic \(\to\) Quandt-Andrews Breakpoint Test
Test Sample: Permet de connaître le point de rupture
Important
Les tests de Chow et Quandt-Andrews sont programmés pour des séries temporelles
Avant de les mettre en oeuvre, il faut classer les données par ordre croissant en fonction de la modalité pouvant être l’origine de la rupture
Faire Proc \(\to\) Sort Current Page
Choisir la variable
Solutions
En cas de non stabilité des coefficients, trois solutions sont envisageables:
Estimer sur des sous-chantillons
Inclure des variables muettes additives et multiplicatives selon la période de rupture
Exclure les points aberrants
Il est important de savoir si le modle est bien spécifié
Prise en compte de toutes les variables pertinentes
Utilité de la forme linaire
Une solution simple serait d’inclure ces variables et de tester leur significativité. Cette solution pose problème:
Perte de degrés de liberté
Il faut connaître ces variables
Ne permet pas de traiter du problême de la linarité
\(\to\) Le test du RESET permet de faire la même chose plus simplement
Le test du RESET va comparer la spécification retenue à une spécification plus générale:
\(H_{0}: y_{i}=\beta_{0}+\beta_{1}x_{i}+\beta_{2}z_{i}+\epsilon_{i}\)
\(H_{1}: y_{i}=\beta_{0}+\beta_{1}x_{i}+\beta_{2}z_{i}+\delta_{1}\hat{y}_{i}^2+\delta_{2}\hat{y}_{i}^3+\delta_{3}\hat{y}_{i}^4+\epsilon_{i}\)
Il va consister à voir si les coefficients \(\delta_{j}\) sont conjointement diffrents de 0 grâce un F-test
Rejet de \(H_{0}\) \(\to\) Mauvaise spcification du modle
Forme linaire appropriée?
Variable(s) pertinente(s) non incluse(s)?
Sur EViews: Stability Diagnostic \(\to\) Ramsey RESET Test
Le polynme retenu est généralement d’ordre 3 ou 4
Il peut exister un problème de multicolinarité
Il peut être parfois utile de comparer des modèles differents
Les critres d’information sont utiles pour sélectionner le meilleur modèle économique
Il existe également le J-test
Les trois principaux critères sont:
Critère d’Akaike (AIC)
Critère de Schwartz (SC)
Critère de Hannan-Quinn (HQC)
Ces critères se calculent comme suit:
\(AIC=ln\left(\frac{SCR}{N}\right)+\frac{2K}{N}\)
\(SC=ln\left(\frac{SCR}{N}\right)+\frac{Kln(K)}{N}\)
\(HQC=Nln\left(\frac{SCR}{N}\right)+2Kln[ln(N)]\)
La valeur de ces critères est donnée dans le tableau de régression
On choisit le modèle qui minimise les critères d’information
Caution
Attention: Ces critres sont à manier avec prudence et le raisonnement économique doit toujours primer
Vous devez estimer les équations où la dépense qui porte sur un secteur dépend d’une constante, du revenu et du prix réel dans le secteur en question et tester la présence d’une autocorrélation à l’ordre un dans le terme d’erreurs à l’aide du test de Durbin et Watson. Qu’en concluez-vous ?
Le test de Durbin-Watson est particulièrement utile pour détecter une autocorrélation d’ordre 1.
Hypothèses : - H₀ : pas d’autocorrélation d’ordre 1 dans les résidus. - H₁ : autocorrélation d’ordre 1 présente.
Résultats : - Dépenses habillement : DW = 1,679, compris entre DU = 1,55 et 2 → pas d’autocorrélation d’ordre 1. - Téléphone : DW = 0,901, inférieur à DL = 1,21 → présence d’autocorrélation d’ordre 1. - Transport aérien : DW = 1,462, entre DL et DU → zone d’incertitude, conclusion indéterminée.
Testez la présence d’une autocorrélation à l’ordre un dans le terme d’erreurs par le test de Breusch-Godfrey. Qu’en concluez-vous ?
Hypothèses : - H₀ : pas d’autocorrélation des erreurs jusqu’au nombre de retards spécifié. - H₁ : autocorrélation présente.
Statistique : BG = T × R² → loi χ²(t) avec t = ordre du processus (ici 1).
Résultats : - Habillement : BG = 0,018 < 3,841 → on ne rejette pas H₀ → pas d’autocorrélation. - Téléphone : BG = 0,281 > 3,841 → on rejette H₀ → autocorrélation présente. - Transport aérien : BG = 0,051 < 3,841 → pas d’autocorrélation.
Corrigez l’autocorrélation éventuelle par la procédure automatique de Cochrane-Orcutt. Qu’en concluez-vous ?
Pour corriger l’autocorrélation des erreurs, on applique la procédure Cochrane–Orcutt : inclure un terme AR(1) dans l’équation (sur EViews, ajouter AR(1) dans l’équation).
Conclusion : il n’y a pas de correction particulière à faire pour les dépenses téléphoniques après l’application de cette procédure.
Faites un test des facteurs communs (COMFAC) pour les dépenses en téléphone et dégagez la meilleure spécification de l’équation explicative pour ces dépenses.
Aucun test spécifique n’a été effectué pour cette question (pas de résultat fourni dans la correction).
Econométrie - L3