This readme explains the replication information for our paper entitled: “Retirement Timing Uncertainty: Empirical Evidence and Quantitative Evaluation.” Our paper uses HRS data, which is publicly available, but the license agreement does not allow us to distribute it. Hence, users must register with the HRS to obtain the data. This replication package includes the files that will allow users to go from the raw HRS data to replicating our paper. Additionally, the spreadsheet entitled “baseline welfare” was used to simulate the theoretical model. Within that spreadsheet, the first worksheet entitled “User Guide” contains instructions for running the Visual Basic script that calculates our welfare results. Please feel free to contact us with any questions. Best, Frank Caliendo, Maria Casanova, Aspen Gorry, and Sita Slavov _____________________________________________________________________________________________ Note that we use publicly available RAND HRS data and HRS FAT files, as noted in the paper. Users must register with HRS to obtain the data. The RAND HRS dataset ("randhrs1992_2018v1.dta") was downloaded from the HRS website at: "https://hrsdata.isr.umich.edu/data-products/rand-hrs-longitudinal-file-2018" The RAND HARS FAT files were downloaded from: https://www.rand.org/well-being/social-and-behavioral-policy/centers/aging/dataprod/enhanced-fat.html _____________________________________________________________________________________________ Note that the user will need to update the path to their local computer in the code files so that the programs will run. ***************************************************** **** File 0.Aux.Extract-reasons-for-ret-variables *** ***************************************************** Running time: 40 seconds (older laptop, Stata 14) This file extracts variables used to determine reasons why the individual retired from the HRS FAT files. The dataset generated by this file is merged with the main dataset in the do file "4.Endogeneity-Robustness checks" and is used to classify retirement as voluntary/involuntary. Input files: "h94f1a.dta" "h96f4a.dta" "h98f2c.dta" "h00f1c.dta" "h02f2c.dta" "h04f1c.dta" "h06f3a.dta" "h08f3a.dta" "h12f3a.dta" "h14f2b.dta" "h16f2b.dta" "h18e1a.dta" Output file: "reasons-for-ret.dta" ***************************************************** **** File 0.Aux.Labels-reasons-for-ret-variables *** ***************************************************** Running time: 1 second (older laptop, Stata 14) This files is called from "4.Endogeneity-Robustness checks" and generates labels for the reasons for retirement variables. ******************************* *** 1.Reshape-RAND-HRS-data *** ******************************* Running time: 1 minute 57 seconds (older laptop, Stata 14) This file extracts the variables from the RAND-HRS dataset to be used in the analysis and performs initial data transformations (such as expressing monetary values in real terms). Input file: "randhrs1992_2018v1.dta" Output file: "empirical_dataset.dta" ******************************** **** 2.Ret-uncertainty-main **** ******************************** Running time: 32 seconds (older laptop, Stata 14) This file selects the empirical sample, constructs the variables Ret and Eret, constructs the retirement mistake, and generates the first panel of table 2. Input file: "empirical_dataset.dta" Output files: "sample-regs-v1.dta" Output tables: table-std-dev-1 (first panel of Table 2) Output figure: Figure 1 (histogram) ******************** **** 2b.Table 1 **** ******************** Running time: 8 seconds (older laptop, Stata 14) This file is run immediately after "2.Ret-uncertainty-main.do" to generate Table 1. Output files: "table-1" (first column of Table 1) "table-1b" (second column of Table 1) "table-1c" (third column of Table 1) ********************************************* *** 3.OLS-and-FE-regressions-and-Figure 3 *** ********************************************* Running time: 11 seconds (older laptop, Stata 14) This files runs the OLS and FE regressions for tables 3 and 4 and generates Figure 3. Input files: "sample-regs-v1.dta" Output tables: "regs1-OLS-all" "regs1-FE-all" Output figures: Input to generate figure 2 Figure 3 ***************************************** **** 4.Endogeneity-Robustness checks **** ***************************************** Running time: 28 seconds (older laptop, Stata 14) This file generates the second panel of table 2 and table 5. Input files: "sample-regs-v1.dta" "reasons-for-ret.dta" Output tables: table-std-dev-2 (second panel of Table 2) table-heterog (Table 5) ***************************************** **** 5.Wage Profile **** ***************************************** Running time: 2 seconds (Macbook Pro, Stata 17) This file constructs the wage profile that we use in the calibration using data downloaded from CEPR as detailed in the file. This code was written with Stata v16. To run it in v17, you can add the command “Stata 16” at the top of the file to make it backwards compatible. Input files: "cepr_org_2015" Output Graphs: "Earnings Profile 2019.pdf" "Normalized Earnings Profile 2019.pdf" Output file: "Earnings Profile 2019.xls" ***************************************** **** 6.Income after retirement **** ***************************************** Running time: 2 minutes 35 seconds (Macbook Pro, Stata 17) This file constructs post retirement income paths used in the model calibration. Input files: "sample-regs-v1.dta" Output files: "regressions-january2022-v1.xls" ***************************************** **** cepr_org_2015 **** ***************************************** This files is the dataset used in 6. WageProfile ***************************************** **** baseline welfare **** ***************************************** Running time: Less than 5 minutes per simulation on a desktop This file solves and simulates the welfare comparisons from the model. A user guide is included in the first worksheet.