Forward premia data for different demand distributions

Published: 17 July 2019| Version 1 | DOI: 10.17632/gkv2zjnz9t.1
Silvester vankoten


The data (as stata dta files) are the basis for a replication study, (re)testing the four hypothesis in Bessembinder & Lemmon (2002). The hypotheses are as following: The forward premium: H1: decreases in variance of prices H2: increasing in non-standardized skewness of price H3: initially decreases and then increases in demand standard deviation H4: increases in mean demand The results are that Hypotheses H1, H2 are not supported when the variable cost parameter is adaptive as specified in (2002, p.1360), but are supported when the variable cost parameter is fixed. Hypothesis H3 is supported for both cases and Hypothesis H4 for neither. The data have been generated using Bessembinder and Lemmon’s (2002) theoretical results (especially their Equation 3) to calculate outcomes (spot prices, forward prices, forward premia and optimal forward positions) for different demand distributions. As a robustness test, I also calculate forward positions, not by using Equation 3, but, as in Willems and Morbee (2010), by maximizing the joint utility of a producer and retailer, where the utility function is given by . The first welfare theorem implies that these solutions should be equal to the optimal solutions. Indeed the values I calculate in this manner are identical to the ones I calculate using Equation 3. I calculate the outcomes for eight configurations in total: four values of the cost convexity parameter (2, 3, 4, and 5) and two possible ways to determine the variable cost parameter (adaptive and fixed). For each configuration, outcomes are calculated for 195,891 different distributions (391 values for the demand standard deviation and 501 values for the mean demand). For each demand distribution in a configuration, I use a grid spanning 10 standard deviations with 1000 points per standard deviation. As another robustness test, I also run the same calculations using random samples of 1000 000 per distribution, programmed in Mathematica. All calculated outcomes are identical (except for minor rounding differences). To use the data, open the folder "Stata_analysis" > "Stata_analysis_home folder" > "stata_files" • "2. Analyse" can be used to replicate all the figures in the paper. The data have been generated in Python. Run the full dofile. Before you run the dofile, make sure to unrar all the files in the folder "Stata_analysis_home folder\data_in_stata_format" with a rar-utility. • "3. Analyse" replicates the figures using the data generated by brute sampling in Mathematica. The results should be identical to those obtained with the dofile "2. Analyse"


Steps to reproduce

The raw data can be generated with the simulation programs. The simulation programs can be downloaded from To then generate the raw data, open the folder "Stata_analysis" > "Stata_analysis_home folder" > "stata_files" and use the following do-file to recreate the stata dta files from the raw csv data files: • "1.Make data" can be used to generate the stata files from the raw data. Open the file, and set the stata working directory to "Stata_analysis_home folder". Then run the full code. Then you will create the stata dta files "exp_data_python.dta" and "exp_data_mathematica.dta" in the folder "Stata_analysis_home folder\data_in_stata_format".


Univerzita Jana Evangelisty Purkyne v Usti nad Labem, Vysoka Skola Ekonomicka v Praze


Energy Finance