Optimizing render pipeline

I’ve been looking into the Mesh drawing pipeline in UE4 and am wondering if it is possible to control what happens at this stage. This thread talks about what is done when a primitive component is to be rendered. But all these processes seem to be built-in, i.e., the user has no control over this area. Draw call batching, for ex., would have very high impact on my program but doing a runtime merge of the draws would be quite expensive.

Is there a way to directly control what happens on the render thread?

Not easily. (Source code modification), but ue4 auto instances identical primitives, HISM/ISM will be useful for mass-spawning identical actors, outside of level building, and HLOD is good to trade file size/load time for performance.