Place salmon in a single layer in a large baking dish. Whisk together vinegar, olive oil, honey, lime juice, lemon juice, orange zest, garlic, white sugar, ground ginger, chilli powder, chilli flakes and salt in a large bowl. Pour over salmon. Marinate in the fridge for 1 to 3 hours.
Preheat a barbecue for medium heat then lightly oil the grate. Remove fish from marinade. Discard used marinade. Place on preheated grill. Cook just until it flakes easily with a fork, about 5 minutes per side.