Originally posted @ gratiartis.org on April 16th, 2007.
The financial industry does seem to be loath to share the fruits of their efforts. There doesn’t seem to be a lot around. And certainly not much that is regularly updated. Maybe everyone is worried about sharing trade secrets, but the rules for calculations are well established and I’m guessing that everyone must be writing their own implementations or buying in over-priced modules.
I did manage to come across one called jFin, which presents itself as a “Java library providing financial date arithmetic; date adjustment, date offset, day count calculation and schedule generation.” In its first year, it has been oriented towards date calculations only, but there is now a 0.1 release of a trade module on the jFin SourceForge project. The project does look as though it’s producing some decent work, so I thought I’d post a comment here to remind myself to take a deeper look as soon as I get the chance.
jFin does seem a little bit odd though. It’s all developed by one person, so there doesn’t seem to be much of a community around it. However it’s also distributed under the GPL, but with no classpath exception, which seems very odd given what I would assume to be the target audience: financial institutions. It is unlikely that any financial institution would go along with releasing their own source code just because they wanted to use a library. Something like the classpath exception or distribution under the LGPL might make more sense, where a community could be encouraged to contibute to making the library more useful rather than forcing users to contribute source code for where they just use the library.