Is there software to buy and sell stocks in real time on very small moves in price?
I'm answering in a perspective of an End-User within the United Kingdom. Most stockbrokers won't provide Real-time information without 'Level 2' access, however this comes free for most who trade over a certain threshold. If you're like me, who trade within their ISA Holding each year, you need to look elsewhere.  I personally use IG.com. They've recently began a stockbroking service, whereas this comes with realtime information etc with a paid account without any 'threshold'. Additionally, you may want to look into CFDs/Spreadbets as these, won't include the heavy 'fees' and tax liabilities that trading with stocks may bring. Note that the pros pay for extremely fast access and are literally fighting over nanoseconds to get every possible advantage. Your system won't come close to that by several orders of magnitude. Consider the implications for the kinds of automated trading you want to perform. (Pico was overstating it. Nano, at the processor level and in terms of which transaction is first into the buffers, is certainly true. A millisecond is a Long Time in this domain.)
"There are many ways to trade. Rules based trading is practiced by professionals. You can indeed create a rule set to make buy and sell decisions based on the price action of your chosen security. I will direct you to a good website to further your study: I have found that systemtradersuccess.com is a well written blog, informative and not just a big sales pitch. You will see how to develop and evaluate trading systems. If you decide to venture down this path, a good book to read is Charles Wright's ""Trading As A Business."" It will get a little technical, as it discusses how to develop trading systems using the Tradestation trading platform, which is a very powerful tool for advanced traders and comes with a significant monthly usage fee (~$99/mo). But you don't have to have tradestation to understand these concepts and with an intermediate level of spreadsheet skills, you can run your own backtests.  Here is a trading system example, Larry Connors' ""2 period RSI system"", see how it is evaluated: http://systemtradersuccess.com/connors-2-period-rsi-update-2014/, and this video teaches a bit more about this particular trading system: https://www.youtube.com/watch?v=i_h9P8dqN4Y IMPORTANT: This is not a recommendation to use this or any specific trading system, nor is it a suggestion that using these tools or websites is a path to guaranteed profits. Trading is a very risky endeavor. You can easily lose huge sums of money. Good luck!" Can you say a little more about how you want to use your new skills? For instance, machine learning to help make picks? Then I think the answer would be python. But if you’re thinking you’d like to write high speed trading algorithms, that’d be something else. "There's a market for single stock futures.  The market (however small) is OneChicago, ""an Equity Finance Exchange offering security futures products.""  I don't know how easy access is for retail investors." Yes under certain circumstances! Educate yourself first. Consider algorithmic trading when you code your strategies and implement your ideas - a bit easier for psychology. And let the computer to trade for you. Start with demo account without taking personal risk. Only after a year of experience try small amount of cash like you said 100$. Avoid trade when big news events are released. Stick to strategy, use money management, stop loss, write results in the journal... learn & improve... be careful it is very hard journey. "Yes there is, it is called a One-Cancels-the-Other Order (OCO). Investopedia defines a OCO order as: Definition of 'One-Cancels-the-Other Order - OCO' A pair of orders stipulating that if one order is executed, then the   other order is automatically canceled. A one-cancels-the-other order   (OCO) combines a stop order with a limit order on an automated trading   platform. When either the stop or limit level is reached and the order   executed, the other order will be automatically canceled. Seasoned   traders use OCO orders to mitigate risk. I use CMC Markets in Australia, and they allow free conditional and OCO orders either when initially placing a buy order or after already buying a stock. See the Place New Order box below:  Once you have selected a stock to buy, the number of shares you want to buy and at what price you can place up to 3 conditional orders. The first condition is a ""Place order if..."" conditional order. Here you can place a condition that your buy order will only be placed onto the market if that condition is met first.  Say the stock last traded at $9.80 and you only want to place your order the next day if the stock price moves above the current resistance at $10.00. So you would Place order if Price is at or above $10.00. So if the next day the price moves up to $10 or above your order will be placed onto the market. The next two conditional orders form part of the OCO Orders. The second condition is a ""Stop loss"" conditional order. Here you place the price you want to sell at if the price drops to or past your stop loss price. It will only be placed on to the market if your buy order gets traded. So if you wanted to place your stop loss at $9.00, you would type in 9.00 in the box after ""If at or below ?"" and select if you want a limit or market order. The third condition is a ""Take profit"" conditional order. This allows you to take profits if the stock reaches a certain price. Say you wanted to take profits at 30%, that is if the price reached $13.00. So you would type in 13.00 in the box after ""If at or above ?"" and again select if you want a limit or market order. Once you have bought the stock if the stop order gets triggered then the take profit order gets cancelled automatically. If on the other hand the take profit order gets triggered then the stop loss order gets cancelled automatically. These OCO conditional orders can be placed either at the time you enter your buy order or after you have already bought the stock, and they can be edited or deleted at any time. The broker you use may have a different process for entering conditional and OCO orders such as these." Bloomberg is very popular, especially for researching individual companies. Market QA and Factset are popular for analyzing data. Microsoft Excel and Matlab are very common for analyzing the data.  Lots of time traders will take data from Bloomberg, Market QA, Factset or where ever, and then actually preform their analytics in Excel or Matlab. A lot of the brokers provide their own software to traders using their platform, and that software can also contain different tools to help the traders as well. You are looking for arbitrage, not in real terms, and you may lose heavily. Big banks would suck out all profit before you get a chance to react. There are thousands of algorithmic trading systems in banks, which specifically predict such situations and try to make money from such moves. If you can invest in such a system, probably you can make a killing, else best is to forget about it. Remember that somebody before you has surely thought about it and put a system in place, so that somebody else cannot make money out of it before he/she does. As far as i understand the big companies on the stock markets have automated processes that sit VERY close to the stock feeds and continually processes these with the intention of identifying an opportunity to take multiple small lots and buy/sell them as a big lot or vice/versa and do this before a buy or sell completes, thus enabling them to intercept the trade and make a small profit on the delta. With enough of these small gains on enough shares they make big profits and with near zero chance of losing. The software you provided as an example won't teach you much about investing. The most important things of investing are: These are the only free lunches in investing. Allocation tells you how much expected return (and also how much risk) your portfolio has. Diversification is the only way to reduce risk without reducing return; however, just note that there is market risk that cannot be eliminated with diversification. Every penny you save on costs and taxes is important, as it's guaranteed return. If you were to develop e.g. software that calculates the expected return of a portfolio when given allocation as an input, it could teach you something about investing. Similarly, software that calculates the average costs of your mutual fund portfolio would teach you something about investing. But sadly, these kinds of software are uncommon. "You can certainly try to do this, but it's risky and very expensive. Consider a simplified example. You buy 1000 shares of ABC at $1.00 each, with the intention of selling them all when the price reaches $1.01. Rinse and repeat, right? You might think the example above will net you a tidy $10 profit. But you have to factor in trade commissions. Most brokerages are going to charge you per trade. Fidelity for example, want $4.95 per trade; that's for both the buying and the selling. So your 1000 shares actually cost you $1004.95, and then when you sell them for $1.01 each, they take their $4.95 fee again, leaving you with a measly $1.10 in profit. Meanwhile, your entire $1000 stake was at risk of never making ANY profit - you may have been unlucky enough to buy at the stock's peak price before a slow (or even fast) decline towards eventual bankruptcy.  The other problem with this is that you need a stock that is both stable and volatile at the same time. You need the volatility to ensure the price keeps swinging between your buy and sell thresholds, over and over again. You need stability to ensure it doesn't move well away from those thresholds altogether. If it doesn't have this weird stable-volatility thing, then you are shooting yourself in the foot by not holding the stock for longer: why sell for $1.01 if it goes up to $1.10 ten minutes later? Why buy for $1.00 when it keeps dropping to $0.95 ten minutes later? Your strategy means you are always taking the smallest possible profit, for the same amount of risk. Another method might be to only trade each stock once, and hope that you never pick a loser. Perhaps look for something that has been steadily climbing in price, buy, make your tiny profit, then move on to the next company. However you still have the risk of buying something at it's peak price and being in for an awfully long wait before you can cash out (if ever). And if all that wasn't enough to put you off, brokerages have special rules for ""frequent traders"" that just make it all the more complicated. Not worth the hassle IMO." "I am strongly skeptical of this.  In fact, after reading your question, I did the following: I wrote a little program in python that ""simulates"" a stock by flipping a coin. Each time the coin comes up heads, the stock's value grows by 1. Each time the coin comes up tails, the stock's value drops by 1.  I then group, say, 50 of these steps into a ""day"", and for each day I look at opening, closing, maximum and minimum. This is then graphed in a candlestick chart.  Funny enough, those things look exactly like the charts analysts look at. Here are a few examples:    If you want to be a troll, show these to a technical analyst and ask them which of these stocks you should sell short and which of them you should buy. You can try this at home, I posted the code here and it only needs Python with a few extra packages (Numpy and Pylab, should both be in the SciPy package). In reply to a comment from JoeTaxpayer, let me add some more theory to this. My code actually performs a one-dimensional random walk. Now Joe in the comments says that an infinite number of flips should approach the zero line, but that is not exactly correct. In fact, there is a high chance to end up far from the zero line, because the expected distance from the start for a random walk with N steps is sqrt(N).  What does indeed approach the zero line is if you took a bunch of these random walks and then performed the average over those. There is, however, one important aspect in which this random walk differs from the stock market: The random walk can go down as far as it likes, whereas a stock has a bottom below which it cannot fall. Reaching this bottom means the company is bankrupt and gets removed from the market. This means that the total stock market, which we might interpret as a sum of random walks, does indeed have a bias towards upwards movement, since I'm only averaging over those random walks that don't go below a certain threshold. But you can really only benefit from this effect by being broadly diversified." "Price is current price per share, but you can buy fractional shares. Minimal investment is how later the first purchase of shares must be to make it worth their efforts to set up the account for you. How you manage it is up to you. You can buy or sell shares at any time, pretty much, though it may take a few days for the transaction to ""settle"" and take effect. You can do this via checks, or you can give the broker (or the investment house, if you are dealing directly with them as I do) permission to take money from or put money to your bank account when you tell them you want to buy or sell shares. You may be able to set up direct deposit; talk to your employer about that. Or you may be able to have your bank make a periodic transfer/purchase for you." Based on my experience with OpenQuant, which is a development platform for automated trading strategies (and therefore can be easily be used for backtesting your personal strategy), I can give a little insight into what you might look for in such a platform.  OpenQuant is a coding environment, which reads data feeds from a variety of sources (more on that in the second point), and runs the code for your strategy on that data and gives you the results. The data could be imported from a live data feed or from historical data, either through numerous API's, CSV/Excel, etc. You can write your own strategies using the custom C# libraries included with the software, which spares you from implementing your own code for technical indicators, basic statistical functions, etc. Getting the data is another issue. You could use joe's strategy and calculate option prices yourself, although you need to exercise caution when doing this to test a strategy. However, there is no substitute for backtesting a strategy on real data. Markets change over time, and depending on how far back you're interested in testing your strategy, you may run into problems. The reason there is no substitute for using real data is that attempting to replicate the data may fail in some circumstances, and you need a method of verifying that the data you're generating is correct and realistic. Calculating a few values, comparing them to the real values, and calibrating accordingly is a good idea, but you have to decide for yourself how many checks you want to do. More is better, but it may not be enough to realistically test your strategy. Disclaimer: Lest you interpret my post as a shameless plug for the OpenQuant platform, I'll state that I found the interface awful (it looked vaguely like Office 2000 but ten years too late) and the documentation woefully incomplete. I last used the software in 2010, so it may have improved in the intervening years, but your mileage may vary. I only use it as an example to give some insight into what you might look for in a backtesting platform. When you actually begin trading, a different platform is likely in order.  That being said, it responded fairly quickly and the learning curve wasn't too steep. The platform wasn't too expensive at the time (about $700 for a license with no data feeds, I think) but I was happy that the cost wasn't coming out of my pocket. It's only gotten more expensive and I'm not sure it's worth it. Another one I have seen mentioned used is Equity Feed. It had varies levels of the software depending on the markets you want and can provide level 2 quotes if select that option. http://stockcharts.com/ is also a great tool I see mentioned with lots of free stuff. Your question seems to be making assumptions around “investing”, that investing is only about stock market and bonds or similar things. I would suggest that you should look much broader than that in terms of your investments. Investment Types Your should consider (and include) some or all of the following for your investments, depending on your age, your attitude towards risk, the number of dependents you have, your lifestyle, etc. I love @Blackjack’s explanation of diversification into other asset classes producing a lower risk portfolio. Excellent! All the above need to be considered in this spread of risk, depending as I said earlier on your age, your attitude towards risk, the number of dependents you have, your lifestyle, etc. Stock Market Investment I’ll focus most of the rest of my post on the stock markets, as that is where my main experience lies. But the comments are applicable to a greater or lesser extent to other types of investing. We then come to how engaged you want to be with your investments. Two general management styles are passive investment management versus active investment management. @Blackjack says  That pretty much sums up passive management. The idea is to buy ETFs   across asset classes and just leave them. The difficulty with this idea is that profitability is very dependent upon when the stocks are purchased and when they are sold. This is why active investing should be considered as a viable alternative to passive investment.  I don’t have access to a very long time frame of stock market data, but I do have 30 or so years of FTSE data, so let’s say that we invest £100,000 for 10 years by buying an ETF in the FTSE100 index. I know this isn't de-risking across a number of asset classes by purchasing a number of different EFTs, but the logic still applies, if you will bear with me. Passive Investing I have chosen my example dates of best 10 years and worst 10 years as specific dates that demonstrate my point that active investing will (usually) out-perform passive investing. From a passive investing point of view, here is a graph of the FTSE with two purchase dates chosen (for maximum effect), to show the best and worst return you could receive. Note this ignores brokerage and other fees. In these time frames of data I have …   These are contrived dates to illustrate the point, on how ineffective passive investing can be, depending if there is a bear/bull market and where you buy in the cycle.  One obviously wouldn’t buy all their stocks in one tranche, but I’m just trying to illustrate the point. Active Investing Let’s consider now active investing. I use the following rules for selling and buying:- This is obviously a very simple technical trading system and I would not recommend using it to trade with, as it is overly simplistic and there are some flaws and inefficiencies in it. So, in my simulation,  These beat the passive stock market profit for their respective dates. Summary Passive stock market investing is dependent upon the entry and exit prices on the dates the transactions are made and will trade regardless of market cycles. Active stock market trading or investing engages with the market using a set of criteria, which can change over time, but allows one’s investments to be in or out of the market at any point in time. My time frames were arbitrary, but with the logic applied (which is a very simple technical trading methodology), I would suggest that any 10 year time frame active investing would beat passive investing.