Remove the stems, seeds, and veins from the the guajillo and the chile de arbol peppers. Soak in the hot water in a medium bowl for 10 minutes.
Cut the pineapple in half lengthwise and carefully remove the flesh, forming two deep dishes. Separate the fruit from the core and discard the core.
Drain the guajillo and chile de arbol peppers, reserving ¼ cup (60 ml) of soaking liquid, and place in a food processor. Add the onion, garlic, chipotle, ketchup, water used to soak the peppers, vinegar, salt, and pepper, and pulse until fully blended.
Strain the sauce through a fine mesh sieve.
Heat the butter and oil in a medium pan over medium heat. Add the onion and garlic, and fry for 3 minutes, until the onion is translucent.
Add the tomato and the reserved pineapple, cover, and cook for 3 minutes.
Add the shrimp, stir well, cover, and cook for 2 minutes, or until the shrimp turns pink.
Add the sauce and cook for about 5 minutes, until it thickens.
Serve the shrimp in the pineapple halves and top with fresh cilantro.