Put a shiny code in your action replay and they will all be red
OR get a magikarp without action replay and hatch it's eggs and hope for shiny! Level it to Gyrados.
Easy! Just trade the red gyarados from soulsilver to diamond.
luck and a super rod
you cant
A red gyarados is a shiny gyarados (however, the Pokemon Company did not call them shiny untill the Unova Region). You can find it wherever you can find a normal gyarados, but your chances to find it are very slim.
The Red Gyarados is a standard pokémon you'll encounter in HeartGold/SoulSilver, but not in Diamond. In Diamond it's a 'normal' shiny pokémon, which means that you need to be very lucky to catch one. You can find Gyarados at many places in Diamond, but the chance of getting a shiny pokémon is 0.0122%.
You can trade it from heart gold/ soul silver or get lucky and find a shiny magicarp (golden/yellow) and evolve it into shiny gyarados (red gyarados)
A red Gyarados is just a shiny Gyarados. There is no specialty, so just check your Pokédex to see where Gyarados is and start fishing. The chance of a shiny is just too small to look for it purposely. Or you can activate the code for shiny Pokémon and capture Gyarados.
use pokeradar on a body of water that has lots of gyrados
I think it is on the lake near the legendar pokemon. I not that sure.
only 2 red gyarados and palkia
There is no official way to find a red gyarados. It is a shiny pokemon, and the possibility of finding one is 1/8192. That is why they are so valuable in trades, as they are rare and discolored.
Its anywhere you can catch normal Gyarados in the wild, but its like a 1/8112 chance of finding one. Also, red gyarados' evolve from shiny magikarp at level 20 just like a normal magikarp