There's no easy way to tell, natively, when a thread has been soft deleted. However, a work-around to this would be to delete threads where the last post is older than 7 days ago and the thread is soft deleted. The reasoning behind this is that once a thread has been soft deleted it won't be posted in anymore.
Code:
define('ONE_WEEK', 604800);
$vbulletin->db->query_write("DELETE FROM " . TABLE_PREFIX . "thread WHERE lastpost <= " . (TIMENOW - ONE_WEEK) . " AND visible = 0");
This will delete all soft deleted threads that haven't had a post in the past 7 days. Untested- should work fine.