Sorry, I'm afraid its not open source for the time being. I haven't even considered that option until you mentioned so I may give it more thought and reconsider in the future. Your interpretation on the concepts of SHELL and GHOST is correct though. Python is indeed a nice language to quickly build a working prototype and its data structures lend well to most kinds of mathematical manipulations. Do you have experience coding ATSs in Python?
Will you be observing other's systems in real time? MBT has a way for you to observe other accounts in real time. It could generate ideas for your different ghosts' useage.
The shell is uninteresting. Most people on ET spend faaar too much time talking about it. I suspect it's because ET guys are more software development in background rather than quant/finance.
I guess this is true for any language if you have proper infrastructure. At least it takes similar time with Java for me.
The shell (OMS) is the difficult part, especially if your ATS generates complex multi-leg, algorithmic, and/or contingent orders that, once filled, need to be dynamically hedged. Dealing with partial fills, hanging legs, etc can be convoluted and error prone. I have never seen a non-pro OMS that gets these things right. Frankly, I am skeptical of claims that an ATS, including functional OMS, can be coded up in a matter of days.
Exactly. It's a never ending story of building f**king boring oms infrastructure. Zero edge, with lots of fancy "software architecture". Yawn...
I kind of agree, in so far as managing a stack of orders is tricky, especially skewing and re-sizing without losing priority -- but -- none of that is sufficient to make any money. If you can't do the quant modelling work to figure out a fair value to quote around, then don't even bother to build the oms tech masterpiece.
OMS is technically challenging to do right, especially on a fund level. It *can* be trivially easy if it's done on a small scale and just enough that everything works for the strategy at hand. The GHOST is intellectually hard.
thats what I was getting at. I meant that for personal use infrastructure (especially in python) is not difficult and can be done in a few days. Nothing needs to be fast considering you're going over the internet and most likely have a slow feed.