Hello,
You can give a thought for archiving using the object "CRM_ACT_ON".
It is pretty easy and fast if the activities are in system status completed.
Go to tx:SARA and use the object CRM_ACT_ON to run the preprocess program for your transaction id/types.
Once pre-processing happens , the system status of the activities will be made to "Ready for Archive".
Run the write , followed by delete.
Hope this helps.
Regards,
Parveen