Using the library i...
Clear all

Using the library in an open source project

3 Posts
2 Users
New Member Guest
Joined: 1 second ago
Posts: 0
Topic starter  

I'm the main developer of an open source algo-trading platform and SuanShu or NMDev seems to be a good library to base some more advanced strategies upon. 

As far as I can tell, only SuanShu (2012 release as available on GitHub) comes under the open source Apace license that would allow me to modify and redistribute it. Already great that this version has been open sourced 👍. 

NM Dev om the other hand requires a commercial license by the end user. That would prohibit me from releasing my own software for free since if I include library (even if I pay for it and only include the binary), I cannot redistribute it.

Any insights (especially if I'm wrong), would be very welcome? Thanks in advance for any help!!!

For those interested in the open source algo-trading project, checkout

Kind regards,


Member Admin
Joined: 4 years ago
Posts: 21


Thank you for reaching out.

The open-source version of SuanShu is rather old. It was our first attempt at making a comprehensive library. It has subtle bugs and performance issues, e.g., matrix multiplication, that has since been improved in the new nm dev library.

NM Dev supports a library of trading strategies that may be of interest to you. They are in the packages prefixed by "tech.nmfin".

The models are supported by NM FinTech.


If your business model is only open-source and free, maybe you can use SuanShu in your product.

If you have a for-fee model, maybe there is a synergy between nmdev and the quantitative trading models in our library.




New Member Guest
Joined: 1 second ago
Posts: 0
Topic starter  

@haksunli thanks for the info and will look a bit more into it. 

Noticed indeed that Matrix operations in SuanShu have some inherit performance overhead (access patterns cause some level of indirections), but nothing that is too hard to fix for me I would imagine. Especially since mostly interested in DenseMatrix and the abstraction in SuanShu allow for easy refactoring. Of course, bugs are very undesirable.