A question about designing a medium frequency system, 10k trades per day

Discussion in 'Automated Trading' started by mcgene4xpro, Jun 30, 2012.

  1. Hello ETers,

    I am developing an automated trading system that has the following main execution criteria:

    1- It plays around 10,000 orders per day per instrument.
    2- The system will depend mainly ( about 80-90%) on pending orders.
    3-The system has the ability to respond with " calculation and/or putting new orders" for every single price quote change.

    My plan is to trade through LMAX. They claims that they have fantastic short execution latency for a retail broker. http://www.lmax.com/execution-performance

    LMAX has to options suits me; either multicharts or API.

    Now, i have a couple of concerns i hope to hear a pro opinion regarding them.

    1- Selecting the suitable option: multicharts or API ( tradelink or open source java plateform ( algo trader)).

    2- Being NOT a coder ( howerver, i have just started learning JAVA) and I will depend on coders to do the coding part, i want to protect my intellectual property.

    Of note;

    1- to protect my IP, i will divide the coding on multiple coders.
    2- i am worry about the need of multithreading in my system. I am not a coder but i believe this might be an issue when a number of events has to be done on the same time.


    I would appreciate to listen to pro suggestions/advices from coders, ATS developers, pro automated traders, or whoever knows.

    Thanks
     
  2. lol

    10k orders per day and started to learn java
     
  3. Irrelevant.. :)
     
  4. Good luck, god speed.

    Regardless of the whole premise and more to the point of your question, with that type of activity you need to rely on very well tested code. I would really discourage using the common retail trading platforms like NT/MC, they are not made for what you are trying to do. I cannot speak for the quality/reliability of tradelink, but that should be your starting point if you're not going to roll your own or look for solutions in higher price tiers.

    Keep in mind that this medium frequency system can lose you a fortune very quickly.
     
  5. Questions for multicharts:

    1- Could multicharts handle this load of execution and order management?
    2- How multicharts will handle concurrent events? Does it need specific programming such as multithreading?
    3- Is multicharts compatible with code division and interfaces to conceal the logic?
    4- I have read that on crashing , multicharts could transfer strategies to their server, would this preventable?

    Questions for Tradelink:

    1- Missing GUI in tradelink, would affect such ATS?
    2-Same questions as multicharts except #4


    Questions for algo trader:
    1- Having CEP esper and programmatically, would an average skilled c# coder do the job? or i have to hire a high skilled ones?
    2- Also missing the GUI, would this affect my project.

    However, i think charting would not be helpful on such tasks because the chart will contain huge number of info that would be very difficult to track certain trade.

    Thanks
     
  6. No, I'm afraid it's not.

    It seems to me you're in one of those places where the only option is to learn the hard way.

    Best of luck!
     
  7. promagma

    promagma

    Trying to run a project as a non-programmer is nearly impossible. Only an experienced coder would be able to choose the right technologies, do a high level design, and break it down for multiple coders. Even if you did get it coded up, you have to realize that 50% of the work lies ahead, to fix mistakes and make changes and improvements, making it work in the real world.... and no coder will want to be strung along for that process.

    +1 to what McGene said. Start with a framework, so most of the hard work is done for you, and see if you can muddle along. Huge learning curve, but at least you will know your code and not be trapped in something you don't understand.
     
  8. I understand that the ideal way is to learn programming myself and do the job myself. However, i am aware that this will be a steeping learning curve but i already made this commitment. I selected java to learn because:
    1- it is general purpose language so i will not lock myself into a proprietary programming language such as easy language or AFL.

    2- There are many open source java platform that could be utilized in my project such as Marketcetera , algo trader, active quant.



    On the other hand, i believe this will take me some time ( 6m -1y) to get to a degree i could share in the process of development. and around ( 1-3 years) to be able to do it myself with the help of some programming resources and forums. I have just finished the 5th chapter of " Sams teach Java book".. It has 20 something chapters, i chosed to read the 16 relevant chapters. I commit 1 hour daily for this learning task because i have a full time and demanding job. Also, i am using knowledgeblackbelt.com to accelerate my learning curve. Besides some online resources.

    Considering all the above, i plan to NOT stop development by hiring coders to push the project a step further. Then, i hope to meet the project development process at some point on time.

    I realized also , to get the most of my project, i have utilize also matlab.

    Unfortunately and fortunately :), my full time is on the biology side and not on the math side. :).

    This is my situation and i would appreciate to share me any idea because it might help.


    You could also pm me

    Thanks
     
  9. promagma

    promagma

    Learning Java is a good choice (all my stuff is Java, from scratch).

    Fro high frequency, the order management is a big consideration (to handle things like partial fills, hung orders/network outages, staying within margin, etc.) There is some discussion here.

    http://www.elitetrader.com/vb/showt...192025&perpage=6&highlight=queue&pagenumber=1

    Multicharts will not work. If you can find a framework that does proper order management, you will be way ahead. Most coders would give you a blank stare about this kind of stuff, and as a non-coder you wouldn't even know how to scope out the issues and requirements.
     
  10. IMO a non-programmer can manage programmers and a large software project if he understands flowcharting.

    However, and this is the big however, why do you want 10,000 trades per day? Are you going to play MM? Are you shooting for rebates? I don't think there can be an edge in medium frequency. It will take a few days for HFT robots to map your patterns and squeeze you out. Actually, your broker may dedicate one robot just for you, with your name on it. If not your broker, then his friend, etc.
     
    #10     Jun 30, 2012