Estimating Bandwith Usage for an ATS

Discussion in 'Automated Trading' started by CPTrader, Sep 23, 2010.

  1. How can one estimate Internet bandwith usage for an ATS. It's a simple ATS trading multiple markets, receiving market data feed from multiple futures exchanges in real-time and sending orders for execution to the exchanges.

    Could people please share some insights on this given their experiences.

    Thank you.
  2. cstfx


    Are you asking because you want to put it on a remote machine and want to determine how much bandwidth to buy? If so, run it on a dedicated machine first locally and have a bandwidth metering software program installed on the system such as bandwidth meter. I'd run it for a month or 2 to get an idea what you need then add 50% more.
  3. Thank you!
  4. Most datacenters sell bandwidth in increments of 100mbits. If you can, I'd suggest you get a 100mbit burst (not symetrical) because its cheaper. You will probably NEVER break 50mbit but if you are paying for 50 its still going to be a 100mbit line just throttled back to 50 at the switch.

    I pull 3k symbols realtime and have several strategies running as well as bloomberg terminals and some bloomberg TV over internet. I have never pulled over 45mbit and my highest sustained (longer than 5min) rate is around 23-25mbits across 8-10 machines, execution + internet + chats + data recording, etc.

    I would reccomend against something like a FiOs or Time Warner Cable business class. Its like $400/month for a 50mbit line and that's not symetrical its burst, the sustained rates over those lines are around 15mbit and the reliability is less than ideal.
  5. Thanks WinstonTJ for your always insightful comments.

    When you say you've never pulled over 45MB is this per month?

    I ask because the datacenter I am talking to tells me their price structure is as follows:

    "Direct Internet Access is $10.00/meg /month for bandwidth under 100meg. $5.00/meg/month for 100meg and up."

    Does this mean for your example of 45MEG, that with this rate structure you would pay $450/month? Are you calculating your usage per month?


  6. that's my burst rate vs. sustained rates. means that the most I have ever pulled in a one-time burst download/upload is 45megs. So, thus far I'd be fine on a 50-meg line since I have yet to max that out. I don't have a monitor for how much bandwidth I've used per month, nor do I have a cap... but I can check on it and report back. Perhaps my IT guy knows more.

    That price structure is pretty straightforward. In a colo you pay roughly $150/month for a 100mbit symmetrical line so their fee structure is exactly on par with that. As long as you don't have a data cap I'd start somewhere around 30mbit and go from there. Make sure you can upgrade/downgrade at any time. I pull 3000 stocks all the time and my peak was on May 6th (flash crash) so outside that my data pulls don't typiclly exceed 25mbit, ever.

    If you start at a 30/30 symmetrical up/down line and start hitting that they will tell you and be happy to sell you more bandwidth. You can monitor pretty easily with your Task Manager (networking tab).
  7. Thanks WinstonTJ..

    Could you please check on this for me:

    " I don't have a monitor for how much bandwidth I've used per month, nor do I have a cap... but I can check on it and report back. Perhaps my IT guy knows more."

    One more thing you say the price structure in a colo is roughly $150/month which you say is in line with the quote I received. However, the quote I received says: $10/Meg/month...which I believe works out to 10 * 100 = $1000/month for a 100MBit line; which is way more than $150/month. Or is my arithmetic incorrect??!!

    Your generosity in sharing your insights will be rewarded in spades. I believe in positive karma.

    Thank you!

  8. feyri


    Nice piece of software.
    Going one step further do you know of any software that can
    i) actually monitor and record the speed of the connection (rather than how much bandwidth you are using) and
    ii) identify bandwidth usage by process?
    Thanks in advance if anybody does.
  9. i) Effectively the amount of bandwidth you are using per unit time is the current speed of the connection. For instance, if I am pulling 20 mbits/second, that's the current speed of the connection. Any good bandwidth monitoring software can show you this.

    ii) Personally, I've only done this with the "nethogs" utility on Linux, but I hear tell that NetLimiter will do what you want on Windows.
  10. feyri


    Okay if we're being pedantic, "the potential speed of the connection". An obvious example (and one I am very interested in) is that the connection has zero traffic. Is that because I'm sending/pulling nothing or because it's down? Looking at my Bandwidth Meter logs there are definitely periods (most often but not always at night) where my connection is doing nothing. I want to know whether the connection is still active.
    Thanks I will take a look at Netlimiter. Appreciate the help.
    #10     Sep 27, 2010