There are no joins in MongoDB and as such a ReferenceField is just an ordinary field that happens to store an ObjectId.
Indexes should be created with thought and planning - there is a cost to having one as well as to not having one. So "Whats the best index for a schema?" Well that really only depends on one thing - usage.
How are you using you data and how are you querying for that data? That should drive the design of your indexes, not what type of data you are storing*
So for the best performance its best to tune your queries (like you have done) - using the built in profiling is a good start.
* As ever there is an exception that proves the rule - geo data :)