It used to the case that if you had an interest in a particular field/domain you had to purchase/trial expensive proprietary software to enable you to 'play with it'. Now that is no longer the case. A lot of the major software standards have become standardised which has led to a proliferation of commerical implementations as well as open source alternatives which can be used to simulate real environments through test driven development based on black box testing. Play aroud with virtual interfaces, a bit of fuzzing/random data, random lagging, as well as a proper test bench which is able to supply a large set of data and you could very well accurately simulate real world communications exchange. For the sake of brevity though, we'll leave details of how to achieve this for the reader.
From a personal perspective, while you may not be able to directly interface with an exchange you are still more than able to track movements of various assets and indexes by interfacing with various web based sources of information through a web scraper and then using this information in combination with internal/external algorithms which provide a recommendation of whether to buy/sell in order to a interface with an Internet based broker to conduct your transactions. While there is evidence to suggest that technical/human trading can fall behind tracking an index over the long term (especially after taxes are factored in) it is said that contrarian theory may be able buck this trend and rarely a small group of firms are able to beat the market over the long term. However, I'm not entirely sure this factors in all types of trading out there.