Suppose I have the funds to buy exactly 100 shares of SPY in a regular, taxable (i.e. not 401K or IRA) account. I then sell at or in the money covered calls one year out, say Jan 2019 calls. This will result in a deposit in my account. My question is: can I withdraw the proceeds from the sale immediately (or after a few days)? Or do I have to wait until the shares or assigned (or the call expires)?
It will depend on your broker's policies, but yes you should be able to withdraw the cash just as if you had sold stock. From a collateral standpoint there's nothing that the cash will be needed for later (unlike, say, selling a covered call where you need to hold the underlying stock to ensure that the call can be exercised).
The premium received from selling the covered call is yours to do with as you wish. You can leave it there, withdraw it or use it to buy something else.
For example, you could buy 100 shares for $27,600. Then seconds later, you sell the Dec '19 275 call for $29 and the $29 is now in your account.
OTOH, you could place a Buy/Write for $247. Upon execution, the cost is the same but there's no premium sitting there in cash.
Either way, it costs $247 per share.
The only situation where you could not withdraw the $29 would be if other positions created a margin problem and withdrawing the $29 would put you in violation of the minimum margin maintenance level.