That depends on the logic.
If you use "CallBack" event handling type (e.g. EventMoveHandling=CallBack) then you need to reload all events at the end of the callback (to make sure fresh data is loaded). In that case OnFinish is handy so you don't have to repeat the loading in every event handler (OnEventMove, OnEventResize, etc.).
For "Notify" event handling type it's not necessary to reload them (the Scheduler is updated on the client side before calling the server). In this case it's enough to load events just once, in OnInit().
So: If you are using "CallBack" handling and always load the data using the same filter you can move it to OnFinish.