Either export them with a common pivot. That is: Have the branches “floating” in your 3D app. When importing in Unreal, they are at the correct place, offset from the origin.
Another (in my oprinion, better) way are sockets.
Here you would set your branches at the origin in your 3d app, just like the trunk.
In the static mesh editor, create sockets for the branches.
Wrap that up in a blueprint that places branches where the sockets are.
If you later decide to move/rotate a branch a little, just move/rotate the socket…
I found FBX working good so far. As it is the preferred format by UE, I see no point in experimenting with OBJ.
The processing time has nothing to do with the file format. Reading that data is trivial in comparison to the extensive calculations done on it, as others already mentioned.