First, you should be at Trainer Level 10 to unlock the ability to trade. Second, the friend you wish to trade with must be with you physically at the time, as there are no remote trades in Pokémon Go. Finally, once a Pokémon has been traded, you can’t trade it again; once you've received a Pokémon from a pal, it's yours forever.