← Мақалаларға оралу
August 2, 2026
5 мин оқу

Қосты Машинанық Оқыту: Дәлелдерді Болжаудың Орнына Себептік Параметрді Бағалау

Қосты Машинанық Оқыту: Дәлелдерді Болжаудың Орнына Себептік Параметрді Бағалау
#causal-inference
#double-ML
#treatment-effect
#econometrics
#quant

Бұл блогтағы барлық модельдеу мақалалары бірдей пішіндегі сұрақ қояды: белгілер берілгенде, сан болжаңыз, содан кейін болжамның үлгіден тыс білінетінін тексеріңіз. Таралу модельдері таралуды болжайды. Толтыру модельдері толтыру ықтималдылығын болжайды. Тексеру аппаратының бәрі — тазартылған walk-forward, ысымды Sharpe, алдын-ала қарау таксономиясы — болжамның нақты екенін тексеру үшін бар.

Бұл мақала басқа пішіндегі сұрақты қояды, және бұл блогтың ешқашанда болмаған жалғыз құрылдырығы: себептік интерпретациясы бар бір скалярлық параметрді бағалаңыз және оған икемді ML моделі қолданылған факты жоятын стандартты қатені жалғаңыз.

Бұл риторикалық айырмашылық емес. "Кезек позициясы толтыру ықтималдылығын болжайды" деген triviaлық түрде шын және операциялық жағынан пайдасыз — әрине, солай, екеуі де тереңдік және айнымалылықпен басқарылады. "Кезектеге бір позиция алға жылжу себеп болады толтыру ықтималдылығында θ\theta өзгерісіне, нарық жағдайы тұрақты кезінде" — бұл тапсырыс орналасу саясатына қоя алатын сан. Біріншісі — регрессиялық сәйкестіру. Екіншісі үшін стандартты ML жиынтығында жоқ бағалаушы қажет, себебі икемді бірінші кезеңде жіктеу және үстеме оқыту сіз қызығайтын коэффициентті дәл бұрідей бұзады.

Қосты Машинанық Оқыту (Chernozhukov, Chetverikov, Demirer, Duflo, Hansen, Newey & Robins, 2018) — бұны шешетін бағалаушы. әрбір сандық трейдер естіді: корреляция себептілік емес. DML — бұл сөйлемнен кейінгі бөлік.

Неге Наивті Регрессия Сәтсіз Болады

Жасырын нарық жағдайындағы бұзушы кезек орналасуын және толтыру нәтижелерін басқарады, алдамшыл наиви байланысты құрады

Сұрақты блогтың өз аймағында орнатыңыз. Біз кезек позициясының толтыру ықтималдылығына себептік әсерін қалаймыз:

  • YiY_i: бақылау ii-дегі тыныш тапсырыс шегінің көлеус ішінде толтырылды ма.
  • DiD_i: орналасу кезіндегі кезек позициясы (деңгей өлшемімен нормалданған).
  • XiX_i: бұзушылар — анықталған айнымалылық, цитаталанған спред, тереңдік теңсіздігі, деңгей өлшемі, күн уақыты, режим жапсырмасы. Бұл машинанық оқытумен таралу моделдеу блогі есептейтін нарық жағдайы айнымалылары.

Себептік параметр — мұндағы θ0\theta_0:

Yi=Diθ0+g0(Xi)+ϵiY_i = D_i \theta_0 + g_0(X_i) + \epsilon_i

мұндағы g0(Xi)g_0(X_i) нарық жағдайы мен толтыру нәтижесі арасындағы (потенциалды түрде күрделі, сызықтық емес) қатынасты бейнелейді.

Еміле кездейсоқін таңдау емес. Сіз кезектің алдында себебі деңгей жіңіс болды, немесе тыныш кезеңде жарияладыңыз, немесе кітап сіздің пайдаңызға теңсіз болды. Сол жағдайлар сіз толтырылу-толтырлмауыңызды тәуелсіз басқарады. Бұл бұзушылық.

1-ші жолы: Бұзушыларды елемеу. YY-ді DD-ге ғана регрессиялаңыз. Бағалау екеуіне де корреляциялы бар әрбір бұзушының әсерін сіңіреді. Оқулық omitted variable bias: жіңіс деңгейлер сізге жақсы кезек орыны мен жоғары толтыру қарқынын береді, сондықтан орынның өз құнын асқа бағалайсыз.

2-ші жолы: Бақылаулармен сызықтық регрессия. YY-ді DD және XX-ке регрессиялаңыз. Бұл g0(X)g_0(X) шын мәнінде сызықтық болса ғана жұмыс істейді. Кітап динамикасы олай емес — толтыру/айнымалылық қатынасында thresholds бар, тереңдік теңсіздігі әсері режимге қарайн таңбаға ауады. g0g_0-ді қате меншіктелу бұзушылықты қайтадан енгізеді.

3-ші жолы: ML болжамы. (D,X)(D, X) бойынша gradient boosted моделді сәйкестіріңіз. Сіз үлгіден тыс жақсы айыруды аласыз, бірақ ешқандай себептік интерпретация жоқ. Модель әрбір болжамдық үлгіні, себептік немесе, құйып алады; жіктеу емле сіз аңғарған әсерді θ\theta бұзады; және сенімді стандартты қате жоқ.

Бұл негізгі кернеу. ML болжамда жақсы, бірақ себептік параметрге наивті қолдану бұзылған, нормальды емес, сенімсіз бағалауларды тудырады.

Жартылай Сызықтық Модель

Екі синхрондалған残差изациялау арналары таза residual ағындары ортогональ себептік бағалауға кездескенге дейін сіңір нарық жағдайын жояды

DML құрылымдық рамка ішінде жұмыс істейді. Негізгі жұмыс атар жартылай сызықтық регрессия (PLR):

Y=Dθ0+g0(X)+U,E[UX,D]=0Y = D\theta_0 + g_0(X) + U, \quad \mathbb{E}[U \mid X, D] = 0

D=m0(X)+V,E[VX]=0D = m_0(X) + V, \quad \mathbb{E}[V \mid X] = 0

  • θ0\theta_0 — қызығушы себептік параметр.
  • g0(X)g_0(X) — бұлтану функциясы — нарық жағдайымен түсіндірілетін нәтиженің бөлігі.
  • m0(X)m_0(X) — басқа бұлтану функциясы — нарық жағдайы берілген кездегі емле шартты күтуі (үздіксіз емле орнатудағы "propensity").
  • UU және VV — құрылымдық residuale.

Негізгі түсінік: θ0\theta_0 төмен өлшемді, бірақ g0g_0 және m0m_0 ерікті түрде күрделі болуы мүмкін. Біз ML-ге бұлтану функцияларын басқаруды, ал scalарда жарамды推理 ұсынуды қалаймыз.

Неге "Қос"?

Екі ML моделі, біреу емес:

  1. Нәтиже моделі: ^(X)E[YX]\hat{\ell}(X) \approx \mathbb{E}[Y \mid X] — нарық жағдайынан ғана нәтижені болжаңыз.
  2. Еміле моделі: m^(X)E[DX]\hat{m}(X) \approx \mathbb{E}[D \mid X] — нарық жағдайынан ғана еміле болжаңыз.

Residu формалаңыз

Y~i=Yi^(Xi),D~i=Dim^(Xi)\tilde{Y}_i = Y_i - \hat{\ell}(X_i), \quad \tilde{D}_i = D_i - \hat{m}(X_i)

және Y~\tilde{Y}-ді D~\tilde{D}-ге регрессиялап θ0\theta_0 бағалаңыз:

θ^0=iD~iY~iiD~i2\hat{\theta}_0 = \frac{\sum_i \tilde{D}_i \tilde{Y}_i}{\sum_i \tilde{D}_i^2}

Бұл стероидпен Frisch-Waugh-Lovell: бұзушыларды сызықтық проекция орнына ML арқылы partial-out, содан кейін residual вариациядан емле әсерін оқыңыз.

Neyman Ортогоналдылығы: Неге Жұмыс Істейді

Наивті partial-out тәсілі (g0g_0-ді бағала, алып таста, регрессияла) g^0\hat{g}_0-дегі ML бағалау қателері θ^0\hat\theta_0-ге тіке таралатындықтан сәтсіз болады. DML ұпай Neyman ортогональ болып жасалған — бұлтану функцияларындағы кіші бұзулularға байссыз.

PLR үшін ортогональ ұпай:

ψ(W;θ,η)=[Y(X)θ(Dm(X))][Dm(X)]\psi(W; \theta, \eta) = \big[Y - \ell(X) - \theta(D - m(X))\big] \cdot \big[D - m(X)\big]

мұндағы η=(,m)\eta = (\ell, m). Ортогональдылық шарты

ηE[ψ(W;θ0,η)]η=η0=0\left. \frac{\partial}{\partial \eta} \mathbb{E}\big[\psi(W; \theta_0, \eta)\big] \right|_{\eta = \eta_0} = 0

Интуитивті түрде, ұпай DD және YY-дің XX-тен тәуелсіз вариациясын ғана қолданады және бір бұлтану функциясындағы қателер екіншісімен өтеледі. Егер m^\hat{m} емледі аздап кем болжаса, D~\tilde{D} аздап кіші, бірақ \ell-ді қате бағалауыздан Y~\tilde{Y}-дегі сәйкес қате қарапаймын бағыт итер. Бұзушылық екінші ретті болады — екі бірінші кезең қатенің көбейтіндісі — бірінші ретті емес.

Ресми түрде, егер екі бұлтану бағалаушысы n1/4n^{-1/4} жылдамдықпен жинақтаса (жұмсақ; көптеген ақылды ML әдістері қанағат), онда

N(θ^0θ0)dN(0,σ2)\sqrt{N}(\hat{\theta}_0 - \theta_0) \xrightarrow{d} \mathcal{N}(0, \sigma^2)

сондықтан θ^0\hat\theta_0 параметриялық жылдамдықпен жинақтайды және асимптотикалық түрде нормаль.

Cross-Fitting: Міне Неге Міндетті

Ортогоналдылық жеткіліксіз. Егер бұлтану модельдері θ0\theta_0 бағалау үшін қолданылған сол жолдарда сәйкестірілсе, бірінші кезең үстеме оқыту екінші кезеңді ластайды — және нақты зиян дәлдеп айтуға тұрады, себебі бұл сіз әдеттегі зиян емес. Басқа жерлерде, үстеме оқыту ірілген куәктеме ретінде пайда болады: байқайсыз, жеңілдесіп, жалғасыз. Мұнда θ0\theta_0 үшін ығысқан нүкте бағалау ретінде пайда болады, confidence interval әлі тар, бірақ бұрынға сан ортасында. Күдіктейтін ұпай жоқ. Бағалаушы тыныштан жалған айтады.

Cross-fitting тәуелділікті жазады: әрбір бақылаудың бұлтану болжамдары онызсыз оқытылған модельден келеді, және θ0\theta_0 жинақталған held-out residuelerден бағаланады. Механика — қарапайым K-fold машина, машинанық оқытумен таралу моделдеу қамтылған; төменде маңызды — қай foldтарды бередіңіз.

DML Алгоритмі Сатып Саты

Кіріс: деректер {(Yi,Di,Xi)}i=1N\{(Y_i, D_i, X_i)\}_{i=1}^N, ML әдістері M\mathcal{M}_\ell және Mm\mathcal{M}_m, foldтер KK.

1-саты — Бөлу: {1,,N}\{1, \ldots, N\}-ді KK дисъюнкт foldтерге бөліңіз.

2-саты — Cross-fit бұлтану модельдері: k=1,,Kk = 1, \ldots, K үшін, fold kk толықтаушысында ^(k)\hat{\ell}^{(-k)} және m^(k)\hat{m}^{(-k)} оқытыңыз, содан кейін iIki \in I_k үшін Y~i=Yi^(k)(Xi)\tilde{Y}_i = Y_i - \hat{\ell}^{(-k)}(X_i) және D~i=Dim^(k)(Xi)\tilde{D}_i = D_i - \hat{m}^{(-k)}(X_i) есептеңіз.

3-саты — Бағалау:

θ^0=(i=1ND~i2)1i=1ND~iY~i\hat{\theta}_0 = \left(\sum_{i=1}^N \tilde{D}_i^2\right)^{-1} \sum_{i=1}^N \tilde{D}_i \tilde{Y}_i

4-саты — Интерференция:

σ^2=1Ni=1N(Y~iθ^0D~i)2D~i2/(1Ni=1ND~i2)2\hat{\sigma}^2 = \frac{1}{N} \sum_{i=1}^N \big(\tilde{Y}_i - \hat{\theta}_0 \tilde{D}_i\big)^2 \tilde{D}_i^2 \bigg/ \left(\frac{1}{N} \sum_{i=1}^N \tilde{D}_i^2\right)^2

интервалдар θ^0±zα/2σ^/N\hat{\theta}_0 \pm z_{\alpha/2} \cdot \hat{\sigma} / \sqrt{N}.

Сенім аралығы дәл осын бір сұрақ үшін жарамды

Бұл DML нәтижесінің маңызды екенін шешетін ескерту, және әдістің көптеген қолданылған қолданбалары тыныштан құлайды.

Жоғарыдағы асимптотикалық нормальдылық — бір алдын ала анықталған емле, бір алдын ала анықталған бұзушы жиынтығы, бір алдын ала анықталған ұпай туралы мәлімдеме. Оларды алдын ала бекітіңіз, бағалаушыны бір рет жүргізіңіз, және интервал не айтатынын білдіреді. үш үміткер емледі сынап көріңіз, немесе төрт бұзушы жиынтығын, немесе p-value жақы көрінге дейін learner ауыстырыңыз, және сіз推理 орнында іздеу жасайсыз, және хабарланған p-value — maximum-дің p-value, сынамықтың емес.

Блог бұның не істейтінін өлшеді. deflated Sharpe ratio зерттеуінде, таза шудан нөлді шын байта надалі іздеулер наивті жалған ашу қарқыны 1.000 береді — реттелмеген тест әр жолы оқтайды — ал жеңімпаздың наивті медиан p-value 0.0007 маңында отырады. Neyman ортогоналдылығы туралы ештең сізді қорғайды. Ортогоналдылық бұлтану бағалауынан бұзушылықты түзейді; спецификациялық іздеуден бұзушылық туралы ештең айтпайды. Алты спецификацияны сынағаннан кейін алынған 1e-05 DML p-value тораптан алынған басқа жеңімпазбен бірдей Bonferroni/Holm/BHY емдеуді қажет етеді, MM сіз шын істеген спецификациялар санына орнатылған.

Бұл құралдардың ыңғайлық мүмкіндіктеріне тікелей практикалық салдарлы. DoubleMLData d_cols тізімін қабылдайды және бір қорытынды кестеде үш емле әсерін қуырады:

dml_data_multi = dml.DoubleMLData(
    df, y_col='filled', d_cols=['queue_pos', 'toxicity', 'spread_at_post'],
    x_cols=confounder_cols,
)

Үш жол, үш p-value, және қорытынды кесте атап өтпейтін көптестік мәселе. Егер үшеуін оқысан, үшеуін реттеңіз. Егер тек біреу алдын ала тіркелген сұрақ болса, айт екен, және қалған екеуін ашық зерттеу ретінде қарастырыңыз.

Уақыт Реттеріндегі Cross-Fitting: Purge, Embargo, Custom Folds

Айналатын уақыт серия foldтері purge аралықтарын және embargo аймақтарын қолданады, содан кейін out-of-fold residueler бір себептік бағалауға жиналады

Стандартты DML i.i.d. бақылауларды болжайды. Кітаб деректері жоқ, және сәтсіздік режимі — блог ерікті түрде құжаттап бергенmode: көршілес жолдар қабаттасқан forward терезелерді бөліседі, сондықтан қарапайым TimeSeriesSplit әлі де жауапты fold шекарасы арқылы өтеді. Тазартылған және embargo жасалған walk-forward жүздеуі және неге кем деген horizon жол аралығы қажет екені үшін машинанық оқытумен таралу моделдеу қараңыз, және ағындар мен олардың өлшенген шамаларының толық каталогы үшін алдын-ала қарау бұзушылық таксономиясы қараңыз.

Шын мәнінде DML-тек бөлігі — тазартылған foldтерді бағалаушыға қалай бередіңіз, себебі set_sample_splitting адамдарды шатастыратын келісімге ие:

import numpy as np
import doubleml as dml

def purged_folds(n: int, n_splits: int, horizon: int):
    """`horizon` жолдары purge/embargo аралығы бар кеңейтілген терезе foldтері.

    Таралу моделдеу мақаласындағы тазартылған walk-forward CV-мен бірдей құрылыс:
    аралық оқыту жолының forward терезесі мен тексерік жолының
    арасындағы қабаттасуды жояды.
    """
    fold_size = n // (n_splits + 1)
    for k in range(1, n_splits + 1):
        train_end = fold_size * k
        val_start = train_end + horizon
        val_end = val_start + fold_size
        if val_end > n:
            break
        yield np.arange(0, train_end - horizon), np.arange(val_start, val_end)

folds = list(purged_folds(len(df), n_splits=5, horizon=HORIZON))

dml_plr = dml.DoubleMLPLR(dml_data, ml_l=ml_l, ml_m=ml_m)
dml_plr.set_sample_splitting([folds])
dml_plr.fit()

Екеуін білу қажет, ешқайсысы кітапхана құжаттарынан анық емес:

  1. Тазартылған walk-forward foldтері әр жолды қамтымайды. Purge аралықтары мен бастапқы оқыту блогы ешқашаның тексерік foldы болмайды, сондықтан θ0\theta_0 қатаи NN residuelerден аз бағаланады. Бұл дұрыс қатынас, bug емес, бірақ variance формуласындағы тиісті NNқосылатын тексерік жолдар саны екенін білдіреді — болжауды тексіріңіз.
  2. n_rep қайталамалары тегін жоқ. Кездейсоқ K-fold кезде, cross-fitting қайталап орташа табу — арзан variance төмендету. Детерминистік уақыт тәртіптелген бөлінде бір ғана бөлу бар, сондықтан n_rep ештеңе сатып алмайды және ештеңді жасырмайды; тұрақтылық әр түрлі деректер терезелерінде қайта жүруден келуі тиіс.

Панель құрылымдары үшін (сол кезеңдегі көп белгілер), DoubleML кластерлік-робаст стандартты қателерді қолдайды — белгі бойынша кластірлеңіз, уақыт бойынша емес, және cross-instrument нәтиженің қашан қаланғанын көру үшін көпбелгілі тексеру қараңыз.

Өлшенген Жағдай: Кезек Позициясы және Толтыру ықтималдылығы

FIFO кезегіндегі тапсырыс позициялары DML реттелген кезек позиция әсеріне, сенім галоғамен ағады

Бұл мақаладағы бағдарламаның деректері бар жалғыз себептік сұрақ, және ол қойылмау керек, жариялау керек. Кезек позициясы талдауы бұрыннан нақты кітап деректерінде позиция бағалау, FIFO механикасы, ағындардық және толтыруға дейінгі уақытты қамтиды; толтыру модельдеуі толтыру ықтималдылығын модельдеуді және лайв толтыруларға қарсы калибрациялық айналымды қамтиды. Екеуі де толтырудың болжамдық моделін жасайды. DML сол дерістерді себептік бағалауға айналдырады.

Спецификация, бағалауды көрудің алдын алдын тіркелді:

  • Нәтиже YY: HORIZON снапшоттары ішінде толтырылды (бинарлы).
  • Еміле DD: орналасу кезіндегі нормалданған кезек позициясы.
  • Бұзушылар XX: 1с анықталған айнымалылық, bps-тегі цитаталанған спред, тереңдік теңсіздігі, посттағы деңгей өлшемі, tick-тегі mid-тен қашықтық, уақыт күнін кодтауы, режим жапсырмасы.
from sklearn.ensemble import GradientBoostingRegressor
import doubleml as dml

confounder_cols = [
    'rv_1s', 'spread_bps', 'depth_imbalance', 'level_size',
    'dist_from_mid_ticks', 'tod_sin', 'tod_cos', 'regime',
]

dml_data = dml.DoubleMLData(
    df, y_col='filled', d_cols='queue_pos_norm', x_cols=confounder_cols,
)

ml_l = GradientBoostingRegressor(n_estimators=300, max_depth=5)
ml_m = GradientBoostingRegressor(n_estimators=300, max_depth=5)

dml_plr = dml.DoubleMLPLR(dml_data, ml_l=ml_l, ml_m=ml_m, score='partialling out')
dml_plr.set_sample_splitting([folds])
dml_plr.fit()

print(dml_plr.summary)
dml_plr.sensitivity_analysis()
print(dml_plr.sensitivity_summary)

Хабарлау нәтижесі — бір коэффициент емес, төрт баған салыстыру: DD ғана YY-ге наивті OLS бағаласы, DD және XX кезіндегі YY-ге сызықтық бақылау бағаласы, стандартты қатесімен DML бағаласы, және сезімталдық талдаудан бітімділік мәні — әсерді жою үшін байқалмаған бұзушы қаншалық болуы керек. Наивті және DML бағандарының арасындағы айырма — нақты қызығушы шама: ол кезек позициясының көрінетін мәнінің қаншатысы нарық жағдайының киімін киген еді.

Мұндағы θ\theta нөл немесе теріс — жариялануға лайық нәтиже және таза оңнан гөрі блогқа жақсырау. Егер айнымалылық және деңгей өлшемі partial-out жасалғаннан кейін кезек позициясының себептік әсері құласа, бұл тапсырыс орналасу саясаты туралы тікелей тұжырым: орынны толтырғаны емес, сіз орын алған жағдайлар.

Себептік Факторлық Талдау

Факторлық инвестингке қатысты стандартты тәсіл — ассоциативтік: белгі бойынша сұрыпта, long-short портфолио құрыңыз, returnder әртекетінін байқаңыз. DML басқа тесті мүмкіндейді — белгілі return-ге тікелей себептік әсерлерін бағалаңыз, басқа белгілердің бұзушылық әсерлерін шығарып тастаңыз. Егер DML астында әсер жоғалса, фактор тәуелсіз себептік емес; бұл прокси.

Бұл — фактор скепсисисінің екінші, тәуелсіз түрі, және оның блогтың жарыя еткен нәрсе қалай байланысын ашық айтуға тұрады. Deflated Sharpe ratio фактор зоосыларды таңдау жағынан шабадайды: қанша сынаптармен, фактор көп қарағандықтан маңызды көрінуі мүмкін. DML оны бұзушылық жағынан шабадайды: фактор бір адал тестте маңызды көрінуі мүмкін және бағдарлау жиынтығындағы басқа нәрсенің проксисі болуы мүмкін. Фактор қызықты болу үшін екеуін де өту керек, және екі сәтсіздік режимдерді тәуелсіз — біреуін өту екіншісі туралы ештең айтпайды.

DML Істей Алмайтын

  1. Бұзушылардың байқалғанын қажет етеді. Егер байқалмаған айнымалы еміле мен нәтижені екі айдырса, DML бұзылған, және ешқандай ML sophistication идентификация проблемасын шешпейді. Сезімталдық талдау қатерлі шектейді; оны жояды.

  2. Орташа әсер бағалайды. Егер кезек позициясының әсері режимдер бойынша sharply әзгерсе, нүкте бағаласы — сіздің үлгінің режимдерінің араласының ортасы. Гетерогенитет үшін Interactive Regression Model (DoubleMLIRM) немесе causal forest қолданыңыз.

  3. Құрылымды модельді болжайды. Жартылай сызықтық спецификация эмле нәтиже теңдеуіне белгілі тәрде кіруін қажет етеді. Егер шын процесс негізінен өзге болса, DML сенімді қате.

  4. Себептік құрылымды ашпайды. DML алдын ала анықталған еміле әсерін бағалайды. Қай айнымалылар себеп екенін айтпайды.

  5. Сізді көптестен босатпайды. Үстінегі нүктені қайталау, себебі бұл ең жиі өткізіледі: ортогоналдылық бұлтану бағалауын de-biasдейді, спецификация іздеуді жоқ.

Практикалық Ескертулер

Үлгі өлшемі. DML бұлтану модельдерінің n1/4n^{-1/4} жылдамдықпен жинақтауын қажет етеді, бұл практикада ML модельдерінің g0g_0 мен m0m_0-ді мүлде жуыртуға жеткіліктік жолдарды білдіреді. Жұмыр сандардың шегін сену орнына, көпбелгілі тексеру істейтін тәсілмен эмпирикалық жақсылықты орнатыңыз — бағалау аспаптар мен суб-периодтар бойынша сақтай ма, тұрақсыздық оның сигналы екенін қарастырыңыз.

Learner таңдау. DML-тек факт тар және пайдалы: n1/4n^{-1/4} конвергенция берілгенде, learner θ^0\hat\theta_0-дің тиімділігіне (интервал ені) әсер етеді, консистенциялығы емес. Қандай learnerлерге табыларлы және неге gradient boosting әдепкі екені, машинанық оқытумен таралу моделдеу қамтылған. Егер θ^0\hat\theta_0 learnerлер арқылы материалды жылжытса, бұл таңдау үшін тізім емес — бұлтану функциялары нашар бағаланған дәлел, және жоғарыдағы бөлім бойынша, ең достысын таңдау оны іздеуге айналдырады.

Қорытынды

DML блогқа жоқ нәрсені берді: нарық микроқұрылым айдарларын себептік параметр ретінде және қорғайтын стандартты қатемен айту жолы, жақсы куәлікпен болжам ретінде емес.

Үш негізгі ойлар:

  • Сұпай қателерді екінші ретке жойып өтеді.
  • Уақыт серия деректерінде тазартылған және embargo жасалған foldтармен cross-fit, бірінші кезең үстеме оқытуы θ0\theta_0-ді жылжыта алмасты.
  • Алдын ала анықта, хабарланған интервал — сіз шын игерген интервал.

Бағалаушы — жеңіл бөлік. Қиын бөліктер өзгермейді: қай бұзушылар маңызды, идентификация болжамдарының орындалатыны дәлелдеу, және спецификацияны тағы бір рет жүргізу құлғысызды тойдыру.


** Сілтемелер

DML шежіресі қысқа және бір жолы құнды: бұл — Robinson (1988) жартылай сызықтық моделі ML ядро бағалаушыларын ауыстыратын, семипараметрикалық тиімділік шегіне жететін, Neyman C(α\alpha) тестіне және targeted-learning (TMLE) әдебиетінде жақын туысқа бар ортогоналдылық шартымен. Chernozhukov et al. ұсынғаны — ерікті ML learnerлермен бұны операциялап, N\sqrt{N}-consistente, асимптотикалық нормаль интерференцияны сақтау мүмкіндігі.

  1. Chernozhukov, V., Chetverikov, D., Demirer, M., Duflo, E., Hansen, C., Newey, W., & Robins, J. (2018). Double/Debiased Machine Learning for Treatment and Structural Parameters. The Econometrics Journal, 21(1), C1-C68.
  2. Robinson, P. M. (1988). Root-N-Consistent Semiparametric Regression. Econometrica, 56(4), 931-954.
  3. Bach, P., Chernozhukov, V., Kurz, M. S., & Spindler, M. (2022). DoubleML — An Object-Oriented Implementation of Double Machine Learning in Python. Journal of Machine Learning Research, 23(53), 1-6.
  4. Facure, M. (2022). Causal Inference for the Brave and True. Chapter 22: Debiased/Orthogonal Machine Learning.
  5. Cahan, E., Bai, J., & Ng, S. (2024). Causal Factor Investing. Quantitative Finance.
blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

Trading-systems engineer

Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.

Newsletter

Нарықтан бір қадам алда болыңыз

AI сауда талдаулары, нарық аналитикасы және платформа жаңалықтары үшін біздің ақпараттық бюллетеньге жазылыңыз.

Біз сіздің жекелігіңізді құрметтейміз. Кез келген уақытта жазылымнан шығуға болады.