In a small jar, prepare the marinade by mixing the lime juice, grapefruit juice, soy sauce, fish sauce, sriracha sauce, salt and sugar. Store in the fridge.
Chop the shallots, sauté them in the avocado or peanut oil in a medium sauté pan over medium-high heat until caramelized, about 10 minutes. Let them cool and set aside.
Remove the peel from the grapefruit. Segment the slices by removing them from the membrane with a sharp knife. Here's an easy tutorial. Salt them lightly and store in the fridge.
Wash and dry enough lettuce leaves for four servings.
Grate the carrot and refrigerate. Chop the cilantro and slice or dice the avocado.
Rinse the shrimp and pat dry. Put the shrimp in a large bowl and add the carrots, cilantro, avocado and shallots. Add the marinade mixture and toss. Let the shrimp marinate for 20 minutes in the refrigerator.
Tear the lettuce leaves into bite-sized pieces and arrange on a serving platter or portion into four serving dishes. Add the grapefruit segments and blood orange slices and the shrimp mixture on top, drizzling with a little of the excess marinade.
Garnish with chopped peanuts and ribbons of thinly sliced mint and serve.