NexusFi: Find Your Edge


Home Menu

 





ZMAPI - open source vendor agnostic financial API


Discussion in Platforms and Indicators

Updated
      Top Posters
    1. looks_one rounder8 with 3 posts (8 thanks)
    2. looks_two ri777 with 1 posts (0 thanks)
    3. looks_3 Quick Summary with 1 posts (0 thanks)
    4. looks_4 rleplae with 1 posts (0 thanks)
    1. trending_up 2,191 views
    2. thumb_up 8 thanks given
    3. group 7 followers
    1. forum 6 posts
    2. attach_file 0 attachments




 
Search this Thread

ZMAPI - open source vendor agnostic financial API

  #1 (permalink)
 rounder8 
Bangkok, Thailand
 
Experience: None
Posts: 148 since Mar 2011
Thanks Given: 291
Thanks Received: 174

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

More tutorials coming soon... (futures specific vendors included)

----------

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 are interested in being part of this.

Started this thread Reply With Quote
Thanked by:

Can you help answer these questions
from other members on NexusFi?
NT7 Indicator Script Troubleshooting - Camarilla Pivots
NinjaTrader
Pivot Indicator like the old SwingTemp by Big Mike
NinjaTrader
Exit Strategy
NinjaTrader
How to apply profiles
Traders Hideout
MC PL editor upgrade
MultiCharts
 
Best Threads (Most Thanked)
in the last 7 days on NexusFi
Just another trading journal: PA, Wyckoff & Trends
31 thanks
Tao te Trade: way of the WLD
24 thanks
My NQ Trading Journal
14 thanks
GFIs1 1 DAX trade per day journal
11 thanks
HumbleTraders next chapter
10 thanks
  #3 (permalink)
 
rleplae's Avatar
 rleplae 
Gits (Hooglede) Belgium
Legendary Market Wizard
 
Experience: Master
Platform: NinjaTrader, Proprietary,
Broker: Ninjabrokerage/IQfeed + Synthetic datafeed
Trading: 6A, 6B, 6C, 6E, 6J, 6S, ES, NQ, YM, AEX, CL, NG, ZB, ZN, ZC, ZS, GC
Posts: 3,003 since Sep 2013
Thanks Given: 2,442
Thanks Received: 5,863


How do you position your effort with regards to FIX ?

In my understanding FIX aims exactly to standardize what you are trying to achieve..

Maybe i'm missing some part ? Feel free to explain..

Follow me on Twitter Visit my NexusFi Trade Journal Reply With Quote
  #4 (permalink)
 rounder8 
Bangkok, Thailand
 
Experience: None
Posts: 148 since Mar 2011
Thanks Given: 291
Thanks Received: 174


rleplae View Post
How do you position your effort with regards to FIX ?

In my understanding FIX aims exactly to standardize what you are trying to achieve..

Maybe i'm missing some part ? Feel free to explain..

Hi rleplae, thanks for your input!

It's a good question. FIX is a standardized form of messaging protocol that indeed supports both market data, account and executions. It would seem that ZMAPI is yet another protocol for no good reason, as it already exists.

FIX protocol undeniably has massive amount of institutional users but FIX endpoints for non-institutional users are very hard to come by. Middleware modules that the financial institutions use are proprietary and not strictly guarded trade secrets. API uniforming connectors and middleware modules could be build using FIX as messaging protocol but in the non-institutional setting that would mean most of the connectors would be converting from proprietary API to FIX anyway. There is very little amount (I don't know of any) of open source FIX modules that could benetit from this.

FIX standard was created on early 1992 and world has changed massively after that. It feels ancient and is quite awkward to use with limited amount of parsers available. Binary protocols have been built after the introduction of FIX to reduce the bandwidth and processing requirements. ZMAPI uses JSON everywhere with optional support for binary protocols. JSON is extremely easy and quick to parse with any language. Market data emissions for example can be encoded using a binary protocol in future for better efficiency with the added cost of programming complexity.

ZMAPI can be extended to provide FIX as the messaging format if that is for some reason feasible. ZMAPI can be connected to all vendors using FIX with a single connector module. If anyone can provide me access to a FIX endpoint I'd be happy to code it. As mentioned, FIX endpoints are a scarcity for non-institutions.

Please let me know if this does not answer your question and I'll try to come up with a better explanation...

Started this thread Reply With Quote
  #5 (permalink)
ri777
Kaunas, Lithuania
 
Posts: 2 since Aug 2018
Thanks Given: 38
Thanks Received: 0

Hi rounder8,

Are you still working on your project? Could you add CQG Continuum and TT data to the API, please? I am trading on CTS T4 data, but it would be nice to have more alternatives with more exchanges.

Reply With Quote
  #6 (permalink)
 rounder8 
Bangkok, Thailand
 
Experience: None
Posts: 148 since Mar 2011
Thanks Given: 291
Thanks Received: 174


ri777 View Post
Hi rounder8,

Are you still working on your project? Could you add CQG Continuum and TT data to the API, please? I am trading on CTS T4 data, but it would be nice to have more alternatives with more exchanges.

Hi r1777,

Thanks for you interest in this project!

I have been too busy with other stuff in the last few months but I'm just getting back to ZMAPI development. Market data (MD) side for ZMAPI has largely been done and is mostly functional. Execution side (AC) exists only in my head right now.

I have not been able to document everything yet and right now am working on documentation to make it as easy as possible for people to jump in and start experimenting with ZMAPI. With good documentation it should be easy enough for programmers to write connectors for such data vendors (or execution vendors) as CQG or TT. Indeed it is my wish to see people writing connectors and publishing them for others to use in the future once the infrastructure has been built and the documentation is clear.

I have been hiring a bit of help to get this done faster and in the future may do so in larger scale.

In the near future I'm looking to automate all executions using ZMAPI based order bots. Keep your eyes open for updates ...

Started this thread Reply With Quote
Thanked by:
  #7 (permalink)
rockthekazmarck
Miami, Florida
 
Posts: 2 since Feb 2023
Thanks Given: 0
Thanks Received: 0

@rounder8

What is the best way to communicate with you? Are you available to communicate via telegram app or any other platform? I am interested in what you've done and I have a small project i wish you'd be able to help with.

I would appreciate 5 minutes of your time.

Thank you

Reply With Quote




Last Updated on February 15, 2023


© 2024 NexusFi™, s.a., All Rights Reserved.
Av Ricardo J. Alfaro, Century Tower, Panama City, Panama, Ph: +507 833-9432 (Panama and Intl), +1 888-312-3001 (USA and Canada)
All information is for educational use only and is not investment advice. There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
About Us - Contact Us - Site Rules, Acceptable Use, and Terms and Conditions - Privacy Policy - Downloads - Top
no new posts