The lack of a pure C implementation and generally non-POSIX like feel of this repo says everything about how robust I'd expect it to be. Last I checked on this simply finding a formal spec for the protocol and server side behavior was a hassle (when it most certainly shouldn't be) and this is typical of software and standards involved with the financial industry.
Somewhat disagree: while software has until recently often played a subordinate role in finance and management did not categorize IT within banks or hedge funds as an essential function (there are exceptions), nowadays exchange feeds and messaging, either FIX or exchange APIs are very robust, well defined, and well understood. It would lead to terrible mistakes if that was not the case. And remember, most financial firms hardly ever reinvent nor start over on the IT side: they stack technology on top of legacy technology that cannot be removed because it must support existing consumers. Deutsche Bank I heard has over 200,000 different software applications and sometimes dozens, if not hundreds of software stacks to address an identical issue.
We are trying to accomplish the creation of an exchange; very much similar to how Josh Levine created Island. We are building an entitiy to compete with the Nyse, Nasdaq, et. al, that it is built upon Free Software Foundation (FSF) and open-source principles: free market data, open DOM, etc. The concept is to remove positions of privilege (think $100M+/year colo fees, $6K/month non-display fees, etc) and level the playing field. All traders, speculators, investors, and gamblers alike will have access to the same information at the same price. At heart, Ritchie is fundamentally aligned with the SEC mission (emphasis mine): https://www.sec.gov/Article/whatwedo.html Note that, although market data are free, trades are not. The exchange shall charge fees, and broker/dealers will charge commission--equal and fair fees for all market participants. That market data is coming from the Ritchie market data server, just like any other exchange. I am coding it right now, and a technical issue with UDP was the impetus for posting this thread. I'm now using sample prices, because the exchange code isn't finished yet, but soon prices will be based on the market value of assets traded on the exchange. We are working hard to get paper trading up and running. Unless I misunderstand your meaning of "exchange" and "data provider," I believe that compliance with the SEC and FINRA are more relevant here. I have a relationship with a law firm in Washington. One of the "Keys to Success" in our business plan is for Ritchie to be fully compliant with all FINRA, SEC, and other applicable regulations. So important is this point, that one of our first IPOs will be an innovative service designed to empower the SEC to better monitor and enforce compliance. I have been devoting my time to building the market data server, and haven't had a chance to update the Web site recently.
@i960 , tick data test server is up and running. Kindly hit the URL and let me know if you see data flowing: http://www.ritchiestockexchange.com/tickdata/index.html - The exchange, market data server, and Web data server are all separate - "Last sale" price data are sent via C/C++ socket connection to the market data server. - The market data server sends data via another socket connection to a Nodejs Websocket server - The Nodejs establishes websocket connections to subscribers. Subscription happens automatically on page load. - Planned is to enable UDP subscriptions directly to the market data server. Also, please take a look at the site itself, and let me know if anything appeals to you in terms of contribution. http://www.ritchiestockexchange.com/