Announcement

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

  • mediation / mediated moderation setup with an interaction term in panel OLS

    Dear all,

    I am working with panel data on S&P 500 firms and an OLS model of yearly stock returns (RET) with year and Fama–French 12 industry dummies and firm–clustered SEs. My main variable of interest is the interaction HARD_FREEZEXCSO_PRESENCE = HARD_FREEZE * CSO_PRESENCE, which is meant to capture the presence of the Chief Sustainability Officer (dummy variable 1 and 0 ) and hard-freeze (dummy variable 1 and 0 ). My baseline model is:

    HTML Code:
     reg RET CSO_PRESENCE ///
        HARD_FREEZE HARD_FREEZEXCSO_PRESENCE ///
        SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND ///
        SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE ///
        i.year i.ff_12, vce(cluster id)
    I now want to see whether a CSR disclosure index (CSR_DISC) mediates the effect of this interaction term on RET (a mediated moderation idea). After dropping missing outcome/mediator, I followed a Baron & Kenny style 3-step approach:

    HTML Code:
     drop if missing(RET) | missing(CSR_DISC)
    
    * Step 1: X -> Y
    reg RET HARD_FREEZEXCSO_PRESENCE CSO_PRESENCE HARD_FREEZE ///
        SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND ///
        SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE ///
        i.year i.ff_12, vce(cluster id)
    
    * Step 2: X -> M
    reg CSR_DISC HARD_FREEZEXCSO_PRESENCE CSO_PRESENCE HARD_FREEZE ///
        SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND ///
        SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE ///
        i.year i.ff_12, vce(cluster id)
    
    * Step 3: X & M -> Y
    reg RET HARD_FREEZEXCSO_PRESENCE CSR_DISC CSO_PRESENCE HARD_FREEZE ///
        SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND ///
        SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE ///
        i.year i.ff_12, vce(cluster id)

    My main questions are: (1) Is this a correct and sensible way to implement mediation (or mediated moderation) when the “X” is an interaction term like HARD_FREEZEXCSO_PRESENCE in a panel OLS with fixed effects and clustered SEs? (2) If not, what would you change in the code or design? (3) If I want to formally estimate the indirect effect HARD_FREEZEXCSO_PRESENCE → CSR_DISC → RET with clustered SEs and my fixed effects, would you recommend using reg as above, or instead sem/gsem/mediate or another approach?

    I am using Stata (version …) and can provide a small dataex if needed.

    Best regards,
    Hussein

  • #2
    i read about the the alternative code so im not sure if i apply it correctly


    HTML Code:
    mediate (RET CSO_PRESENCE HARD_FREEZE SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE i.year i.ff_12) (NET_CSR CSO_PRESENCE HARD_FREEZE SIZE ROA LEV MB OCF SD_OCF BOARD_SIZE GENDER_RATIO BOARD_IND SUS_COMM FUND_STATUS FUND_RATIO PLAN_SIZE i.year i.ff_12) (HARD_FREEZEXCSO_PRESENCE), 
        vce(cluster id) nointeraction nie nde te

    Comment

    Working...
    X