Many brokers are willing to give you a gift or reward for opening an account.
Charles Schwab - earn up to 50,000 Delta Skymiles. Earn 3,000 miles for opening a new account with $30,000 and 1,000 miles for each additional $10,000. Call 1-800-565-8878 for details. This offer is not in their website.
eTrade - get $50 cash for opening an account. This offer has been run on several TV commercials and could not be found on their site. Expiration unknown, call them at 1-800-786-2575 for details.