Open Source Financial Software Companies and Projects List
Finance is an area where well-written open-source projects could make a tremendous difference. Therefore there is a quick review of the financial open source projects used and evolving in today’s world of financial software:
QuickFIX/J
http://www.quickfixj.org/
The Financial Information eXchange (FIX) protocol is a messaging standard developed specifically for the real-time electronic exchange of securities transactions. FIX is a public-domain specification owned and maintained by FIX Protocol, Ltd (FPL).
QuickFIX/J is a full featured messaging engine for the FIX protocol. It is a 100% Java open source implementation of the popular C++ QuickFIX engine.
Features:
* Free! It costs nothing and has a very liberal open source licence.
* Full source code available (also at no cost).
* Supports FIX versions 4.0 - 4.4, 5.0/FIXT1.1.
* Runs on any hardware and operating system supported by 1.4+ Java SE or compatible VM.
* Compatibility with QuickFIX C++ Java Native Wrapper API (easy to upgrade)
* Java NIO asynchronous network communications for scalability (using Apache MINA)
* Supports embedded SSL with Java 5+
* Provides standard JMX MBeans for FIX engine management
* Easy to embed in existing Java applications.
* Choice of message processing threading strategies
* Communication transports for TCP sockets and VM pipes.
* Metadata-driven parsing and validation.
* Metadata-driven code generation of type-safe FIX message-related classes.
* Metadata API for use at application level (for example, FIX messaging UI).
* Support for protocol customizations (new messages, fields, constraints).
* Session state storage plugins: JDBC, File, SleepyCat/JE, In memory
* Logging plugins: JDBC, File, SFL4J (supports JDK1.4 logging, Log4J, Commons Logging), Console, Composite
* Failover and High Availability.
* Scheduling of session connections.
* Many automated unit and acceptance tests.
* Example applications: Simple Swing order entry UI and a console-based order execution simulator.
* Commercial support available from multiple sources.
QuantLib
http://www.quantlib.org/
The QuantLib project is aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a free/open-source library for modeling, trading, and risk management in real-life.
QuantLib is written in C++ with a clean object model, and is then exported to different languages such as C#, Objective Caml, Java, Perl, Python, GNU R, Ruby, and Scheme. The QuantLibAddin/QuantLibXL project uses ObjectHandler to export an object-oriented QuantLib interface to a variety of end-user platforms including Microsoft Excel and OpenOffice.org Calc. Bindings to other languages and porting to Gnumeric, Matlab/Octave, S-PLUS/R, Mathematica, COM/CORBA/SOAP architectures, FpML, are under consideration. See the extensions page for details.
Appreciated by quantitative analysts and developers, it is intended for academics and practitioners alike, eventually promoting a stronger interaction between them. QuantLib offers tools that are useful both for practical implementation and for advanced modeling, with features such as market conventions, yield curve models, solvers, PDEs, Monte Carlo (low-discrepancy included), exotic options, VAR, and so on.
The library could be exploited across different research and regulatory institutions, banks, software companies, and so on. Being a free/open-source project, quants contributing to the library would not need to start from scratch every time.
AMQP
http://www.ampq.org/
AMQP is an Open Standard for Messaging Middleware:
Middleware: software that connects other software together. Middleware connects islands of automation, both within an enterprise and out to external systems.
By complying to the AMQP standard, middleware products written for different platforms and in different languages can send messages to one another. AMQP addresses the problem of transporting value-bearing messages across and between organisations in a timely manner.
Messaging and integration is a necessary part of all enterprise systems
- All significant IT efforts include a messaging and integration component (10%-30% of project cost)
- Proprietary middleware has been a source of lock-in, preventing competition in middleware for both quality and cost
- Interoperability is more difficult than it need be
Other open business standards would ideally avoid being founded on proprietary technologies, and use open information and business process models and message formats. However, NO suitable open technology exists to actually send the messages!
AMQP aims to become the de-facto open standard for messaging middleware
Esper
http://esper.codehaus.org/
Esper is a component for CEP and ESP applications, available for Java as Esper, and for .NET as NEsper.
Esper and NEsper enable rapid development of applications that process large volumes of incoming messages or events. Esper and NEsper filter and analyze events in various ways, and respond to conditions of interest in real-time.
Complex Event Processing, or CEP, is technology to process events and discover complex patterns among multiple streams of event data. ESP stands for Event Stream Processing and deals with the task of processing multiple streams of event data with the goal of identifying the meaningful events within those streams, and deriving meaningful information from them. Real-time OLAP (online analytical processing) and continuous query are also terms used frequently for this technology.
The Esper engine has been developed to address the requirements of applications that analyze and react to events. Some typical examples of applications are:
- Business process management and automation (process monitoring, BAM, reporting exceptions, operational intelligence)
- Finance (algorithmic trading, fraud detection, risk management)
- Network and application monitoring (intrusion detection, SLA monitoring)
- Sensor network applications (RFID reading, scheduling and control of fabrication lines, air traffic)
Open Source Trading Platform
Marketcetera is an open source platform for strategy-driven trading, providing you with all the tools you need for strategy automation, integrated market data, multi-destination FIX routing, broker neutrality and more.