Why Sterling Pro is not suitable for fully automated systems

Discussion in 'Automated Trading' started by cruisecontrol, Oct 17, 2014.

  1. rohan2008

    rohan2008

    I am primarily into Linu; some of the standard techniques that we normally use in such situation might help you…

    1. Write a python/ant cron job (win equivalent) that kills the sterlingpro process at a certain time of the day and restarts in at a certain type. In linux we normally issue a “kill -9 <pid>”… I am sure, windows has something similar in the command line of in win32/mfc...

    2. Run a daemon that reboots your machine at a certain time of the day (whenever sterling database starts up)… put sterling pro init in the system startup routines… so whenever the machine reboots, the startup procedure starts up sterling pro…

    This is how we can normally handle such situation in Linux… you can use “expect” to enter log in username and password in linux command line…. Not sure if expect can help you in windows.

    Also, I know there are a few GUI automation QA tools in windows. You can automate the process of entering the username and password using these tools… see if any of these can help you http://blog.dreamcss.com/tools/gui-testing-tools/

    You can try all these techniques if you decide not to leave sterling Pro… but if you do, I am sure you have a lot of options.

    Hope this helps
     
    #11     Oct 18, 2014
    eusdaiki and cruisecontrol like this.
  2. Thanks, that's actually helpful. I think that's probably the only option for people who have no choice but sterling. I'll consider whether I want to attempt building such a system. I am not a fan of hacks and this would be a giant one, but it could be worth it, perhaps...
     
    #12     Oct 18, 2014
  3. Occam

    Occam

    I've automated completely many platforms in the course of trading, including Sterling (checking every few seconds to see whether it's up and, if necessary, restarting, etc.). Although it takes some digging around and more than a little trial and error, it's pretty easy compared with the task of developing (and maintaining) a consistently profitable trading system in a dynamic market.

    As earlier posters mentioned, there are a plethora of window-automation and systems-level scripting systems for Windows. Putting it all into a VM can make it easier, too, as may be easier to just cut off the whole VM when certain things seem wrong and restart. However, even with automation, crashes still cause some interruptions. Crashes interrupt both your trading and your data -- e.g., what happened to my order during the crash? etc. I have since moved to FIX, which is far more robust than any platform or broker-supplied API I've used previously (e.g., it resends missed data when you reconnect after a network outage), but FIX also has a somewhat more significant learning curve.
     
    #13     Oct 18, 2014
    eusdaiki likes this.
  4. Impressive. Would you consider sharing some of your Sterling automation scripts to help save others some of that trial and error?

    What are some brokers/firms that support FIX? I actually searched for that before but had trouble finding much info.
     
    #14     Oct 18, 2014
  5. 1245

    1245

    I know a broker that supports FIX with PM accounts but you have to pay the costs of a sever at NY4 and the cross connect fees.

    I can't post it here.

    1245
     
    #15     Oct 18, 2014
  6. Occam

    Occam

    Unfortunately, the Sterling system I wrote is split across a lot of pieces, and I haven't used it in years, and it's very customized based on the overall structure of my servers, etc., so it's not exactly something that can be easily open-sourced. I will say this, much, though: the core of the order placement/management consisted of multi-threaded Visual Basic apps.

    The starting/resarting/etc. was handled by another family of fairly simple scripts. E.g., check the process list every minute, and see if Sterling is there, if not restart. If Strerling there and it's obviously hung (orders are being attempted but Sterling gives back nothing), restart it. Etc. This part can easily be written in whatever language of your choice, as libraries exist for all major language to manage Windows processes, open and close windows, fill in passwords, etc.

    As far as brokers that offer FIX is concerned, I think that any broker (other than an "introducing broker") will offer this, if you're offering enough volume, assets, and commissions -- every broker that I know of has FIX running under the covers (even if they also use direct, non-FIX exchange API's, which also exist); it's just whether it's worth it to them to put the risk controls in place for you and open up a port. That said, a few brokers are more explicit about their offering of FIX than others -- two that come to mind are Lightspeed and Interactive Brokers (the latter with a $100,000 minimum opening balance I think). What I would do is to find a list of brokers that suit your needs in terms of commissions etc. first, then scour their Website or call them to see what conditions under which they'd open a FIX account.
     
    #16     Oct 21, 2014
  7. 1245

    1245

    Why would you suggest any broker except an introducing broker? An introducing broker has the flexibility to offer whatever execution options they want including fix. They only need access to a messaging service to provide the connection to the route to the exchange with proper risk checks and other regulatory items such as oats reporting.
     
    #17     Oct 21, 2014
  8. Occam

    Occam

    I would not use an introducing broker, all other things being equal -- in my experience, they tend to make it difficult to solve technical problems that are the fault of the execution system (with some you can't even talk to the developers in the "clearing broker" -- you have to do everything through an intermediary at the introducing broker, which can make it basically impossible to fix anything but the simplest of technical problems). They also tend to cost more, as they need their markup as well. Cheapest and easiest to deal with are self-clearing firms, in my experience.

    That said, there are introducing brokers who offer things that make them worth using, for one reason or another. E.g., sometimes they can put together an execution brokerage and a clearing firm that might not otherwise be available, for a given level of AUM. But that's something to figure out before choosing them; if you get to the point of needing "flexibility", something's likely gone very wrong, and you may be just as apt to switch brokers entirely as to switch execution platforms. IMO, anyone trading automated systems should have the platform/connectivity/execution/etc. firmly determined with the introducing broker long before transferring in the money.

    I am speaking more from the perspective of US equities; for other products, my comments may not be relevant.
     
    #18     Oct 21, 2014
  9. 1245

    1245

    When you use an Introducing Broker, they arrange for the the items you want in place above and use their relationships. They are sometimes willing to add a relationship that the client wants but that often complicates everything with little benefit.

    If you want to do everything and arrange everything, I suggest you consider becoming a BD.

    1245
     
    #19     Oct 21, 2014
  10. What exact assets are you trading and on which exchange/which broker (in case of OTC spot fx)?


     
    #20     Oct 22, 2014