Protecting the fish in your pond from predators is a common question we get from customers. In most cases, the solution is to prevent access. For raccoons, edge your pond with rocks or flagstones that are higher than the water level. This prevents the raccoons from being able to walk into the water. Make sure the waters edge is high enough that they can't scoop out the fish with their long claws.
For herons, one solution is to run several strands of fishing line or garden netting across your pond. This will prevent them from attempting a landing in the first place. You can also try objects that move or make noise in your garden to frighten them away.