Complete options trading system

Discussion in 'Programming' started by Aquarians, Jan 14, 2018.

  1. 1) Has any of you developed / maintained a complete trading system, ideally specialized for options? The terminology may vary but I think the following subsystems are universally involved:

    a) Market (live) data
    b) Historic (static) data
    c) Executions
    d) Pricing
    e) Auto trading engines
    f) Positions, P&L and risk
    g) GUI (for all subsystems #a-#f)

    While it's possible to do some quick monolythic hack which has the above on a single desktop machine, professional software has:

    a) A client / server architecture (GUI client for visualisation and control, server side for processing).
    b) A distributed (scalable) server side (not necessarily "cloud" or runtime swap / fail / redundancy) just easy to add more processing power (computers).
    c) Ideally, an unified historic and live system, so the thing you're backtesting is promote-able to live with just a config setting.

    2) Do you know of such systems available on GitHub? If not, would you be interested in developing one?

    If so, please indicate them (I haven't found them) and I'll check the features, source code and do an evaluation of how much time I need to invest in learning to use / customize them, deal with their limitations and decide weather it makes sense to continue developing my own versus start from pre-existing.

    I know hedge funds have this sort of software and I worked for a company which sold this sort of stuff to clients who payed at least $200k / year (less than that it wasn't profitable for them). Looks like prop shops also provide this sort of software for their traders and charge them a hefty fee for using it (which is not so surprising giving the costs of developing it, see above).

    GitHub is shit for promoting yourself as a developer, nobody fucking reads or gives a damn about your CV and your repo.
    So those who would work on this sort of stuff would need to consider the intrinsic motivation for develping it, in my case #1 being: I'M AN ACTIVE USER OF IT. But at the same time, apart from the elusive returns I one day will make on my own capital using it, the thing is a by-the-book definition of #1 in my "Good work, bad work, no work" thread ( https://www.elitetrader.com/et/threads/good-work-bad-work-no-work.316872/ ).

    With 99% probability you won't ever get to do in real life such a system and adjust it to your own needs. Which means you gotta have these needs, a.k.a actively trade using it and aim for profitability not trough selling snake oil (software) but the hard way, risking your capital.

    I'm a bit busy now hacking what I currently have to live trade several strategies which finally have proved profitable but in the near future (a couple of months) I wanna give much more serious attention to the trading system and develop it to professional level. With what I can control, which means my own labor plus up to $500 per month, split in $50-$100 per task, most likely using the dreaded UpWork.

    If you're interested in contributing or using it, read my "How much does it cost to start a hedge fund" ( https://www.elitetrader.com/et/threads/how-much-does-it-cost-to-start-a-hedge-fund.316685/ ) thread for some other stuff that I have in mind.

    Ahh, one thing that would not be open source is the thing that matters: #1.e - the trading engines encapsulating the proprietary knowledge / competitive advantage over the "market average". In practice that's 99% of what matters, problem is it doesn't work in a vacuum, without the other 1% in importance (and 99% in code :) )
     
    Last edited: Jan 14, 2018
  2. fan27

    fan27

  3. I'll take a look, thanks for pointing it out.
     
  4. sle

    sle

    If you are planning to trade vol, the system should be vol-centric.
     
  5. T0pH4t

    T0pH4t

    Just a heads up. This is a non-trivial undertaking "if" you plan on supporting multiple brokers/data feeds (bascially any sort of generialization). The complexity is only increased if you want to have something that is production grade and uses a client/server architecture. This is probably why you can't find many (if any) open source systems. I would also argue that your trading engine isn't they only thing that matters, storage and how you access your data can also play a big part depending on what you are are doing.
     
  6. ajacobson

    ajacobson

    ORC at ITIVI does it, but may not handle enough symbols depending on how many you aspire to trade.
    OptionsCity comes very close.

    They ain't cheap and may need them to do some customization
     
  7. qlai

    qlai

    So do I understand it correctly that you already have something of your own which you are using to trade live? If so, you must have hacked a large part of your requirements list. Are you trying to create a commercial quality product or simply improve usability/reliability/scalability of your system for internal use? Have you looked at Rival Systems or Blue Trading Systems? Why wouldn't that work for you?
    P.S. Not sure what you mean by "trading engine" You mean your trading logic/system, right?
     
  8. 1) I neither have the money nor do I wish to pay for a closed source trading solution.

    2) Yes, the trading engine is the money making thing. You can take Rival Systems or Blue Trading Systems or whoever else and they do you massage but don't make money for you and that's why this is the uttermost important thing in a trading system.
     
  9. sle

    sle

    If you are trading "things" in a non-latency sensitive manner (more or less), you should not bother with a complex system. It's very unlikely that you'd be able to compete with the high end MMs for scraps of their business. Instead you should assume that you are going to be a net payer of transaction costs and look for longer-term alpha. In fact, my advice would be to look for manually-executable alpha and migrate it to automated trading after some time.
     
    fan27 likes this.
  10. qlai

    qlai

    Agree with sle and t0ph4t. It all comes down to latency requirements. Not sure how it's less expensive to build everything from scratch. Even if you can do most of it yourself, your time would be better spent on "uttermost important" things. For example, are you getting normalized OPRA data from vendor?
     
    #10     Jan 15, 2018