If it's not metals - then you are not getting the chlorine up to a level where it will kill the algae. You need to get it to 20ppm - test 3X a day and every time raise it to 20ppm - the more you are able to keep the chlorine level high and steady - the shorter amount of time it will take to kill the algae.

I would still recommend that you have your water tested again for copper. When you shock your pool it will cause the metals to come out and stain your pool - which would not be good.