Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • 2SLS with Probit in the first-stage regression and OLS in the second stage

    Hi all,

    I'm working on a 2SLS model in which I have two endogenous binary variables:
    • csopresence1
    • FreezeXCSO
    Following Wooldridge (2002, pp. 623–625), I estimate a Probit model for each variable in the first stage, then use the linear predictions (xb) from these models as instruments in the second-stage IV regression.

    Is this the correct way to implement 2SLS when both endogenous variables are binary and the second stage is OLS?


    🔹 Stata Code:


    probit csopresence1 CSO_Percentage Firm_Size_w ROA_w Leverage_w Market_book_four_w Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w FUNDING_RATIO_w Platn_Size_w i.year i.ff_12 , nocons robust cluster (id)
    predict X1hat



    probit FreezeXCSO second_instrumatial Firm_Size_w ROA_w Leverage_w Market_book_four_w Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w FUNDING_RATIO_w Platn_Size_w i.year i.ff_12 , nocons robust cluster (id)

    predict X2hat



    asdoc ivregress 2sls market_adjusted_return_w Firm_Size_w ROA_w Leverage_w Market_book_four_w Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w FUNDING_RATIO_w Platn_Size_w i.year i.ff_12 ( csopresence1 FreezeXCSO = X1hat X2hat ) , robust cluster (id)


    estat first, forcenonrobust
    estat endogenous csopresence1 FreezeXCSO



    thanks

  • #2
    This does look correct, but you are getting the probability fitted values, p1hat and p2hat, not the linear indexes inside the probits.

    Comment


    • #3
      thanks alot professor Jeff , i corrected that i think the code now is correct

      HTML Code:
      * First-stage Probit for csopresence1
      probit csopresence1 CSO_Percentage Firm_Size_w ROA_w Leverage_w Market_book_four_w ///
          Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w ///
          independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w ///
          FUNDING_RATIO_w Platn_Size_w i.year i.ff_12, nocons robust cluster(id)
      
      predict X1hat, xb
      
      * First-stage Probit for FreezeXCSO
      probit FreezeXCSO second_instrumatial Firm_Size_w ROA_w Leverage_w Market_book_four_w ///
          Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w ///
          independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w ///
          FUNDING_RATIO_w Platn_Size_w i.year i.ff_12, nocons robust cluster(id)
      
      predict X2hat, xb
      
      * Second-stage IV regression (2SLS) using linear predictions as instruments
      asdoc ivregress 2sls market_adjusted_return_w Firm_Size_w ROA_w Leverage_w ///
          Market_book_four_w Non_pension_CFO_w STD_CFO_w board_size_w ///
          GenderRatiogenderratio_w independent_percentage_w SUSTAIBILITY_COMITEE_FU ///
          Fund_Status_w FUNDING_RATIO_w Platn_Size_w i.year i.ff_12 ///
          (csopresence1 FreezeXCSO = X1hat X2hat), robust cluster(id)
      
      * First-stage diagnostics
      estat first, forcenonrobust
      estat endogenous csopresence1 FreezeXCSO

      Comment


      • #4
        You misunderstood me. You’re supposed to use the probabilities. You were correct previously but you described it incorrectly, and the names of your fitted probabilities were misleading.

        Comment


        • #5
          Thank you, Professor. II’m estimating a 2SLS model where both endogenous regressors (csopresence1 and FreezeXCSO) are binary variables. Based on Wooldridge (2002, pp. 623–625), I now run a Probit model for each endogenous regressor in the first stage and use the predicted probabilities (pr) — not the linear predictions (xb) — as instruments in the second stage.

          I’ve renamed the predicted values to p_csopresence1 and p_FreezeXCSO to make it clear they are probabilities. Here's the updated Stata code:
          HTML Code:
           *------------------------------------------------------*
          * Step 1: First-stage Probit for csopresence1
          *------------------------------------------------------*
          probit csopresence1 CSO_Percentage Firm_Size_w ROA_w Leverage_w Market_book_four_w ///
              Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w ///
              independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w ///
              FUNDING_RATIO_w Platn_Size_w i.year i.ff_12, nocons robust cluster(id)
          
          predict p_csopresence1, pr  
          
          *------------------------------------------------------*
          * Step 2: First-stage Probit for FreezeXCSO
          *------------------------------------------------------*
          probit FreezeXCSO second_instrumatial Firm_Size_w ROA_w Leverage_w Market_book_four_w ///
              Non_pension_CFO_w STD_CFO_w board_size_w GenderRatiogenderratio_w ///
              independent_percentage_w SUSTAIBILITY_COMITEE_FU Fund_Status_w ///
              FUNDING_RATIO_w Platn_Size_w i.year i.ff_12, nocons robust cluster(id)
          
          predict p_FreezeXCSO, pr  
          
          *------------------------------------------------------*
          * Step 3: Second-stage 2SLS using predicted probabilities as instruments
          *------------------------------------------------------*
          asdoc ivregress 2sls market_adjusted_return_w Firm_Size_w ROA_w Leverage_w ///
              Market_book_four_w Non_pension_CFO_w STD_CFO_w board_size_w ///
              GenderRatiogenderratio_w independent_percentage_w SUSTAIBILITY_COMITEE_FU ///
              Fund_Status_w FUNDING_RATIO_w Platn_Size_w i.year i.ff_12 ///
              (csopresence1 FreezeXCSO = p_csopresence1 p_FreezeXCSO), robust cluster(id)
          
          *------------------------------------------------------*
          * Step 4: First-stage diagnostics
          *------------------------------------------------------*
          estat first, forcenonrobust
          estat endogenous csopresence1 FreezeXCSO
          Last edited by hussein bataineh; 06 Apr 2025, 04:39.

          Comment

          Working...
          X