April 29th, 2010, 9:27 am
QuoteOriginally posted by: BornToBeTraderQuoteOriginally posted by: mg298"So trading every 20 seconds is not HF??"we can trade up to every 20s, but that's about as fast as we ever get - usually we are doing much less than this. There seems to be a lot of different interpretations of what high frequency means, and I have read about algos trading at significantly higher frequency than ours do, so I try to avoid describing us as very high frequency - some people get sensitive about this.I see what you are saying and yes I've come across those too (annoying.... ). I personally think that if its too fast for a human to execute then its High Frequency. But then there are some from the big banks/funds who think that if your not executing XXX many shares every minute then you are not high frequency. I also found that in general there also seems to be a bit vagueness about high frequency and automated trading..... Quote "Our code and programs don't break/freeze - or haven't yet" (in reference to ECC memory)what concerns me with algos using non-ECC isn't that they will freeze, it's that a bit will flip on something related to the size of an order and we'll trade a boat load of something we don't really want - I'd hope our other systems would catch this, but if the extra cost is small compared to algo P&L, I'd rather go for ECC and would advise this."Do you run money for others?"yes, the fund has (limited) external £$£ (it used to be much more) and internal £$£.After seeing you being so conscious about ECC (and thanks for your honesty here), I'm starting to get a little concerned about it as well. HAve you ever come across a problem where your system just drops and fails due to RAM errors. IS ECC memory suppose to be any better/faster?QuoteSoftware: C/C++ in visual studio, trading through FIX with a few different brokers. We have a 3rd party company that deals with the lowest level FIX stuff (such as converting to the correct FIX version for each broker). I would rather have run our algo in Linux but have a really old MS SQL database and much of the code written over the years was Windows specific so moving away from it isn't trivial (and gets harder every day...). I'd have thought Windows 7 wouldn't be a million miles behind most versions of Unix/Linux for most tasks apart from perhaps network traffic - this is not a *massive* concern for us as we aren't that high frequency that we need to shave off 10ms here or there. Threading may be a bit better on Linux too, but (atm atleast) for us we don't think this is significant enough to warrant the change for our algorithm. If we were desperate for more speed, initially we'd consider the ICC compiler in windows first, as that's an easier alteration and in the past gave some improvements."So can fast execution be done on a windows system? Latency is not an issue for you in this case?"I think the answer to this depends on how high frequency you are talking about. If you are talking about ultra high frequency, then windows is not suitable as a 5-10 milliseconds here or there presumably becomes significant. If you don't have co-location and/or don't think 50ms would have much impact on algo performance and you prefer windows, then I think Windows should be fine; so far for us it has - our P&L is hugely dominated by good/bad trade decisions (from the algo itself) rather than not getting filled on something as someone was a shade faster. Sorry for the slightly non-committal answer. Out of interest - what price feed do you plan on using for your algo?To be honest, we just back tested our system and are in the stages of taking it for LIVE testing. We are still deciding on price feed and brokers. We are starting very small for now. No external money. For now I was thinking that a Lenovo TD 200x (Quad Core) should be fine. However, someone gave us the impression that you need RACKS AND RACKS of computing power to do High Frequency trading.... though I don't see why would we need that unless we trade every exchange 24/7. Btw, we are trying to shave down 5-10 ms wherever we can. So if a linux server helps then I can guess I should start looking into that option. Although I'd hate to deal with Unix and linux since windows is much more simpler. May I ask that what sort of storage requirements do you happen to have with your setup?After the above discussion, I guess more intense computers are needed for running simulations and strategy discovery as oppose to actually executing the trade.If you're looking to shave 5-10ms then I assume latency is all important to your algo. If so, you're going to need coloc, direct exchange feeds, kdb, historical level 2 data, linux server etc., i.e. the works.... unless you're trading relatively illiquid securities whereby you can probably get away with a lot less.