The formula is very easy: probability x managers / teams x π :)
Joking aside. As almost everywhere the size matters here. Slice all projects and features into smallest possible pieces and estimate only the obvious ones for first while keep in blur all others and let the client/stakeholder/manager to clarify all question. Hopefully they do their job so when you finished your work there will be more clarified parts to estimate and continue with.
When you have to estimate the whole project then calculate a wide range (for example: 6-10 months) for all uncertain parts.
The other side of the coin is your experience. After you finish many projects you will see how much time required for which part. You will see because each and every new project will be 80% same as before.
BTW you can just follow any popular methodology and adopt the estimation techniques from there.