Wall Street and the Mismanagement of Software
CowboyRobot writes "Last week, a bug in high-frequency trading software from Knight Capital Group resulted in erroneous trades costing almost a half-billion dollars. So, what went wrong and how can they, or any other software developer, prevent something similar from happening again? In hindsight, it's clear that the developers did not verify the code under enough conditions. But the real issue is how these high-frequency trades work in the first place. Robert Dewar at Dr. Dobb's suggests the financial industry needs to take a page from the avionics rulebook, which has very strict guidelines about what code can be implemented due to the high cost of failure in that field. 'High-frequency automated trading is not avionics flight control, but the aviation industry has demonstrated that safe, reliable real-time software is possible, practical, and necessary. It requires appropriate development technology and processes as well as a culture that thinks in terms of safety (or reliability) first. That is the real lesson to be learned from last week's incident. It doesn't come for free, but it certainly costs less than $440M.'"
Back in the late 90s when I was system admin for a trading company, they recruited me from a place that did 911 computer aided dispatch software. My shop, at least, recognized that some of the same reliability issues were at stake, so some people get it.
First 100 trades in a day: free
Next 1000, taxed at 0.02%
Next 1000, taxed at 0.1%
And so on.
This would do wonders for the problem.
Reports have it that rather than releasing a buggy system, the problem was caused by running the test harness in a production environment. More here:
http://www.theregister.co.uk/2012/08/08/knight_capital_analysis/
http://www.nanex.net/aqck2/3525.html
http://www.zerohedge.com/news/what-happens-when-hft-algo-goes-totally-berserk-and-serves-knight-capital-bill
So, sue the developer for the cost he caused.
That should teach him a lesson. ;)
It wasn't HFT software, it was regular trading software. The developers created a build of the software that included a module that generated lots of silly trades as test data. The software was hooked up to the exchange as a live test to ensure it would talk to the exchange correctly. Unfortunately, they used the software build that included the test trade generator, and those test trades started executing for real.
It wasn't actually a bug; everything worked perfectly. It was more of a configuration management problem.
The only relevance it has to HFT is that if the NYSE limited the rate of trades then a lot less money would have been lost.
Every time I have been involved with re-vamping some site or application that involved the handling of money, we would always shadow the existing system for an undefined period of time to make sure that things were working properly. Can't the trading world implement something similar to real-world test the software without actually launching it live? I always found this invaluable, and a huge stress-reliever.
It's already such a waste that so much talent is getting thrown at problems that seek to make money while producing absolutely nothing. HFT is cleverly sanding in the middle of a river in an eddy and dipping your hand in to tap power without getting pushed downstream. What does Wall Street actually produce? What is their product? Why should we care that they periodically lose their minds and shirts? If anything HFT should be taxed into oblivion so that excellent minds aren't recruited to deliver nothing of social value.
"There are some people that if they don't know, you can't tell them." ~ Louis Armstrong
Want to stem the flood of HFT software into the Wall Street environment? Pass a law that requires any such software to be written in Ada. Think that one through...
All the world's an analog stage, and digital circuits play only bit parts.
High frequency trading programmers can't just talk to the government to try to convince them to give a bigger budget for safety. HFT programmers work under time pressure unlike anything in Avionics, because it doesn't just have to be ready by a certain fixed date, millions in profits may be gained for every day you can shave off development time.
It's interesting, from a programming technical point of view, that functional languages like Haskell and OCaml are used in this domain. They don't offer the correctness guarantees of formal methods-style stuff like Misra C and SPARK Ada, but they have another approach to correctness, and probably much better development times.
From a social point of view, of course, I'm pretty worried about HFT.
xkcd is not in the sudoers file. This incident will be reported.
Maybe it should serve as a warning to executives to not release buggy software. I know a lot of shops that push things out the door before they're fully baked.
In terms of the stock market, I don't see a problem. The long-term market wasn't affected, no value was created or destroyed, and those who played the game improperly lost out big time. Short term trades on the exchange are gambling. Anyone who tells you otherwise just wants your money. Don't forget, there's always a buyer *and* a seller. Just because Knight lost $450m doesn't mean other people didn't gain $450m.
maybe some like FAA code reviews there they just don't let any piece of code go in to a autopilot system.
The SEC usually gives them a mulligan when a software boo-boo costs a big institution a lot of money. I never get a do-over when I make a bad trade though...
Blair K., Certified Master of the Scrum, responded: "Well, that doesn't sound like a very agile process to me! "Certified" and "compliant with a standard" sound pretty waterfallish. Why not just have a 15-minute standup and decide to launch the plane? At last the aerospace industry could deliver aircraft on time and under budget."
Customer wants their plane painted hot pink? We can totes do that, bros! Shouldn't take more than 24 hours to get to Home Depot and get a few cans of spraypaint. Delivered! And if bits of paint peel off at altitude and get sucked into the engine, gluing themselves to the turbine blades until catastrophic failure of an engine, well, we can just patch the paint recipe in the next sprint! Paint that's "hot pink" is part of this sprint. The user story about engines that don't fail is part of the next sprint.
The real problem with aircraft design is that all our little user stories are in a big clunky database. If we printed out the database's contents (by hand!) on little 3x5 index cards, then we'd be using the best practices of both Scrum and Kanban. Our planes would be so damn agile they'd have turning radii measured in inches.
When a senior engineer piped up that an aircraft with a turning radius measured in inches would kill everyone on board due to G-forces measured in the thousands of Gs, and would likely tear itself apart because the centripetal force far exceeds the tensile modulus of steel, titanium, carbon fiber, or anything else available, he was terminated because "switching from traditional tube-construction to blended-wing-body design made of unobtanium" was part of the next epic.
What they really mean is they were too lazy to write "catch code." They spend all that time making it hyperintelligent then lazy out and don't write any checks and stops and tests into it. Just a tiny bit of heuristics would have detected that as a trade that maaaaybe might need a human to review for a second first. Even every version of Halo is the same way. Yes, is "shouldn't" happen but put in a check in the movement engine to see if the player is currently moving faster than running or falling should allow. Tada, no "superbounce" glitch. For MW3, if someone gets a score of 15 kills and 0 deaths with 100% accuracy, MAYBE they might be cheating and should be booted from the game. A little AI goes a long way, people. But nope, programmers are just too lazy. Once the product is "done," they're out of there!
why would they invest in robust software? It doesn't make the chance to win much higher, it would only make the chance to lose lower.
And, as we have seen over and over and over again, on wall street, profits from wins go to you, but damages for losses goes to everybody else.
When HFT "works," the trading company makes tons of money. When a "bug" hits -- and said bug causes a loss, rather than an unintended gain --, the trading company writes it off its taxes or gets TARP-III to cover. Why worry about bugs? Or, more accurately, it's like being chased by a bear. You only need to run faster than the other guy. Fewer bugs in your HFT code than Other_Big_Trading_Co and you're ahead of the game.
https://app.box.com/WitthoftResume Code: https://github.com/cellocgw
Exactly. It's not as if anyone died. A company pushed software to production, it was buggy, and they lost $BIGNUM. Shit happens, move on. This is exactly the microsecond-latency Darwinian survival game that Knight and others helped to create; I don't see why I should shed a tear when it bites them in the ass.
The aviation industry is driven by two things: regulations and fear of being sued. It will naturally support safety and the way they do software is the result of that.
The financial industry, on the other hand, is driven mostly by greed. Never mind tweeking the software, the whole industry needs to go back to the kind of regulatory environment we had before Regan. Finance should be a lot more like plumbing and a lot less like the wild wild west.
If we try to regulate the financial industry's software, they will, guaranteed, find a way to circumvent those efforts.
It should be called high frequency gambling and taxed as such. It has nothing to do with the (perceived) value but only with a gamble on what the sentiment and competing algorithms will produce as the next stock or derivative price.
Any derivative trade and any stock trade that is done within 28 days of purchase should be taxed as gambling. It's nothing more or less than that so it's fair if these big online casino's get their profits taxed so the rest of us can profit too.
I was promised a flying car. Where is my flying car?
This isn't the equivalent of $500m of infrastructure burning down. The money was lost by some investors, but gained by other investors.
The state of the economy confirms that trickle-down is failing us: if so-called "wealth creators" give up or leave then it doesn't matter as they're doing us no good anyway and can just be replaced by people more interested in society than a few extra dollras.
In theory, what Wall St is supposed to produce is investment directed at useful activity - for instance, if making solar panels is useful, and making fake cold fusion devices is not, Wall St is supposed to ensure that the solar panel company gets investment capital to make more solar panels while the cold fusion company does not.
In practice, this doesn't happen as well as it should because many investors are stupid and believe the hype (e.g. Facebook IPO), and even more try to profit off of other people believing the hype by successfully selling securities for more than they're worth.
I am officially gone from
"Anyway, no drug, not even alcohol, causes the fundamental ills of society. If we're looking for the source of our troubles, we shouldn't test people for drugs, we should test them for stupidity, ignorance, greed and love of power." -- P. J. O'Rourke
"Can there be a Klein bottle that is an efficient and effective beer pitcher?"
In Theroy we could dump Wall Street and banks all along. However, they control also the flow of money between people and companies so they can organize their businesses and private live (people only). If you can provide credits and bank accounts for those two gorups, you could dump the money trinkering device called Wall Street without any trouble.
Cost the company half a bil, the rest of the market says Thanks :)
High frequency trading is ethically wrong and high risk so this sort of shit should just be accepted as collateral from the investors. Instead they sue the shit out of each other. Unfortunately, it's survival of the fittest and richest asshole with the best lawyers at the end of the day.
As for bugs, they happen. HFT/algothmic trading is based on constant optimisation hacks which are rarely tested properly. There are no test. A model is provided, someone codes it and they throw it out. This can take a matter of minutes to hours. Don't expect it to work every time.
If you piss around with funds via HFT, expect to get burned.
(I used to work in HFT - it's a scam).
It's just the "law of the great numbers fallacy" in disguise. Yes, long term the coin will flip to each side with about the same rate. But for the next coin flip, it's 50%, whatever the current rates are. Each coin flip is completely independent from all the coin flips that happened in the past.
Yes, long term, Wall Street will funnel investments to the right companies, and if you calculate an average over all trades you will find that with 99.% certainity it works. But the next trade is more or less random chance, and with random chance, it will produce a negative outcome. That means each trade can be bad, and just because you had a long sequence of bad trades, it doesn't mean the next one will not be bad too.
I don't think the problem was a software bug at all, or that they deployed without enough testing. Another article mentioned they deployed their test system with the production software. I think this was probably a packaging issue. Or even a network issue, where they plugged their test system in to the live network accidentally. It's entirely possible the problem is too much software testing.
The original article is well written guess work. This is much closer to the likely explanation:
http://www.nanex.net/aqck2/3525.html
The software was not buggy - the deployment was buggy as it contained a test component that was not meant to be on in production.
Knight is not a HFT or day trader, they are a bonefide liquidity and service provider. They make money by providing a service and getting people cheaper trades
Under normal circumstances you can build a test-suite that will present the software with a large number of scenario's and see if it still gives the 'correct' answer after a code update. However, here the 'correct' answer is not really clear. You are trying to test the results in a highly chaotic system of which you do even understand the mechanics, cannot simulate correctly and cannot measure. On top of that, your software is going to actively influence the dynamics of the very system you are working in, making things even more difficult. Impossible to test anything but some basic stuff really...
You could create software monitoring the actions of the trading software to some extend however. This is probably the only way to go...
It makes no sense for everyone to be so concerned about the survival of companies like Knight -- especially people opposed to algorithmic trading in the first place. Just let firms like Knight blow up! Their loss is others' gain, after all.
There was half an hour of wacky behavior in certain stock prices during Knight's whole blowup process, but that affected essentially zero long-term investors. Long-term investors don't need protection from this sort of incident.
Now, a flash crash is a bigger deal since it is more of a market-wide disruption. I still believe that long-term investors have little to worry about in one since the essential characteristic of such an incident is that it is over quickly (certainly none of my personal investments were ultimately affected by the flash crash). But, to the extent it is worth regulating to prevent another flash crash, I think software verification would be an overcomplicated and ineffective means of achieving that goal.
I'll also state that long-term investors have little to worry about from high-frequency traders. The whole point of HF firms is that they make a few pennies per trade. That's far less than the brokerage fees paid by long-term investors, so why complain about the profits made by HF firms rather than by the grasping brokers?
The really troubling thing (to my mind) is not so much the 'what does Wall St. produce?' question(which, as you note, is ostensibly 'capital allocation'; but the 'how efficiently do they actually produce it?' question.
In a non-pathological market situation, you would hope to see Wall St.'s share of the economy as a whole be static or declining(as newer technology makes allocating capital easier and less expensive) and the demand for 'capital allocation' exist only so far as other business sectors find that more efficient capital allocation makes them more efficient and productive(in the same way that you would want to see any other support function of a business kept in line with the business overall. You wouldn't want your IT group consuming a greater percentage of your total economic output every year). Trouble is, that isn't what the numbers reflect.
Instead of acting as other suppliers do, and having their health and size depend on the success of the customers, the financial services sector has managed to capture a steadily increasing share of the value relative to other sectors. Absolute growth would be one thing, if the economy as a whole is growing; but relative growth, in terms of percentage of total output captured, suggests a substantial increase in the market(and regulatory) power of financial services without necessarily any increase in the value of their product to their customers. That is bad.
Avionics and trading systems differ in a fundamental way.
Once the plane leaves the ground (or even reaches significant speed on the runway) any malfunction becomes catastrophic. And it becomes catastrophic to third party participants. This warrants the extreme measures taken to vet avionics S/W, H/W, pilots, manufacturing, maintenance and so on.
Financial systems have no such characteristic. A problem can result in losses that can run up to catastrophic levels only if allowed to run unchecked. And the losses accrue to the organization operating the S/W. Third parties are harmed only to the extent that they trusted the trading organization. In this case it was not the bug that resulted in $440M loss but rather the lack of oversight that would have shut it down before the loss grew so large. Had someone been watching, it would have been obvious that there was a problem within seconds of the open and the system could have been shut down and rolled back.
Anyone suggesting that the S/W should have more checks built into it to prevent this problem has a shallow understanding of the domain. In order to maximize profits the trading system must be the first to respond when an order or bid is received. Developers routinely examine the source code for system calls to determine which ones will execute the quickest in order to minimize latency in the system. The systems also reside in closets in the same building that houses the exchange to reduce network latency. They are not going to add additional code to provide sanity checks. And in any case, it is unlikely that sanity checks can be guaranteed to catch all problems so there will always exist the need to monitor system behavior.
Another facet is 'time to market' for the trading S/W. Having the "next great algorithm" ready in days vs. weeks or months may mean the difference between making money or not.
This approach entails risks that the business people are aware of and willing to take based on the potential reward. It boggles my mind that the business interests at Knight did not address these risks by putting into place effective monitoring that would have prevented this catastrophe.
It really has little to do with S/W development and all to do with addressing and managing business risk.
Sorry but this whole idea doesn't 'fly'. Avionics are *NOT* the type of cutting edge technology used in stock market matching engines or HFT engines. Avionics are designed to be utter reliable to such a degree that they wind up using older tech. The deployment and approval cycle is also long enough that 'new' for a plane is probably years out of date.
HFTs on the other hand, are bleeding edge systems with essentially a cost-is-no-factor approach. You're talking about a world where microseconds are very litterally counted. 10G and higher network connections - not for data throughput but because it lowers latency but a small but appreciable amount. No, they obviously don't want the FUBAR situaion Knight had because of pushing tech but to assume the stock market is using tech with any resemblance to what's in the DreamLiner shows a lack of understanding of both worlds.
Let's use a car analogy! Sure you can make a race car utterly reliable and safe - it's called a Volvo.* It will undoubtely get you to the finish line for race after race after race with no maintenance while the cars meant for the race break down, crash, need maintenance and so on. Just like race car accidents, you don't usually hear about trading mistakes unless they're spectacular.
*substitute your own preferred car mfg
You can get rich if you own a politician, but you have to be rich to buy one in the first place.
Assess actual damages to other investors on the exchange caused by high frequency trader actions to the high frequency traders that caused the meltdown. Since nobody can absorb a loss of that size without being destroyed, traders will exercise reasonable caution or other investors will wind up owning all of their assets.
http://en.wikipedia.org/wiki/Ariane_5_Flight_501. The "bug" was mis-calibration.
Stop bailing these bastards out every time they screw up.
hey, we should all rejoice - Knight lost a bunch of money which means someone else made that much money. Financial markets are a zero sum game so for each dollar lost by Knight, someone else (let's hope it was Joe the Plumber ;) ) made a dollar.
The purpose of avionics is to get a plane from one point to another without incident.
The purpose of automated stock trading software is to make as much money as possible while screwing the other guy if you get the opportunity.
You'll never make automated stock software 'safe'. Its purpose is inherently risky and combative. You're not up against the laws of physics and the occasional thunderstorm; you're up against other people who have similar software and an urge to hurt you. This is Wall Street PvP (that's Prick-versus-Prick). It's unsafe by its nature.
You cannot make competitions entirely 'safe'. What you can do is pen them in so that they do not hurt bystanders. Just like putting crash walls around a NASCAR track, we need to put up regulations around Wall Street so their blood combat does not spill out and harm the larger economy. Re-implementing Glass-Steagall is the least that we can do to keep Wall Street's fiery crashes from hurting the common people. There are probably more reforms we could make to wall them off properly.
Genocide Man -- Life is funny. Death is funnier. Mass murder can be hilarious.
This is just a symptom of the problem. It is time to place a minimum holding period of 3 months or more on all stocks and derivatives to channel people's time and resources back into production that has social value.
So, what went wrong and how can they, or any other software developer, prevent something similar from happening again?
There one sure fire way of preventing this from happening again, and it is a quite obvious one too. Stop.
Disclaimer- I haven't actually worked with algorithmic trading systems, but I do work in a bank and I read job descriptions, heard rumors, etc.
As far as I know, some algo systems have releases during the day. If a trader notices some opportunity, he might want system modified to exploit that opportunity, and changes to be released & deployed on same day before trading closes. If that is true, for developers working under these conditions it must be the most stressful position I could imagine. Although as far as I know these developers are paid very very well. But even with plentiful resources at your disposal, there is only so much testing you can do over several hours. So I do believe mistakes will slip by and cause losses.
I guess this is a matter of strategy and priorities. You might have (relatively) slow well tested releases that don't lose you 450 million, but you will miss on some opportunities to make money as well. Or you go with very flexible and less well tested the bleeding edge systems, potentially make more money, but risk losing big like this time. Knowing appetites for risk in finance industry, they are probably going with 2nd approach...
Although the root cause was with software -- be it due to errant inclusion of test code, an actual bug, misconfiguration, etc. -- this is fundamentally an operations issue.
When you are losing ONE MILLION DOLLARS every MINUTE, somebody better wake up, kill the programs, unplug the network ports, call the exchange, and so on.
The most perfect of development processes, static verification, rigorous testing, inclusion of safety checks and "fail-soft" won't help you if your organization lacks the structure to properly deal with an operational crisis. They would have been better served understanding how Curiousity's Mission Control works, rather than studying their developers.
I'm a Dev in the Finance Industry (NYC). I don't do HFT, but I can speak to this issue of buggy software and releases.
In a nutshell, code releases are driven by the trading desk.
Consider this: You have a desk, say five people. These five people can be (depending on which desk) responsible for making ginormous amounts of money for the firm (I supported one desk that made ~$50 million a day). Our job (the Devs) is to facilitate these five people's trading, mostly by adding new features that the traders demand. There's no spec, no design meetings, no QA, no nothing. If the firm thinks that the desk can make an extra million a week if you add some new bell or whistle, and if you don't deliver, you are out. I can tell you stories of weekly server releases (hence the 60-70 hour weeks we had to work), Dev leadership trying to get the desk to let us spend some time refactoring (resulting in blank, angry stares), and team-mates who tried (and failed) to stand up to the system. I remember being at one of the big banks when one guy said we shouldn't release that week... he didn't last long at all.
I'm not making excuses here, but I thought I'd share my experiences from the inside.
The software was told to buy stock, and buy stock it did. The problem is not in the software per se, it's in failing to recognize an anomalous situation and continuing blindly on. Those who use the software have to sit down and work out why they would need a program that did what it did, and clearly work out parameters so that the software determine when it needs to switch behavior and go into sleep mode or something. Most biological pathways have some sort of feedback system built in that limits the initial step. It makes no sense to have a program that empties your company's wallet - no, almost its entire net worth - in under 2 hours. There is no situation in the world where this can be advantageous or justified. Sometimes missing out on that "opportunity" is much, much better than losing the whole company.
I guess we'll never really know if it was bad design, in that there were no failsafes in the program, or bad management, in that they comparmentalized so much that the guy doing the coding had no idea of the impact his code would have because he was never told how it would be used. Still, you learn very early in trading that some days it's better just to stay in bed. Greed is not always good.
Seven puppies were harmed during the making of this post.
Proof? As far as I know, and I've been following this, Knight hasn't said in more than general terms what went wrong. Anybody in the media is just speculating.
ALL of Management is responsible for the project, from the CEO down to the Team Lead. Its management that is responsible for hiring, firing, budgets, and deadlines.
Either management controlled the project or it was out of control. Not knowing when a half billion dollars is at at stake, or allowing half a billion dollars to be at stake, is clear willful ignorance of the highest degree on managements part. The companies management deserves to have the half billion dollar mistake taken out of managements pay. If I were able to choose, id dock the board of directors 60% of the bill, the tier below them 30%, the tier below them 9% etc. The bottom rung employees should not be touched over this, and, more than likely, the people on bottom rung stated the issues and complained and were ignored.
You are making fairly big claims without even some pretense at proof. Bravo.
I can think of quite a number of distributions and biases which will cause those expected values to heavily sway away from the natural equilibrium. So I do not buy "long term, Wall Street will funnel investments to the right companies". Thanks, but no thanks.
Some guys who don't contibute to the world lost a whole lot of money. Well Boo Hoo for them.
Don't expect me to care that people who were getting something for nothing lost a load of cash.
FTS...
"... very strict guidelines about what code can be implemented due to the high cost of failure..."
It's other people's money, after all. Who gives a shit if we pissed a bunch of it away with one of our toys? It's not like we're writing software that controls airliners or something.
There have been several accidents caused by, or a significant contributing factor, of software glitches. Boeing and Airbus and their systems builders do have tight coding and testing controls for flight critical code, at least partly driven by FAA and EASA requirements. Have there been more critical or expensive failures of financial trading code?
This increase in the relative growth of the financial sector was one of the predictions in Karl Marx's Das Kapital: He saw bond markets and stock markets as the natural and predictable outgrowth of the role of a capitalist, which in his view was somebody who made their living not by producing stuff but by buying the means of production and making other people produce stuff. Bonds in particular simply abstract the concept completely away from any actual work: The capitalist now doesn't even do the buying and managing himself, but buys bonds allowing somebody else to do that work and demands a portion of the proceeds of the firm in return. As the capitalist class gains more and more wealth, the trade in bonds and other financial instruments goes up as a percentage of the economy, while the industrial and agricultural production becomes less important.
(And no, I'm not arguing that workers of the world should unite and revolt, just that Marx was a serious economist who made some good points about how capitalism works.)
I am officially gone from
I think there's an erroneous conclusion: "Perfect" software may in fact cost much more than the $440 Million that was lost.
I've read the cost overruns in Air Traffic Control for the Next Generation system is already at $330 Million. Then we've paid for vaporware such as the FBI's Virtual Case File, weighing in at $170 Million for a product that never reached deployment stage and apparently the FBI is still using their antiquated collection of unrelated tools.
"It requires appropriate development technology and processes as well as a culture that thinks in terms of safety (or reliability) first. That is the real lesson to be learned from last week's incident. It doesn't come for free, but it certainly costs less than $440M."
Prove it. Nothing eats up the millions like the quest for perfection. Even then, sometimes people are lost. (And, unlike the FBI or FAA, who will die if the code is erroneous in the eight or ninth sigma of variance?)
Can anyone point me to something legible on the subject? We'd like to start moving in the direction of provably correct systems and software, but I haven't been able to find much out there on the subject. Agile certainly isn't it, and every time I mention it, I get accused of "trying to go back to the failed software model, waterfall".
NASA does it, the aircraft industry does it - why can't we write systems that are robust? There was a similar article about "1,000 programmers furiously writing commands in 1/2 day to send to the Curiosity Rover", but finding details about how this process is done and managed is about as hard as finding out the truth about a political candidate. Where can one find this sort of stuff?
-- Ed Carp, N7EKG erc@pobox.com PGP KeyID: 0x0BD32C9B What I'm up to: http://intuitives.mine.nu
Mr. Dewar is under the incredibly flawed belief that avionics are bug-free, when in fact this is not even close to true. Airbus planes in particular...commercial passenger planes...have been plagued with many software flaws, including one for their fly-by-wire system that, under certain circumstances, gave feedback to the control stick which was 100% in the wrong direction. So the plane would be going into a dive, and the stick pulled at you like you were climbing instead. (Imagine going into a skid, and having the power steering lie to you about the forces acting on your tires, and you get some sense of just how horribly bad this is.) The flaw almost resulted in more than one crash.
The space shuttle's software was carefully reviewed after the Challenger explosion. Among other things, they noticed that the gravitational effect of the moon was accidentally reversed...the software calculated the moon's effect as being a repulsive force, rather than an attractive one. As one engineer to examine the software in the course of that review put it, "We have been really, really lucky."
If you're looking for an industry that is fanatical about software quality and safety, the financial sector is where to look. What spurred this discussion is the reason why. These systems move bilions or even trillions of dollars a month, and the survival of the entities that run them depend on the software's reliability and availability. I would point out the sudden discussion about just how much high-frequency trading and high-frequency optioning is going on these days...all of which is run by this kind of software. The amounts involved go into the hundreds of billions of dollars, daily, and it's been building for years. That it took this long for this kind of mistake to happen indicates that the financial industry probably has more to teach than to learn when it comes to software quality.
For your security, this post has been encrypted with ROT-13, twice.
All they're doing with HiFreq trading is skimming off top.
And in no way are trades like this investment in companies. That was what these shares were supposed to be, remember?
The aim of the people on Wall Street is to out guess everyone else. If you can't outguess others, you shouldn't be on Wall Street. So what if some billionaires go bankrupt because of buggy software? Buggy software might make the billionaires richer. Let the billionaires continue to use buggy software.
If your business fails hard on the stock market due to a programming glitch, then your investors lose their money as do the people who foolishly lent you money, and the remaining pieces of your business get sold off to the highest bidder.
As to taxing trades, why do it? There's no benefit that government provides per trade. It's just a way to punish active traders for a very deluded reason. No financial crises were caused by the frequency of the trades. There's no demonstrable harm from the activity.
Slashdot is utterly retarded when it comes to financial discussions. Seems like the only point of view represented is that of the occupy crowd and that view has a limited understanding of how the world works.
Facts:
1) Nobody is giving Knight a "do over". They are and were held to every single trade they made. Erroneous or not
2) Knight almost went bankrupt -- as they should have. They were only saved by receiving another round of money from investors (that dilluted the current shareholders by about 70%). In other words, the owners of Knight took a huge loss -- again, as they should have. The general public wasn't affected at all unless you were the person SELLING to Knight and even then, you most likely sold your stock to them at a higher price than you would have otherwise.
3) Knight had NOTHING to do with high frequency trading. That's not what the firm does or was trying to do.
But don't let these facts get in the way of a good wall street bashing narrative.....
There are PLENTY of things that are real issues and need attention but slashdot is tilting at windmills on this.
says an owner of a 2007 Avalon.
Insanity: doing the same thing over and over again and expecting different results. Albert Einstein
I said something similar when discussing the tinfoil hat theories during the banking bailout. I would have loved to get in on that pie and knowing it does not work that way is mildly disappointing. My boss, whom has more money than a small country, said that it was true. I was just too late to the pie.
High-frequency automated trading are destroying the stockmarket. With transactions on a stock happening at thousands of times a second, when things go bad they go bad very quickly. When things go well, the normal trader gets reamed.
IMHO High-frequency automated trading should be outlawed, stocks should be bought and sold at a rate comparable to human interaction. Say 1 per second. Then if things go bad, it goes bad over the course of a day and people can react. Brokers normally buy and sell bulk amounts of stock, so this would be no different.
It would level the playing field, and put the normal investor at less of a disadvantage compared to the big companies. If a stock is particularly hot, then some trades won't get made by the end of the day. This is in other words reverting to the stock market of old, where the market could be looked at, and expected to stay the same over the course of a minute.
No, I don't. Please read the post again. I was actually contradicting the previous post which showed a strong belief into the intelligence of the market.
What I said is that, even if in the long run Wall Street will put the money will be with successful companies which actually provide something useful, in the short run, there can be very bad trades, and there is no warranty that the markets will learn from bad decisions, the next trade can have bad effects again to everyone, inclusive the traders.
It is impossible to regulate this industry. What should be done is nothing : let Knight Capital Group try to absorb this $440M loss, if they can. If they go bankrupt, it is even better : this will teach a lesson to all other companies which deploy untested software, a lesson given in the only language that they understand : money.
Trying to enforce stricter guidelines only makes sense in industries where human lives are at stake (airlines, health...). For the financial industry, only the financial incentives make sense.
they would have to switch out coders every once in a while or they will have the issue of
"He died at the console,
Of hunger and thirst.
Next day he was buried,
Face down, nine-edge first."
Any person using FTFY or editing my postings agrees to a US$50.00 charge
The passengers from Air France Flight 447 might beg to differ.
when these automated transactions fail.. or even while they are working .. how does it affect everyone else in the market?
oldhack: "Security is a waste of money until shit hits the fan. 5 minutes later, it becomes waste of money again. "
One would assume that when one buys software at 30 cents on the dollar, that there is a reason it is so cheap. I don't think anyone from a BRIC country involved in this software issue is going to be in trouble. Mean while, Knight Cap is looking for someone to buy it.
IF ( $profit_or_loss > 10000 ) { exit(); }
It's already such a waste that so much talent is getting thrown at problems that seek to make money while producing absolutely nothing.
Fortunately this is impossible....unless one controls the Federal Reserve.
"...the aviation industry has demonstrated that safe, reliable real-time software is possible, practical, and necessary..."
unless it isn't in specific cases - e.g. Air France Flight 447, where some of the design features of the software clearly contributed to the evolution of the accident.
They don't create food or machinery or build houses. They don't transport materials to people who make things. They don't transport finished products to consumers. They don't get oily gunk out of the ground and turn it into fuel, plastic and lubricants. They don't maintain equipment or search for minerals or invent new ways to make things or new things to make. Even astrophysicists produce understanding of the world.
Wall street doesn't don't produce anything. They just fiddle with numbers. If they all went broke today, the world would be a better place.