I've really enjoyed reading the posts here and I wanted to get involved in the community. For someone who may want to use Robinhood, you have to deal with the T+3 rule if you have a cash account. This is most likely the scenario I'll end up in (unless there's an unknown benefactor-- fingers crossed.) So, I wanted to put together some code to help others and myself learn to deal with this.
The code implements a rebalance every week where it buys and sells as much as it can afford, and then, if any buy fails due to insufficient funds, it tries to buy the security again after the sells have settled. The rebalance uses the min variance portfolio (naively setting suggested shorts to 0).
I realize this notebook doesn't have slippage and commissions are turned off (since it's planned to be for Robinhood). Also, there's probably a small bug since the cash balance does slightly dip below 0 in this backtest, so there's more work to be done. However, I wanted to get this out there and see what everyone thinks.