It is now fairly common for "lambda" users to have direct access to the stock market, i.e., see the book of order (up to a given depth), place a buy or sell order, cancel an order, etc. The bank or broker gives you all the tools you need and charges a small fee.
In contrast to the stock market, access to the currency exchange market seems indirect, i.e., you do not see the book of order and do not place a buy or sell order. The exchange rate is set by negotiating with intermediates (a bank or a broker) and not with the other side of the demand. I found this a bit strange and would have expected to be able to place a EURUSD buy order which is crossed with a EURUSD sell order.
Is my observation that the currency exchange market is indirect correct? Is there a particular reason for this? Why isn't currency traded like stocks?