Not necessarily a heron, but almost certainly
predation, given the behavior of your remaining fish. Cape
Town is on the seacoast, so ospreys and other fish-eaters
have found you. It might be worthwhile to cover the pond
with a hoop-house arrangement and shade cloth to hide the
presence of water from the air. The herons already know
you're there, and the only things that work for them are
either water too deep for them to wade in or effective anti-aircraft
fire.
Bob Passovoy