I do quite a bit of numerical work in Java and Clojure so hopefully my perspective can be useful.
For 1. and 2. here are some options to explore:
- Parallel Colt - very comprehensive, high-performance mathematical library. Good for lots of vector processing which you get in finance apps.
- Incanter - R-like statistical library for Clojure (very easy to embed in a Java app). Has pretty much all the statistical tools you could desire, plus is very easy to extend if you want to create your own DSLs
- EJML - probably the fastest matrix library available in Java
- Apache Commons Math - handy collection of maths and statistical tools
For 3. (financial models) these tend to be pretty bespoke to the problem you are trying to solve. I doubt you would want to use an off-the-shelf solution even if it existed. I'd suggest developing yourself using the toolkits mentioned above.