How can I make and fill static mesh at runtime?

I have some mesh in some file and I need to load this mesh into UE, I know how to read that file format so that I have vertex array and index array but I do not know where I should place that data in the UE. The mesh is static, once I have loaded it, it will not be changed, but sometimes I need unload/load it again, also the mesh is big more then 200 000 triangles and sometimes may contain LOD, the scene may contain more than one such mesh.
I think I have to use UStaticMesh but how?
I have created my Actor + UStaticMeshComponent + UStaticMesh what next?

Sorry If something wrong in the text, I do not speak English very well.

Look at Procedural Mesh from Epic. Procedural Mesh | Unreal Engine Documentation

There is a wiki available on Procedural Mesh Generation but unfortunately it says it wont work on 4.8+.

Thx for your answer.

Is there high level solution? or more clear?
I have found this A new, community-hosted Unreal Engine Wiki - Announcements and Releases - Unreal Engine Forums It seems like what I want, but

P.s I do not consider Blueprint solutions now, only C++

Has anyone found a better solution? UProceduralMesh just stores the mesh info inside the component, which is useless if you want to reuse one generated mesh in several places. Maybe it’s possible to create a “transient” procedural mesh and then use DuplicateObject? But that’s still not as efficient as fully-reusable UStaticMesh.