I think it would be more clear here if `update_portfolio` called `self.perf_tracker.get_portfolio()` directly instead of going through the property behavior of `portfolio`.