ZMAPI - open source vendor agnostic financial API

sjlnk

New member
Feb 8, 2018
4
0
1
#1
Hello everyone,

I have been thinking of building open source vendor agnostic financial API for market data and order execution for about a year or two now. I finally decided to do it. The result is ZMAPI. It has fully functional market data (MD) support as of this moment. I have programmed three different connector modules to connect with three different vendors: Interactive Brokers TWS API, CTS T4 API and Bitstamp API. New connector can be added as required and I encourage people to contribute more connectors as the demand for them arise.

Account and execution side (AC) will be built in the future. I haven't started working with that yet and I'm now trying to come up with a good architecture. Any help with the architecture design will be very welcome.

Features:

- uniform API
- combining the best sides of all the vendors, abstracting away poor architecture
- modular design, middleware modules are used to provide uniformity
- vendor agnostic, no need to marry one vendor
- cross platform
- free
- open-source
- ØMQ is used for messaging
- language agnostic, accessible with every programming language

ZMAPI GitHub Page

ZMAPI Wiki

Bitstamp Tutorial

----------

Pull requests, new ideas and comments are very much appreciated. Architecture can still be changed if there is a need as there are no real users yet, it's a brand new API. I'm open to suggestions.

Also looking to have some dedicated developers in the ZMAPI organization that will form the core team. Let me know if you have programming skills and interest in being part of this.
 
Last edited:

sjlnk

New member
Feb 8, 2018
4
0
1
#4
Thanks for your reply Quantt!

Last price is included, of course. Where did you read that from?
Ahh, I see now. It is not a required field. I can see some scenarios where last traded price is not reported so it cannot be defined that as a required field. So far every connector provides it though.
 

Quantt

Active member
Jul 23, 2017
945
57
38
#5
Ahh, I see now. It is not a required field. I can see some scenarios where last traded price is not reported so it cannot be defined that as a required field. So far every connector provides it though.
Cool! Thanks for the explanation!