You don't need to create the overlay mov as a separate step.
First create the overlay like a movie in this way:
-loop 1 -i watermark.png
Then use a fade filter to fade in for 4 seconds (that is 100 frames):
fade=in:0:100
And then delay it by 10 seconds to start later in this way:
setpts=PTS-STARTPTS+10/TB
Your command then becomes:
ffmpeg -i video.mp4 -loop 1 -i watermark.png -filter_complex \ "[1:v]fade=in:0:100[v1]; [0:v]setpts=PTS-STARTPTS[v0]; \ [v1]setpts=PTS-STARTPTS+10/TB[v3];[v0][v3]overlay=eof_action=pass[out1]" \ -map [out1] <other parameters> overlaidoutput.mp4
The overlay will continue to the end. And of course you can use many fine-tuning parameters within the "other parameters" section.
NOTE: I used 100 frames for 4 seconds because I used PAL 25 fps. You can change that to 120 frames if you work in 30 fps.
If you need to end the overlay at a specific time point, you can also use the enable
parameter:
ffmpeg -i video.mp4 -loop 1 -i watermark.png -filter_complex \ "[1:v]fade=in:0:100[v1]; [0:v]setpts=PTS-STARTPTS[v0]; \ [v1]setpts=PTS-STARTPTS+10/TB[v3]; \ [v0][v3]overlay=enable='between(t,10,12)':eof_action=pass[out1]" \ -map [out1] <other parameters> overlaidoutput.mp4
This ends the overlay at 12 seconds. Make sure you are using ffmpeg ver 2 or above.