The Other Way a Regression Lies: Endogeneity, 2SLS, and the Gamma Calibration Problem
Selection bias in the search is not the only way a regression fools you. When the regressor is correlated with the error, more data makes the estimate more confidently wrong. Instrumental variables applied to the one endogeneity problem this blog has already left open: permanent impact from net taker flow.

Esistono due modi strutturalmente diversi in cui una regressione può mentirti e questo blog finora ne ha attaccato solo uno.
Il primo è il bias di selezione nella ricerca: hai eseguito diecimila test retrospettivi, hai mantenuto il meglio e il numero che stai osservando è il massimo di una distribuzione di rumore piuttosto che di un effetto. Questo è l'oggetto dell'indice di Sharpe sgonfio e del suo coronamento onesto negativo. La soluzione è valutare la ricerca.
Il secondo è la distorsione del coefficiente stesso, su una singola regressione su cui non hai mai effettuato alcuna ricerca. Se il regressore è correlato al termine di errore, l’OLS è distorto e incoerente e, a differenza del rumore di campionamento, questo non si riduce con la dimensione del campione. Più dati rendono più stretto il numero sbagliato. Nessuna quantità di bootstrap, walk-forward o deflazione lo tocca, perché nessuno di questi metodi mette in discussione l’identificazione, ma solo la selezione.
Questo articolo riguarda il secondo fallimento e non si tratta di una preoccupazione astratta. L'articolo sulla calibrazione Almgren-Chriss si adatta all'impatto permanente regredendo le variazioni di prezzo medio di 5 minuti sul flusso netto degli acquirenti, ottiene un di pochi punti percentuali e un coefficiente che si sposta di 2-5 volte tra un giorno e l'altro, e nomina l'endogeneità come prima ragione strutturale: "Il flusso risponde al prezzo tanto quanto il prezzo risponde al flusso. I trader di momentum acquistano perché il prezzo è aumentato; un ingenuo OLS di rendimenti sul flusso rileva la loro reazione e la attribuisce all'impatto." Nomina anche la soluzione pulita: i tuoi riempimenti, esogeni per costruzione.
Questo è un problema di variabili strumentali con uno strumento denominato e dati già interni. Di seguito sono riportati lo stimatore, la diagnostica e l'esperimento.
Endogeneità in un paragrafo

OLS stima la causale In solo sotto . Tre cose lo rompono. Distorsione da variabili omesse: se guida entrambi E ed è inosservato, vive nell'errore, , E forze — nella microstruttura, l’arrivo di informazioni non osservate determina insieme volume e volatilità. Errore di misura: con proxy rumoroso , , sempre attenuato verso lo zero: il flusso aggTrades netto è un proxy del vero flusso di ordini firmati in un mercato frammentato e la parte che non vedi mai è l'errore di misurazione. Simultaneità: già affermata in forma più netta e concreta nella calibrazione dell'impatto di Almgren-Chriss, che è il problema motivante per tutto ciò che segue.
La soluzione IV

Uno strumento deve soddisfare due condizioni:
- Pertinenza: . Testabile e devi testarlo.
- Esclusione: — colpisce solo attraverso . Non testabile. Mai. È un argomento economico, non una statistica.
Per uno strumento e un regressore endogeno lo stimatore è un rapporto di due effetti in forma ridotta (lo stimatore di Wald):
Con controlli e strumenti multipli usi 2SLS. Fase 1: regredire la variabile endogena su strumenti e controlli, e mantenere i valori adattati - per costruzione contengono solo variazioni esogene e guidate dallo strumento. Fase 2: corri . In forma matriciale, con :
La trappola che cattura chiunque la lanci a mano: se ne esegui letteralmente due lstsq chiamate, gli errori standard della fase 2 sono errati. è un regressore generato e la varianza residua deve essere calcolata dall'originale , non quello montato. Gli errori standard ingenui in due passaggi sono troppo piccoli, quindi il tuo -le statistiche sono troppo grandi e rifiuterai eccessivamente. Utilizza una vera implementazione IV:
from linearmodels.iv import IV2SLS
import pandas as pd
def iv_regression(df, dep_var, endog_var, instruments, controls=None):
"""2SLS with correct generated-regressor standard errors."""
y = df[dep_var]
endog = df[[endog_var]]
instr = df[instruments]
const = pd.Series(1, index=df.index, name="const")
exog = pd.concat([const, df[controls]], axis=1) if controls else const
res = IV2SLS(dependent=y, exog=exog, endog=endog,
instruments=instr).fit(cov_type="robust")
print(res.summary)
return res
L'esperimento: gamma OLS contro gamma 2SLS

La regressione in esame è l'adattamento a impatto permanente dell'articolo di Almgren-Chriss:
è endogeno per l'argomento di simultaneità di cui sopra. Lo strumento è i tuoi riempimenti nella finestra: i riempimenti del tuo produttore sono attivati dal tuo programma di quotazione e dalla politica di inventario, non dal percorso dei prezzi di mercato, quindi sono una fonte di variazione del flusso degli ordini che è plausibilmente non correlata con la componente momentum-reazione dell'errore. La restrizione di esclusione (che i tuoi riempimenti spostano la metà solo attraverso il loro contributo al flusso netto) è il presupposto su cui discutere, ed è più debole esattamente quando la tua quotazione è essa stessa guidata dal segnale. Se le tue quotazioni sono condizionate da una previsione dei prezzi a breve orizzonte, lo strumento è contaminato e questo progetto fallisce. I riempimenti derivanti da una pura politica di gestione dell'inventario o di acquisizione degli spread sono il caso pulito.
I dati di riempimento provengono dal record TCA descritto in implementation shortfall e DIY TCA — lo stesso registro che fornisce il campione di adattamento per slippage curve from your own fills. Controlli: ritardati e realizzato la volatilità nella finestra.
# per 5-min bin over the sample:
# dS mid-price change (outcome)
# q_net signed net taker flow (endogenous)
# q_own signed own-fill quantity (instrument)
# dS_lag, rv controls
ols = IV2SLS(dependent=df.dS, exog=df[["const", "dS_lag", "rv"]],
endog=None, instruments=None).fit(cov_type="robust")
tsls = iv_regression(df, "dS", "q_net", ["q_own"], ["dS_lag", "rv"])
Quattro numeri decidono se valeva la pena farlo: l'OLS , il 2SLS , la prima fase e il divario tra i due coefficienti, ovvero la quota della stima OLS che è stata una reazione allo slancio piuttosto che un impatto.
Se la prima fase torna sotto 10, questo è il risultato: i propri riempimenti sono una frazione del flusso netto troppo piccola con una risoluzione di 5 minuti per essere identificata , e il resoconto onesto è negativo nello stile del negativo onesto. Uno strumento debole negativo è una scoperta reale: indica che l’endogeneità nell’adattamento gamma non è risolvibile con queste dimensioni e orizzonte del campione e che le stime dei costi pre-negoziazione si basano sull’OLS comportano una tendenza al rialzo inevitabile.
Diagnostica

Primo stadio F (strumenti deboli). Regola empirica Staiger-Stock: . I valori critici di Stock-Yogo per un regressore endogeno sono più rigidi: per una dimensione IV massima del 10%, con uno strumento, 19.93 con due, 22.30 con tre; per dimensione 15%, 8,96 / 11,59 / 12,83; per il 20%, 6,66 / 8,75 / 9,54.
Durbin-Wu-Hausman (è addirittura necessaria la IV). Se OLS è coerente è anche più efficiente, quindi prova prima di cambiare. La forma di aumento residuo è quella pratica: esegui la fase 1, mantieni , quindi eseguire la regressione strutturale OLS con aggiunto come regressore. Un coefficiente significativo su è la prova dell'endogeneità.
def durbin_wu_hausman(df, dep, endog, instruments, controls):
"""Augmented-regression form of the DWH endogeneity test."""
import statsmodels.api as sm
X1 = sm.add_constant(df[instruments + controls])
v_hat = df[endog] - sm.OLS(df[endog], X1).fit().fittedvalues
X2 = sm.add_constant(df[[endog] + controls].assign(v_hat=v_hat))
res = sm.OLS(df[dep], X2).fit(cov_type="HC1")
return res.tvalues["v_hat"], res.pvalues["v_hat"]
Sargan-Hansen (sovraidentificazione). Con strumenti per testare la validità congiunta: , dove il deriva dalla regressione dei residui 2SLS su tutti gli strumenti e i controlli esogeni. L'avvertenza conta più della statistica: Sargan rileva solo gli strumenti che non sono validi in diversi modi. Se ogni strumento è correlato con la stessa variabile omessa, il test passa in modo pulito e non ti dice nulla.
Strumenti che esistono nella microstruttura crittografica

Trovare uno strumento valido è l’intera difficoltà, e gli strumenti di supporto azionario-aziendale-finanza (copertura degli analisti, scudi fiscali, flussi di cassa straordinari) sono inerti qui. In realtà si applicano due classi:
| Variabile endogena | Strumento | Motivazione |
|---|---|---|
| Flusso netto di acquirenti | I tuoi riempimenti | Guidato dalla tua politica di quotazione e di inventario, non dal percorso dei prezzi del mercato: esogeno per costruzione se le tue quotazioni non sono condizionate dal segnale |
| Portata/volume aggregato | Flussi meccanici dei cambi: ribilanciamento degli indici, finestre di regolamento dei finanziamenti, cascate di liquidazione programmate | La tempistica è stabilita dalle regole di scambio, non dall'arrivo delle informazioni |
Insidie

Gli strumenti deboli non falliscono rumorosamente. Con un primo stadio debole, 2SLS è sbilanciato verso OLS in campioni finiti, approssimativamente
A mantieni il 25% del bias OLS mentre riporti una stima "causale". I rimedi sono il LIML, che ha un comportamento migliore a campione finito, o il test di Anderson-Rubin, che è valido indipendentemente dalla forza dello strumento.
Distorsione da molti strumenti. . Gettare ritardi di tutto per potenziare il primo stadio riporta il preventivo direttamente a OLS. Se non è trascurabile, utilizzare LIML, jackknife IV (JIVE), o un primo stadio regolarizzato.
La restrizione di esclusione non può essere testata. Né da Sargan, né da niente. Viene difeso con il ragionamento di dominio, e la forma onesta di tale difesa è un’analisi di sensibilità: quanta violazione sarebbe necessaria per ribaltare la conclusione?
Da asporto

- La deflazione corregge i bias della ricerca. Non fa nulla per la distorsione del coefficiente. Sono fallimenti diversi e necessitano di strumenti diversi.
- Il bias di endogeneità non svanisce con la dimensione del campione. Un coefficiente rigoroso, ben avviato e convalidato dal walk forward può ancora essere sistematicamente sbagliato.
- La regressione gamma nella calibrazione Almgren-Chriss è un'istanza interna dal vivo, con uno strumento denominato (riempimenti propri) e i dati già registrati dalla pipeline TCA.
- Segnalare la prima fase prima del coefficiente 2SLS. Al di sotto di 10, il coefficiente non è una prova, e dirlo è il risultato pubblicabile.