Have you tried lumibot yet? I think it's the most full featured/flexible backtesting library available (can trade options, multiple assets at once, etc), and it's being aggressively developed (check the commit history, there's a new version almost every week)