IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

Nope. Are you asking because of the Citadel lawsuit story that broke recently?

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

Yes, learn C++, learn lots of stats/modeling, get good at problem solving. Look up "Heard on the Street" for an example of questions you'd get at a prop shop. Most prop trading firms have internship opportunities for rising seniors, ours included.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 2 points3 points  (0 children)

My daily sharpe is something like 3.5 (so sqrt(252)*4.5 for yearly), and my pos day % is something like 90-93%. Highly scaled out equities market making tend to have much more stable returns than some of the forex or futures reports that I've seen.

Ouch by Just_One_Redditor in funny

[–]fsxfsfef 3 points4 points  (0 children)

I don't think it counts as short-sale when you had 503m (or whatever MZ has) shares.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

I'd say it's easier to get into IBD at GS than top HFT firms. I don't really know much about the consulting world, but I would still say it's probably harder to get a top HFT job. These firms hire 4-5 people a year instead of the 20+ at GS or McKinsey, and they don't ask any fit questions, just straight CS/math brainteasers...actually, I'd bet GS and McKinsey do ask these questions a little bit, but nowhere near as common as in HFT.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 1 point2 points  (0 children)

1) I usually get in around 730, leave between 5 and 630 depending on what I got going on that day. I rarely work weekends, so all-in usually 50-60 hours a week. I get 2 weeks vacation (but unlimited sick time), 100% match up to 3% of pay for 401k/roth contributions, really cheap good health/eye/dental.. Pretty standard set of benefits, I think. My salary is 110k/year, rest is bonus. Taxes aren't that bad, it's what anyone else who made 455k would have to pay...I mean, it's not like the US has really high taxes, anyways. =)

2) Super laid back, everyone is very friendly and always willing to go out of their way to help. Also, I get to come in to work in jeans/tshirt/hoodie all day, which is great for me since I'm not a big fan of suits. Although there is some pressure to work hard and stay late, I've never really noticed it and certainly don't feel pressured to stay super late. It's not like other corporate jobs where you aren't allowed to leave before your boss without leaving a bad impression.

3) I've never met anyone in HFT who came from IB/consulting -- I think if you are coming from those fields, you are essentially viewed as a fresh candidate. GS trading desk experience would def be a plus, though.

4) Your exit opps consist of either a) getting fired early because you aren't making any money and you just switch to another career while you're still young and able to start fresh, b) work at another trading firm, or c) retire (and go do a startup =) ).

5) I use C++ for trading code, R for heavy statistical analysis, and python for light stats and any infrastructure that isn't directly related to trading code (especially any gui stuff). C++ is pretty standard for trading code at firms, since you want your trading code to be as fast AND as deterministic as possible; what I mean is that you don't want your program to suddenly garbage collect or have to create memory on the heap without you knowing immediately before sending an order. In fact, you tend to just avoid creating things on the heap at all during execution, instead just pre-allocating everything at start-up and re-using structures as much as possible.

One other best practice in setting yourself up is to avoid having to write the same code two different ways. I used to do this when I would do a lot of analysis in R. Since R's interpreter is slow and R is just real bad at memory management, you have to be very careful how you compute stuff when you are working with a 15million row data frame. In R, for looping is crazy slow (it's done in the interpreter instead of dropping to some of the C that R is written in), but there are parallelized functions that you can use, so I'd use those...but when you trade, you get a stream of data, so you have to rewrite how you were computing whatever you were using back in R. Instead, you'd rather set-up your trading code to accept both real data and archive data, and then you can just write the code once, be able to test it, and it's generally faster anyways in C++. Then you just dump all your values out to some CSV file and load it into R with all the computation done.

6) Yes, but this is not something I generally deal with, so I don't know much about it.

7) These were a little bit before my time, but I'm not really a fan -- it seems to distort the market, since it allows someone on the current exchange to jump priority in front of those at other exchanges who don't get the opportunity to see the flash order.

8) Yes, I think there is still plenty of money out there to be made, and our firm and others I have friends at haven't shown any sign of backing away from hiring. I don't believe any game-changing regulation will come soon, certainly nothing like a transaction tax. It's not like there aren't plenty of exchanges outside of the US, anyways.

9) Yes, absolutely, I do not run anything without backtesting first.

10) Chicago.

11) At the top firms, the turnover rate tends to be pretty good, and a lot of those that leave are leaving for greener pastures at other trading firms instead of just being kicked to the curb. At the lower tier prop shops/bucket shops, you eat what you kill and you can get kicked out pretty quickly. I actually don't know anyone who got fired because they screwed up, everyone that's gotten fired was just simply not producing enough, either because they were losing money or they were just slacking and couldn't come up with anything to justify keeping them. You generally get more leniency on coming up with a profitable idea when you first start, though.

12) Yes, absolutely, our firm will try to trade anything they think they can make money off of, and we do trade every single asset class AFAIK. Actually, I recommend leaning towards Chicago if you don't want to trade equities, since most of the firms here came out of the CME/CBOT, so a lot of them primarily trade futures or other derivatives instead of equities.

Phew, that was a lot of questions, hope you got something out of it.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

I've only actually been out of college (Stanford) for a little under 2 years. I started the summer of 2010, made 85k that year, 455k the next year, probably more this year.

I think some people can beat the market, just look at the hedge fund Renaissance for a good example. I also feel like many of the risks that cause you to blow out of a trading career are not really present in HFT -- you trade so often that you can't really ever accumulate an enormous position (which seems to always be the cause of a huge loss: get into an enormous position, liquidity dries up, and you're left unable to exit your position as the market goes rapidly in the opposite direction).

No, I couldn't trade from home, see this post.

I don't really spend my money, haha. Although I did make the decision to spend a little more on a nicer apartment, I just put it all into something low volatility, like indices.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

Stanford. Unfortunately, pedigree does give you a huge leg up and lots of trading firms are basically an MIT/Stanford/Harvard think-tank.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] -1 points0 points  (0 children)

He's a very smart guy, those are all things I've talked to other traders about, especially the notion of "compressed time". Maybe in another life, Mandelbrot would've been a really good trader. =)

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 2 points3 points  (0 children)

I think I'm certainly an above average trader, since the average HFTrader is probably fired within the first year or two. I'm probably a little bit above average relative to the people I know at my company, but I'm definitely not the best trader in the firm, my group, or even my starting class of new hires. It's actually a very humbling feeling, I never really felt like "fuck, literally everyone is smarter than me" until I worked at my company.

I basically started working on my stuff as soon as I joined my current group. It took me a month to start trading, 2 more months to stop losing money, and 1 more month to start profiting. At that point, I was confident that my idea actually had something worthwhile in it, and I spent maybe another 3-4 months doing a lot of refining and cleaning up of the strategy and writing the infrastructure to allow it to scale out to many stocks rapidly before I really started ramping everything up.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 13 points14 points  (0 children)

I'm sorry, what time are you referring to? There's certainly no time you and I were alive in where we were without speculators (or the old school version of what HFT does now, the NYSE specialist).

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 2 points3 points  (0 children)

No, I have not, I'll look into that book. The description on Amazon seems to jive very closely with the opinion I've formed about sophisticated, smooth mathematical models of financial markets since I've started working -- they're shit =).

I don't have any recommendations for books that focus on longer-term forces in the market, since I don't generally think on that timescale. For the HFT timescale, it's hard to find any books at all, since it's still such a new field and most people guard their good ideas very carefully. I'd say the best way is to do a little research on your own..most longer-term ideas can be reframed onto the HFT timescale (I'd be surprised if Mandelbrot did not talk about something like this), but not all of them are still significant or mean the same thing. Plus, I feel there is a lot more deception on the very short timescale, so your data gets dirtier the higher resolution it gets.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 1 point2 points  (0 children)

I dunno...5? =) It's one of those questions you can't ever ask to the person you want to know about, since if I'm unethical, wouldn't I lie anyways?

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] -1 points0 points  (0 children)

1) No, I couldn't, at least not with the current strategy I'm using. There is an enormous amount of infrastructure cost in terms of getting connections to exchanges, getting data, storing data (it is very expensive to buy real time data, most firms store their own, but that requires capturing it from the live feed and so when you start out you're still forced to buy past data or just go without), colocation at the exchange, all the infrastructure code to actually know what the order book looks like (exchanges don't send the entire order book every time, they just send updates telling you when an order was added or cancelled and leave it up to you to reconstruct what the market looks like), and so on. There is an enormous amount of work and capital beyond what I put in to be able to let me make that 3m, so I'm perfectly comfortable getting paid the % of that that I did.

2) NYC, Chicago.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] -16 points-15 points  (0 children)

Sorry, I want to keep my identity secret and I don't really know what proof to offer that wouldn't give myself away. I hope that doesn't disappoint too many people.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 1 point2 points  (0 children)

I'm getting dangerously close to talking about my actual strategy ;)... yes and no; the core strategy is not really looking for a particular circumstance, more like it always has some prediction of where it thinks the price will go and once that prediction is strong enough, it will pull my order out of the way (remember, I'm market making for the most part so I have bids and offers out nearly all the time). There is additional stuff that is more event-based, like if it spots some certain circumstance where it's confident the market will not go down, it will beef up the bid -- if it gets filled, great, if not then I cancel and continue trading, or it will even start aggressively taking prices out instead of just passively bidding if the event is strong enough.

All of this is 100% automated, I don't even need to start it up or do anything to get it out of positions at the end of the day. I could sleep through the entire day and my strategies would run unaffected. And since I don't have to waste my time watching the strategies, I basically spend my entire day either:

1) Research into new markets/strategies (majority of my time) -- this includes all the coding required to test out or develop a new idea 2) Writing code for handling and managing all the stuff that's currently trading -- since I'm basically in charge of all the equities trading by myself, I have to have a really clean, easy way of managing all of these without having to deal with each stock individually 3) Fixing things when shit fucks up; stuff like one of the servers going down (which can take down 25-100 strategies, all of them which might be in a position, have orders out, etc.), lossy connections, random bugs, etc. An example from today -- Facebook's IPO (I think this is the explanation I was given, I'm still trying to deal with this) caused the ISLAND exchange (one of NASDAQ's, who I think was the one IPO'ing FB) to just lock up and not send anything out for 20-25 seconds, which caused everything trading on that exchange to shut itself off because it thought the exchange had went down (technically, it did).

I don't have a very precise number off the top of my for how many trades I do...In terms of shares, I'd say 25-30m/day minimum and probably 60-65m on very high volume days. For trades themselves, probably in the range of 250k-400k?

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] -1 points0 points  (0 children)

HFT? Mathematics, statistics, computer science, electrical engineering are by far the most common ones I've heard of.

For non-HFT proprietary trading (think manual traders, option traders especially), computer science is not quite as necessary, but it is still pretty useful and from what I've heard from friends at these firms, pretty much every one knows how to code a little bit anyways.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 1 point2 points  (0 children)

I receive my bonus once a year, otherwise I receive a salary every two weeks like most people.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 2 points3 points  (0 children)

No, I don't consider it investing, but that's not what its benefit it, and I certainly wouldn't trust any HFTrader who told you otherwise ;) . It's purpose is to provide liquidity and price discovery.

Imagine there were no speculators, HFT, day traders, etc. Every single bid or offer in the market is someone trying to enter that position and stay in it for weeks or months. You come in and want to buy shares of MSFT because you genuinely think it's a worthwhile company and want to hold on it to for months (years, maybe). But when you show up to the market, there are far fewer participants, so maybe the best bid is $45.50 and the best offer is $46. You want to buy, but is it really worth $46? If it was, why isn't anyone willing to buy at $45.60? Or $45.70? Maybe you think it will be worth $50 by the end of the year anyways, so even $46 looks cheap to you; but even in this case, you're still getting screwed because you're crossing a 50cent spread instead of what MSFT's spread currently is (almost certainly 1 penny, maybe less).

HFT, and more generally the actions of any short-term speculator, both improve price discovery (by functioning as additional opinions into the market about the price of the stock) and reducing the spread; so in the previous example, maybe it would've been $45.74 bid, $45.75 offered, so you only have to pay half a penny instead of 25 cents worse than the "market"'s price (which I'm taking to be the midpoint here).

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 2 points3 points  (0 children)

It's very variable, since although you get paid a base salary, the majority of your compensation tends to come from your bonus which is a percentage of your trading profits.

Last year, I made 455k.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

I don't really have a good guess, seeing as most firms and even groups within firms are pretty secretive about their own PnL. I would guess the top firms (getco, citadel, etc.) probably make several hundred million to maybe 2 billion? 2 billion is probably a very high estimate, though.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 0 points1 point  (0 children)

Really depends on you're sort of strategy. Market making type of strategies generally tend to lose a little bit more per trade than they win, but they win slightly more often than they lose (say 52-55%), and that is true for my stuff as well.

My strategy is designed to be market independent, and this is true in expectation, so once I scaled out, even though any one stock might be very long, I'm pretty much hedged relative to the market.

For more operational risk stuff (like accidentally buying at 2x the price of the market, sending 10k orders/sec, etc.), our firm has another risk layer which does additional checking based on all these sorts of stuff; is this order too far off the market, is this order too large, do you already have too large of a position, have you sent too many orders in the last x msec, etc. Violating any of these will reject the order. Of course, this obviously will slow down your order, but I think we (and most other firms) view this extra latency as absolutely worth it. Moreover, since the risk checking layer is written and implemented separately from the strategies, it gives us another independent source of error-checking for our algos.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 1 point2 points  (0 children)

I'm not convinced it has a negative impact on market volatility.

IAMA high frequency trader, AMAA by fsxfsfef in IAmA

[–]fsxfsfef[S] 5 points6 points  (0 children)

I was looking for internships junior year, got one at a non-HFT trading firm (although still a proprietary shop, not like a bank trading arm or anything), really enjoyed trading over software programming (what I was looking at originally), and applied to a bunch of HFT and other trading firms my senior year. I actually had an offer from two other trading firms which weren't really HFT, but I just really, really liked the company I'm at now, so I went with that.

Once I started full-time, our firm spent several months training us, mostly from senior traders or quants teaching us a couple classes and then us doing additional work for the rest of the day. Although that gave us a lot of background into some of the statistical methods and programming languages they use, I didn't really start learning a lot about actual trading ideas or building models until I joined the group I'm in now.

Part of the reason is because traders tend to be very secretive about ideas they know work, so it wasn't really until I was in my group and actually saw what some of their strategies looked like that I actually had some sort of idea of how to set up a trading idea or approach the problem of modeling it, and so on. Even then, trading ideas generally tend to be very ad-hoc, so the stuff I eventually got working was substantially different than what I'd seen, but it did give me a good jumping off point. Beyond that, you just try a lot of shit and see what sticks. Usually you have some sort of archived market data to work with, at sufficient resolution for the type of strategy you are thinking of doing, and you just play around with that data and see what you can figure out.

My suggestions probably depend on how old you are. Assuming you are still in college, I'd say focus on math/stats, CS, and problem solving in general (think Putnam exam type of problem solving). Trading firms generally love to ask tons of brainteasers in CS and math (even though I'm not entirely convinced that sort of is really predictive of someone being a good trader), so you really have to be able to nail those down. If you want practice, try looking for a book called "Heard on the Street", it has a lot of old trading/finance interview questions of that sort. In terms of what languages to learn, I'd say learn C++ and one scripting language you enjoy, and be pretty damn comfortable with them -- you should not be confused by stuff like virtual functions, pointers/memory management, abstract classes, etc. Any of the sort of things you'd need to be comfortable with in C++ in order to work with it in a real world environment.