The package is a julia implementation of Abadie, Diamond, and Hainmueller (2010). The code was translated from MATLAB, the code provided by Hainmueller.
Some implementaitonal changes were made - most notably on calculating the loss function: instead of sum of square estimation, I log scale sum of square estimate. This helps optimization function to better locate the minima.
ω = abs.(solveQadProg( H, f));
e = y₁pre - yₒpre*ω;
ln_ssr = log(sum(e.^2));
Currently, the optimization step takes too much time. Unlike the MATLAB operation, the quadratic programming had to be linearized (using JuMP - see final estimation of ν
) and the loss function (which nests the quadratic programming, not able to linearize) using Optim.