I worked for a time in finance and investment banking. Problem-wise it can be pretty interesting but it's important to distinguish between two classes of developers. 1. Traders; and 2. Non-traders. Engineers who are traders are typically called "quants" (quantitative traders) as they write software that employs trading strategies to make money, as one or more of spread trading (trading between the bid-ask spread), pr…
> You want to buy a house? Well the only reason you can get a loan is that investor (and/or depositor) funds are matched to you. Is there any reason why this should be enabled, and profited from, by a select few commercial IBs who are "in the know", as opposed to a government entity which reinvests the profits into, say, a low-income housing fund or social security?
I am an HFT Programmer
191–200 of 246 posts
Re: I am an HFT Programmer
#192Not looking for money, it just seems like it'd be interesting to explore.
Re: I am an HFT Programmer
#193Earlier quoted context omitted.
So true. Finance attracts the most incompetent egomaniacs possible. I love getting lectures about how to design software from someone who has written: if x == 0: return "Monday"; elif x == 1: return "Tuesday"; ... This should be a criminal offense.
Honest question. What is wrong with something like that? I could see it justified by saving the overhead of a complex Date class.
2. Cherry-picked example factor. Hardcoding date strings is doubly bad, as they are usually provided by any modern system. Good libraries will also provide abbreviations (Monday = Mon = M), different calendar systems, etc. this problem is nearly as old as computing and elegantly solved many times over. Anyone who does not realise this is simply not experienced. Any team that allows such code past reviews and/or group reading is incompetent.
Re: I am an HFT Programmer
#194I worked for a time in finance and investment banking. Problem-wise it can be pretty interesting but it's important to distinguish between two classes of developers. 1. Traders; and 2. Non-traders. Engineers who are traders are typically called "quants" (quantitative traders) as they write software that employs trading strategies to make money, as one or more of spread trading (trading between the bid-ask spread), pr…
I've never bought the liquidity argument. Ordinary investors don't need to buy and sell at any time. They'd be happy buying and selling once a day (as with mutual funds). What if the market consisted of a deep daily or hourly auction with lots of buyers and sellers matched up to discover a fair price? How is the current system better than that?
Re: I am an HFT Programmer
#195Earlier quoted context omitted.
Spot on! I was on the verge of writing almost the same reply only to find yours. Let's crunch the numbers: 52 weeks/year - 4 weeks for vacation = 48 weeks $500,000 / 48 weeks = $10,417 / week $10,417 / 1 week * 1 week/ 100 hours = $104.17/hr As a freelance developer, in the US, and particularly in this startup economy (bubble?), it is entirely possible to earn 500k/year working 100 hours/week. Most modest freelancers…
I recently quoted $100/h for a side job I am doing for somebody. Though, we decided on a second option where I'm working for less, but get to GPL the deliverable code when I'm done.
Re: I am an HFT Programmer
#196I worked for a time in finance and investment banking. Problem-wise it can be pretty interesting but it's important to distinguish between two classes of developers. 1. Traders; and 2. Non-traders. Engineers who are traders are typically called "quants" (quantitative traders) as they write software that employs trading strategies to make money, as one or more of spread trading (trading between the bid-ask spread), pr…
"The only way for an engineer to make real money is to be a quant, found a startup or join an early stage startup." This statement should be included in every CS curriculum.
Except it isn't true (depending on your definition of "real money").
It's not especially hard to make high 6 figures (and even low 7 figures) as a consultant, if you specialize and sell yourself well.
This may be low by the standards of the $20M year Quant, but the risks are much lower too.
Most engineers who join an early stage startup won't make "real money" by those standards, either. Sure, some will make $20M when the company is sold, a few will make a lot more, and a larger number will make a substantial (5 figure) bonus when the company is sold, but many will get nothing.
Advice like this needs to be tailored to the individual. Deep algorithm expert with limited social skills? Then either quant or work for a startup. A mediocre programmer with some good ideas and good sales ability? Do a startup. Good technical ability and know how to talk to business users in their language? Consulting... etc etc...
Re: I am an HFT Programmer
#197Earlier quoted context omitted.
When 2/3 of your packets are travelling from one server to another inside the data center, you're not "providing information to consumers" in a way that's meaningful or useful to anyone. See the fallacy here? Also, HFT's are present only in very small numbers (relative to the size of the financial industry in general).
If those extra packets could suddenly and uncontrollably leak out on the Internet and destroy everything, requiring a trillion dollar government bailout to fix it and ten years to restore confidence in the infrastructure, yes I would be pissed and doubly so that this inadequate analogy was used to defend it.
Re: I am an HFT Programmer
#198Earlier quoted context omitted.
Had an uncle in the industry (with wall street experience who was (re)starting an algorithmic shop for the first time in the late 90s). Sometimes I think I would've saved more time if I had stayed in the Bay Area and not gone into HFT (in Chicago), but I definitely appreciate the rigorousness of some of the mentors I had there. I didn't go right into writing backend matching engines for HFT though. Took time. Maybe n…
What kind of tools did you use? Was it all custom or some kind of system you tied in?
I've been at firms that are all Java and use command-line terminals for most of the trading feedback (while having other clients to view the market depth). I've been at firms that are all C++ and C, and have their own trading GUIs.
Generally speaking though performance is key and at some point one ends up just rewriting things in-house (and tying into the exchanges or markets directly).
But there are a lot of different types of trades, etc. A lot of different ways to go, some of which (as zedshaw was mentioning) might involve Visual Basic.
But yeah, most of my experience was with C + a very limited subset of C++ on Linux. I still probably can't say too much more than that (though it's been two-three years, etc., since I was active with it).
I can probably say though that the fun for me was rewriting the backend services and trying to make them as fast (and as stable and redundant) as possible. A lot of it is translation of different market sources, etc. I experimented with a lot of languages at the time (Haskell, OCAML, etc., a la Jane Street), but at the end of the day did most of our stuff in C on Linux (i.e., with vim and makefiles).
If I'd make one bit more of advice (and I advised/mentored maybe two or three younger developers while in Chicago -- so I'm no expert) -- but it would be that if you have the interest, a lot of this stuff gets really easy with time. I suppose that's like most fields. But yeah, the productivity I had when I started, and when I left, was very, very different. And part of that had to do with writing everything 'bespoke' / custom, when there was time. Anyway, I go on...
Re: I am an HFT Programmer
#199I used to work in HFT. From about 1999 (right out of high school) until 2008. In response to the OP, zedshaw and a couple of others (who make good points), I'd say: * obviously if you're good at your job in HFT after a while you don't have to work 100 hour weeks. People wait for you. There are levels of support. You still get woken up once in a while, but not if the firm is well structured and the support training /…
I'm sorry if you answered this elsewhere, but why did you stop working in HFT?
Re: I am an HFT Programmer
#200Earlier quoted context omitted.
Agreed, however, the shelf life of a programmer is very short compared to other career paths. It all depends on your industry, of course, but once you hit 40-50, you're competing with younger developers who have more energy and require far less compensation. Hence the need to make "real money" before you hit the age ceiling.
I'm not sure I agree with that. And I say that as someone in my late 30s. Granted life is pretty good now if you're a recent graduate of a good school. You almost have your pick of jobs. But when was that not the case? It's true that you tend to have less commitments in your 20s. You should take advantage of that. Most people in their 20s still spend their money on crap however (cars, ski trips, eating/drinking out,…