The answer really depends on your definition of "safety" in transactions. However, I assume you are looking for a similar escrow service in a stock exchange. Many businesses, huge ones in-fact, are competing with all sorts of colorful offers to get a share of that "banker" rule for the trading of crypto-currencies.
Despite many online sellers and buyers, these exchanges do not offer to buy or sell anything themselves; instead, everything in their business is based on offers of sell or buy from their customers. You'd be able to find many of them with a quick google search for "bitcoin exchange".
Just like your example of Ameritrade and what we know as "stock exchanges", crypto-currency exchanges are usually open to the public to trade crypto-currencies against each other and against regular money which is usually referred to as FIAT money in these exchanges.
They usually require their customers to properly identify themselves, and then transfer and deposit their money or their crypto-currencies to the exchange. Then they allow each customer with a positive balance, to place an offer to buy or sell a certain amount of another crypto-currency for a certain price of their choice and up to the available funds or bitcoins or crypto-coins of the customer. As a result, the exchange will have a live list of offers to buy and sell between pairs, like BTC/USD or ETH/BTC (for ethereum to bitcoin trades).
Exchanges maintain the list of offers and execute two opposite offers/orders against each other whenever the price tags match. They also usually keep their list of offers open to their customers and sometimes even to the public.
For example, if I transfer 1 BTC to an exchange, I can open a sell offer to sell up to 1 BTC for any price I want. Now if I open a BTC sell order for $10000/BTC while every other offer is for $10005+, I'd be on the top of the list of sellers. And if at the same time you open a buy order for $9999/BTC while all other offers are for less than $9995 per BTC, even though your offer would be on tp of the buyers list, nothing will happen until either of us change our mind to match the price of th other one. In this case, lets assume that you'd see the list of sell offers and realize that with adding only one dollar to your offer, it would match my offer. And lets assume, you'd do it. Then the following steps will happen:
- The exchange will remove your offer and my offer from the list of offer and instead a transaction will be created for $10000/BTC and a volume of 1 BTC
- $10000 will be deducted from your deposits in the exchange and will be added to my deposits
- 1 BTC will be deducted from my deposits and will be added to your deposits in the exchange
- Depending on the rules of the exchange, one of us or both of us will pay a transaction fee to the exchange. The fee usually gets deducted from the deposited BTC or FIAT.
- The current price of bitcoin will be announced as $10000/BTC in the exchange
- ... and finally, if we have used a big exchange, many sellers and websites will adjust their BTC prices based on the price of our trade as the last trade, or an average of the last couple of trades of one or more exchange.
Once you are satisfied with the status of your account, you'd be able to close all offers/orders and withdraw the balance on your account, like your bitcoins and remaining money to your bitcoin wallet and bank account.
Remember that the before withdrawal of your bitcoins, they would be remained in the wallet of the exchange. And the exchange transaction fee of exchange has nothing to do with the transaction fees of the bitcoin network. You'd have to pay the bitcoin transaction fees when you deposit or withdraw your bitcoins to and from the exchange. Most exchanges have some other fees for different methods of deposit and withdrawal.
And one last note: Always research the reputation and all rules and policies of the exchange before even opening an account.