The following is accounting advice from a data analyst...please check with your tax accountant.
Everyone should be contributing the maximum to their Roth IRA. If you're 50 or older that's $7,000 a year. When you trade short term, long term, options, etc., inside your Roth IRA, all of your profits are non-taxable.
You can withdraw your basis from a Roth IRA at any time. You can only withdraw your earnings tax free after 5 years from the date you opened the account and when you're over 59 1/2, (both rules must be satisfied).
Yes, there is a free lunch.