Since transactions should be "as short as possible, without being too short", how much time is there between when you run "BEGIN;" and the first "work statement"?
I don't know that it really matters. For something automated, it would be a few milliseconds. Either way, I'm sure most people/apps already think of the initial 'BEGIN ...' as the start of the transaction, and act accordingly.
Maybe long-term something like
BEGIN ISOLATION MODE REPEATABLE READ SNAPSHOT NOW;
could be useful.
Cheers,
Greg