This has been a source of irritation for many recently. Simply disabling wake timers and disabling the Windows Update service is no longer enough to keep Microsoft from waking your machine from sleep mode to carry out maintenance and install updates. It looks like this was introduced as an update sometime in 2018 and affects Windows 10 1607, 1703 and 1709. Fortunately there are a number of steps you can take to stop Microsoft meddling with your machine and leaving it running all night costing you larger electrical bills.
Disable wake timers
Here is a script designed to stop everything Microsoft has designed to wake your machine. Simply save as a .ps1 file (eg. DisableWakeTimers.ps1) and run in an administrative Powershell window.
Disable Scheduled Tasks
The next step is to open Task Scheduler and disable all tasks under WindowsUpdate and UpdateOrchestrator.
Disable Windows Update (Optional)
If like me you like to be in control of how and when your machines are update I prefer to prevent automatic updates (particularly feature updates). Quite often my machines have been rendered useless by a bad update or a change in the way Microsoft does something. To prevent Microsoft re-enabling Windows update on your machine open Services as an administrator. Find the Windows Update Service and set it to Disabled using the drop down box.
Then click the Log On tab and change the account to Guest as below with no password, then click OK.