You will have to script your own. You can use startup and shutdown scripts provided by Oracle Applications by default. Use those. then add few checks like number of process from applmgr user and oracle user remaining after shutting down, giving enough time to complete process of shutdown.
Also explore the possibility of registering your own script as a Host concurrent program. You can then register the program as the host concurrent program in the event of power failure and just run the program.