The following assumes successful installation of the OSPC-ACA project as described here.
The ptc.py script reads a sample file that contains ACA-relevant information for one or more federal income tax filing units. Enter the following command to see details of the sample file format:
OSPC-ACA-<version>$ python ptc.py --sample_format
The ptc.py script writes output for each income tax filing unit in the sample file, where the output contains the tax filing unit's refundable ACA premium tax credit (PTC) as computed on IRS Form 8962 as well as several intermediate amounts. Enter the following command to see details of the output format:
OSPC-ACA-<version>$ python ptc.py --output_format
It appears as if there is no publicly-available national survey data set that contains all the information needed for the ptc.py sample file, which is the minimal information required to compute accurately a filing unit's PTC. As a result of this situation, the OSPC-ACA project has not yet produced a ptc.py sample file that is representative of the US population.
Meanwhile, the ptc.py script can calculate PTC amounts for special sample files that you construct to meet the needs of particular research projects. When constructing special sample files, you should avoid including income tax filing units for 2014 for the reasons described here and you should be interested in the definition of each of the 499 rating areas in the fifty states and DC that is provided at this CMS website.
After you create a sample file (assume it is called my_sample), compute the PTC amounts by entering the following command:
OSPC-ACA-<version>$ python ptc.py my_sample
or by entering the equivalent command:
python ptc.py my_sample aca_current_law.json
Both commands will produce the same results because the default value of the policy_filename positional argument is aca_current_law.json.
To save the output produced by the ptc.py script to a file, redirect the output from stdout (the screen) to a file as in the following example:
OSPC-ACA-<version>$ python ptc.py my_sample > my_sample.out
To use projection assumptions and/or policy parameters that differ from those in aca_current_law.json, create a new policy input file as described here.