Pin trading is a big part of our children's fun on the ship.
Here are my suggestions:
1. Get a lanyard and a "lot" of pins from eBay. Go on eBay and type "Disney Pins lot" (without the quotations). Look especially for a "lot" that includes a lanyard if you don't have one. Also, in the item description be sure that it says "official" disney pins. Shoot for between 2.50 and 3.00 per pin including shipping. In my opinion, cheappins.com is fine but it's much easier to buy a lot of 10-20 pins on eBay.
2. On the boat, look for cast members (CMs) who are wearing lanyards. A great time to pin trade is in the atrium upon embarkation. There are lots of CMs there with lanyards. They are required to trade any official pin with any other official pin (as long as they don't already have that pin).
3. Another great spot for pin trading is the Guest Services counter.
4. We traded with other kids during the pin trading times at night (look in the Navagator for times).
Have fun - my boys (5 and 8) had a blast pin trading!