I am afraid BCELoss does not.
But looking at the code, BCELossWithLogits does (https://pytorch.org/docs/stable/generated/torch.nn.BCEWithLogitsLoss.html?highlight=bce#torch.nn.BCEWithLogitsLoss 3)
So if you actually use a sigmoid before it and want to merge both, that will work 
Otherwise, you will have to create a custom nn.Module yes. But the one line formula for BCELoss given above should not be significantly slower than the all-in-one version.