Book whenever you can see availability in the class you want. Airlines do devalue their award charts over time. VA has a pretty good cancellation policy so very little reason not to book early..
just don't expect to find business class seats...
edit. Sorry. Thought for some reason you were going to book with points.
if paying cash, I'd just look out for a good fare. When you see one book it. But unlike points, you can't just cancel cheap cash fares and get your money back.