Yes, you can prepare this salad ahead of time; however, wait to dress it until just before serving. I would also prep the romaine, and store it separately from the rest of the salad so it doesn’t become wilted mixed in with the other ingredients. This salad really does need to be eaten the day it is dressed since the romaine will become slightly soggy in the dressing overnight.