Hydrogen Peroxide is just water with an extra oxygen molecule. So, it "shouldn't" harm fish. That extra molecule of oxygen is loosely bound to the compound of water, so just shaking a bottle of it will cause the extra oxygen to break free and bubble up to the surface.
When you pour it into the pond, that is what happens and it can be used as a way in a low-oxygen emergency to quickly raise the oxygen levels in the pond. When doing this, you should NEVER pour the stuff in directly on top of a fish. Remember that the primary use of Hydrogen Peroxide, sold in drug stores, is as a topical disinfectant. While that extra oxygen molecule is still bound to the water, it is a powerful oxidizer. A straight shot of it very definitely damage fish gills.
Pouring it directly on to concentrations of string algae should be pretty safe for the fish. It will not remain “hydrogen peroxide” in the water for very long at all. You might consider adding aeration to the pond to ensure that the oxygen levels are kept up to the temperature dependent oxygen saturation point. String algae prefers water with lower oxygen levels.
String algae lives on nutrients dissolved in the water. To me, it’s presence is a symptom of water that needs a little attention.
As for the various clays, I’d not think of them as a “chemical,” just as I don’t generally regard salt as a “chemical.” Of course, they are just that, chemicals, but when people us the term, they often mean it in a negative context. What the clay does is, it acts primarily as a “chemical sponge.” Just as zeolite can remove ammonia from the water column, the clays also “take up” quite a few chemicals that are not desirable in the pond. The right clays also add some beneficial minerals that can be missing from your supply water.
Just some thoughts,
Mike S.
Spring Hill, FL