I think you're just lucky, but if you think your Vivillon was made shiny with Power-Save, go on the Pokemon Global Link and find the OT/ID of the Vivillon trainers. Then compare them with your Vivillon and if the OT is the same, but the ID is different, then the Vivillon is hacked. If the OT and ID is the same, then your Vivillon is legitimate. If you're wondering why you have to do this, that's because to make a Pokemon shiny with Power-Save, the Power-Save changes the ID to match the OT's shiny value.
I think the ocean pattern vivillon is a hack. I couldn't find the OT (how do you do that on global link?), but I did get a look at the trader's previous GTS trades on global link. Trader name Stephen from New Jersey, card info G-171-1652-R, has traded 2 level 84 yveltals in DREAM BALLS to other people in GTS. -.- That's not legit, right?
The monsoon was traded to me by Tadeo card info E-077-9698-E from Nuevo León in Mexico, and his GTS information is private, so I can't check.
The OT of the Ocean pattern is tPurple, ID No. 56019. I got it at level 12, modest, shield dust, it was originally hatched as an egg on Route 7. This one says it was from a Day-Care Couple. Egg received and hatched on 3/25/2014. No ribbons.
The OT of the Monsoon pattern is Lucille, ID No. 45532. It got it at level 53 with pokerus, it's marked in circle, square, heart, star, and diamond (I'm assuming its a 5IV competitive quality, but I haven't checked). Nature timid, compound eyes, egg obtained and hatched 2/12/2014 at Parfum Palace. This one says it was from a Link Trade. No ribbons.
Posting some screen shots as well. Any help verifying these guys is appreciated.