My limited experience with raising fish in ponds:
1. Dig a deep hole, as deep as possible. We have rock 2 meters down. Line with fish pond liner (like heavy duty black garbage bags)
2. Add some rocks from the garden onto the liner.
3. Fill with water or wait for it to rain.
4. Research fish native to the area
5. Buy some pond plants the fish like to eat, put in pond and wait a couple of months for them to become established. Add lilies for shade.
6. Buy some baby fish and dump them in the pond.
7. Ignore for a year and let them be fish. Don’t feed them.
8. Be continually surprised at how big the bastards are.
Total set up costs: about $2k, mostly labour for hole digging, lining the pond and materials. Total running costs: $0.
If I was to do it again, I would plan for more comprehensive shade to reduce algae growth. Overhanging trees would be good but we have space restrictions with current pond location.
Main thing for me is keeping an eye on water levels. We tend to lose more to evaporation than we get in rain due to dry climate, so we have to supplement some times. Deeper pond with more shade would help here.
^ Q.E.D. this thread clearly delivers! ^