Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Businesses Programming The Almighty Buck

How and Why Wall Street Programmers Earn Top Salaries 791

msmoriarty writes "Given the level of interest in the recent highest-paid programmers discussion, our reporter decided to do a follow-up looking into the languages and skills needed to work on high-frequency trading systems. There's actually a pretty wide range of languages/tools used, but Linux is the 'default' OS and, not surprisingly, the 'ability to work under pressure when the traders are screaming at you' is a must-have skill."
This discussion has been archived. No new comments can be posted.

How and Why Wall Street Programmers Earn Top Salaries

Comments Filter:
  • by Anonymous Coward on Sunday July 31, 2011 @12:14AM (#36936948)

    $500,000 divide by 52 weeks = $9,615 / week
    $9,615 divide by 100 hours = $96.15

  • by decora ( 1710862 ) on Sunday July 31, 2011 @12:32AM (#36937036) Journal

    there is a great book that just came out, The Asylum, by Leah McGrath Goodman , which explains how the potato market became a cluster fuck of manipulation and greedy assholes absolutely stealing from the ordinary person.

    it also explains why certain industries were banned from trading this shit. why? because you cant operate a society where the price of basic commodities fluctuates by several hundred percent a year just so that a handful of a few dozen traders can make massive amounts of money through manipulating the market.

  • by pyite ( 140350 ) on Sunday July 31, 2011 @12:40AM (#36937066)

    there is absolutely nothing, whatsoever, 'valuable' behind a credit default swap. it is a bet. that is a fact, and its not rocket science, and its not a conspiracy theory, and its not "the ignorant and alarmist" decrying some nefarious boogey man.

    You're completely wrong. If you buy a bond from company X, it certainly makes sense to have insurance that if company X goes out of business, you still get your money. And hence, the credit default swap was born. The fact that someone may use the instrument to speculate is a separate issue.

    People speculate on everything. It's what you do when you stock up on cans of soup when it's on sale. You speculate that the price is going to go up next week.

  • by Anonymous Coward on Sunday July 31, 2011 @02:05AM (#36937292)

    Not HFT here, but I'm a finance quant. Testing is a critical part of banks' infrastructure--for the obvious reasons but also regulatory reasons. For example you'll find derivative pricing models subject to high levels of scrutiny. The standards may be lower at hedge funds and other unregulated (in the legal sense) entities.

    But you have to be able to fix stuff in the middle of the day. Sometimes things break, or market are going crazy, or maybe the trade you thought you booked wasn't the actual trade you signed. And you need to push out a fix ASAP because you might be losing money, or otherwise causing huge amounts of risk.

    Quants are hired to be able to do this kind of coding AND NOT SCREW UP. A lot of the work we do (not all, but a lot) could be done by Joe Programmer if it weren't for the requirement that you can't screw up. Trading is a dangerous occupation and that's why they try to hire the best people.

  • by hsk17 ( 1156449 ) on Sunday July 31, 2011 @03:19AM (#36937562)
    Disclaimer: I work at an HFT firm.

    The implied accusations are flying out of the page like daggers. I wish you, Slashdot readers, could see the world through my eyes. As techno-savvy as you are, you somehow love to hate on HFT without having any idea what it is. Don't get me wrong -- I really don't care if you hate it. What bothers me is that haters have NO IDEA what HFT is doing and basically project their hatred for finance onto it.

    I have to say, this article is pretty level-headed. I was expecting more baseless accusations. Of course, the article throws around the typical "HFT was blamed for the huge drop in the stock market in May 2010..." If you cared to look at the linked WSJ article, you would have read that Waddell's desk had sold 75,000 E-mini contracts at the start of the flash crash. If you cared to look at the CFTC report that officially investigated the flash crash on May 6th, you would have read that CFTC blames the flash crash on some trader who executed a large sell order worth $4.1 billion dollars -- why, isn't that just about 75,000 E-minis?

    You would have also read that HFT firms actually mitigated Waddell's mistake. They were there to absorb the thousands of E-minis and so dramatically lessened the initial impact. It's really quite admirable the amount of precision coders needed to invoke in order to create a system that executes so quickly and at scale during such a turbulent period. I was hoping that the discourse here would be more along those lines.

    Unfortunately, the amount of volume that Waddell executed was too much risk for the traders to bear, so they started getting out of their positions. In fact, no one could handle a trade of such size. It was as if someone predicted the collapse of the US economy and bet $4.1 billion on it. The ensuing chaos was purely the after-effects of the initial destruction caused by Waddell.

    New technologies can be used for bad. I bet there's plenty of bad traders manipulating the markets and using speed as an unfair advantage. We need to police HFT, for sure. But I'm also sure that people are using guns to kill other people out of malice, using cars to traffick illegal drugs, and using airplanes to destroy buildings. HFT is a style of trading. It's a technique, not a strategy. The sooner we realize this, the more progress we will make as a society in implementing policies and regulations.

    You guys all hate on HFT, but you are really the ones benefitting from this technology. In market making there's a spread -- the difference between the lowest ask price and the highest bid price. Take a look at the most liquid stocks. They are probably trading at 1 cent wide spreads. Compare that to years ago when spreads used to be dollars. Go to a bank and look at the currency exchange rates. I just did a look into Bank of America's spreads. 100 euros gets you 135.35 dollars. Based on recent trading prices on the public exchanges, 100 euros should be able to fetch closer to 143.62 dollars. BoA is charging a spread that is more that 5% of the value of the product! I don't blame them -- the landscape in the currency markets discourages technological innovation and competition.

    This phenomenon isn't true just for currencies. It's true for most products that are not regulated or traded publicly. You, the average investor, are being ripped off dearly investing into these opaque markets. The size of spreads is truly a symbol of capitalism. If there's competition, the spreads are tight. If there's monopoly, the spreads are wide.

    You complain about HFT being super fast and "shaving off transactions" as if we somehow have access to your accounts and embezzle money a la Office Space. That's like complaining about WalMart having such efficient systems and internal logistics that your cereal is getting too cheap. Yes, I do believe that some traders use speed unfairly, and yes, WalMart probably did shady things we don't know about, but my point is that not every trader is bad. Technology
  • by TheRaven64 ( 641858 ) on Sunday July 31, 2011 @01:07PM (#36939916) Journal

    Anyone with a CS degree from somewhere other than the back of a cornflakes box will have seen the algorithm for decomposing multiplication into shifts and adds. They will typically also have studied the idea of pipelining, and will see that the proposed 'optimisation' will require multiple trips through the pipeline, so they'll be able to explain why it's a bad idea. They will probably also know that instruction cache misses are one of the biggest performance killers in code for systems with a typical memory hierarchy, and so bloating the code from one instruction up to 3 is not such a great idea.

    Those who have studied compilers (sadly, not all of them - well, not too sadly, since it means there's a skill shortage in that field, which is great for me) will also know that compilers for modern pipelined architectures will actually do the opposite transform, and turn this 'optimised' version into the original, with a single multiply.

    The ones who have done an advanced architecture module will also be able to tell you that ARM is the one exception to this, where the fact that you get the shift for free and the latency for add is shorter than for multiply means that this may be marginally faster.

    The ones that did any kind of software engineering module (a requirement for accreditation in the UK, not sure about the USA) will know that obfuscating your code for a marginal performance gain based on probably-obsolete assumptions about the underlying architecture is a really good way of writing unmaintainable code that runs slowly and ends up being thrown away and completely rewritten.

Money is better than poverty, if only for financial reasons.