opentaps / open-climate-investing

Application and data for analyzing and structuring portfolios for climate investing.
https://climate-investing-book.opensourcestrategies.com/v/main/book
GNU Affero General Public License v3.0
42 stars 14 forks source link
climate-change climate-data esg factor-analysis fama-french finance hacktoberfest hacktoberfest2021 modern-portfolio-analysis modern-portfolio-theory stock stock-market

open-climate-investing

This project's mission is to make climate investing actionable. It includes both open source software and a free book to help you identify relative value trades, optimize portfolios, and structure benchmarks for climate aligned investing.

The Software

The software is a multi-factor equity returns model which adds a climate factor, or Brown Minus Green, to the popular Fama French and Carhart models. See the short video

This additional Brown Minus Green (BMG) return factor could be used for a variety of climate investing applications, including:

Setting It Up

Install the required python modules (use pip3 instead of pip according to your python installation):

pip install -r requirements.txt

Initialize the Database using:

python3 scripts/setup_db.py -R -d

Trying It Out

Let's get the historical stock prices and returns of the MSCI World Index and its constituent sectors:

python scripts/get_stocks.py -f data/msci_etf_sector_mapping.csv 
python scripts/get_stocks.py -f data/msci_constituent_details.csv

Now let's calculate the risk factor loadings for these stocks using 60 months of monthly data at a time:

python scripts/get_regressions.py -d -f data/msci_etf_sector_mapping.csv -s 2010-01-01 -e 2021-01-31 --frequency MONTHLY -n DEFAULT -i 60 -b
python scripts/get_regressions.py -d -f data/msci_constituent_details.csv -s 2010-01-01 -e 2021-01-31 --frequency MONTHLY -n DEFAULT -i 60 -b

Next, let's create a daily version of the BMG climate risk series based on the difference between the stocks XOP (brown) and SMOG (green):

python scripts/bmg_series.py -n XOP-SMOG -b XOP -g SMOG -s 2018-01-01 -e 2022-02-01 --frequency DAILY

Finally, let's calculate the risk factor loadings for stocks using 2 years of daily data. This will take a long time:

python3 scripts/get_regressions.py -d -f data/msci_etf_sector_mapping.csv -s 2018-01-01 -e 2021-01-31 --frequency DAILY -i 730 -n XOP-SMOG -b
python3 scripts/get_regressions.py -d -f data/msci_constituent_details.csv -s 2018-01-01 -e 2021-01-31 --frequency DAILY -i 703 -n XOP-SMOG -b

Viewing the Results

Follow directions from the dashboard README page to look at your results.

The Book

The included free book on climate investing explains both climate investing concepts and how to use this project. You can also read it online at gitbook.

Project Files

References

Get Updates

Sign up for our email newsletter to get updates on this book and the Open Climate Investing project.

Disclaimer

This content is published for informational purposes only and not investment advice or inducement or advertising to purchase or sell any security. See full disclaimer and license.