Watch this Author's files
It does not work for index options like ^VIX. I am not familiar with Java so it will be nice if someone can update the code to pull index options as well.
I don't feel it is fully tested. So, you can't use it "off the shelf".
You did a good job writing it but it has bugs in it. It complains a lot about positive definiteness of matrices on data which produce good results with other similar code.