Automated Scalping System

Discussion in 'Automated Trading' started by laocoon, Jul 11, 2005.

  1. laocoon


    Hi there

    I'm currently looking into developing an automated scalping system and I'd like to find out which language/platform is the most powerful for doing so.

    The system generates 1 minute intrabar signals based on Time & Sales setups and the average trade doesn't last more than a minute.

    Did someone on ET already develop such an ultra-fast system and if yes, using which language, platform, etc....

    What is your experience with regards to system stability, speed of execution, CPU usage, etc.

    Thanks a lot for your replies.


    PS: I'm using IB as a broker and therefore using one of their numerous API's wouldn't be a problem, the guy developing the system for me has excellent programming skills.
  2. Let me see:

    I used a mixture of C/C++ (mostly C for raw speed), on Windows, should have
    used Linux, one of my library wasn't available for Linux when I started, but
    has linux since then.

    My system would stay up for about a week, or 2-3 months in stress testing.
    CPU usage is minimal, despite the fact that I am pulling down tick by tick for
    about 40 products (direct exchange feed) but I have my own internal
    messaging bus (pub/sub, not TIB-RV), so a lot of the high performance
    come from there.

    The messagin and trading server sees 6-7% CPU usage during market open.

    My system doesn't scalp, so it is not *that* time sensitive.
  3. laocoon


    Hi Rufus,

    Thanks for your reply. May I ask which Broker you're using for order execution? And, do you have an "all in one" solution, where your strategy is directly fed to your broker or do you use other software (charting software, etc) in between?


  4. Where are you getting your time and sales data from? IB doesn't supply actual time and sales.

  5. laocoon



    I'm aware that IB doesn't supply T&S data, that's why I'm currently trying to implement a work-around (the fall-back solution would be to develop a system in eSignal's EFS language (using eSignal's T&S data) and to integrate it with IB through Ninja Trader (for example).
  6. When you guys say IB does not supply time and sales, is it because IB does not report every trade but subsecond snapshots of time and sales with the NBBO? So if XYZ trades 5 times in 1 second, IB will only show maybe the 3rd and 5th trade due to the snapshot nature of the quote? Thanks
  7. laocoon



    I've been investigating the availability of T&S data within IB and there seems to be a backdoor that could be interesting: Quotetracker displays a T&S window using IB feed, so there MUST be a way to access T&S data directly from the TWS and to incorporate it in a strategy coded using one of IB's API'S.
  8. alanm


    QT is simply producing a "T&S" window from the snapshot data that IB provides. It is still not actual T&S - just the 300ms snapshots. Edit: That may be overly general - they may attempt to reconstruct the prints from the volume information, but I still don't think it can be completely accurate, and can't produce all the changes in the quote.

    Personally, I _like_ the snapshot approach and wish other feeds would allow this as an option, too. One of my feeds gets totally saturated (both 3Mbps net and CPU) in the first few minutes after the open with just a handful of (the wrong) stocks because it's giving me every bid/ask/size change and print. In contrast, I have a spreadsheet that gets data for a bunch of stocks from IB, which could almost run over _dialup_ if it had to.
  9. Lacoon, I am a member of exchange, so no broker is involved. I know it is not
    the norm. So my system would directly send orders into the exchange

    It is fully automatic, open orders, close them, stops, etc. Myself, or the
    operator, would just monitor the risk parameters and the system's behavior.
    I don't read charts, haven't looked at any visual indicators for weeks.

    Personally, I am a terrible trader when I have to make a decision, so I leave it
    up to the computer. I found myself to be too emotional and get attached to
    positions. So I decided to take myself out of the normal trading process, I
    now just adjust the parameters daily.
  10. Aaron


    One possibility you might explore for automated scalping is eSignal data, processed by an eSignal efs script, with orders sent to Interactive Brokers via Dynaorder. It's simpler to code up than writing to Interactive Broker's or (heaven forbid) J-trader or X-trader's API directly.

    Btw, do Tradestation easylanguage scripts process tick by tick (like eSignal efs) or is at the end of 1 minute bars the fastest they'll go?

    Aaron Schindler
    Schindler Trading
    #10     Jul 11, 2005