Peel and refrigerate shrimp until ready to use. Combine shells, 4 cups water, onion, carrot, celery, cilantro, thyme, garlic, and salt in a large saucepan. Bring to a simmer over medium; cook, stirring occasionally, until mixture reduces to about 3 cups, about 30 minutes.
Pour mixture through a fine wire-mesh strainer into a bowl; discard solids. Set stock aside until ready to use. (Stock can be stored in an airtight container up to 5 days in the refrigerator or up to 1 month in the freezer.)
Bring a large saucepan filled with water to a boil over high. Add tomatoes; cook until skins begin to loosen, about 30 seconds. Using a slotted spoon, transfer tomatoes to a bowl filled with ice water; let stand until cool, about 5 minutes. Remove from ice water; peel and discard tomato skins. Remove and discard seeds. Chop tomatoes into 3/4-inch pieces. If using canned tomatoes, open each tomato, discard andy seeds and chop into 3/4 inch pieces. Extra tomatoes from the can may be frozen in their juices until another use can be found for them. Set aside.
Heat 2 tablespoons olive oil in a Dutch oven over medium-high. Add tomato pieces, onion, bell pepper, and dedo de moça chile (or substitute). Cook, stirring often until onion and bell pepper are softened, 10 to 12 minutes.
Add wine; cook, stirring occasionally until mostly evaporated, 6 to 8 minutes. Stir in shrimp stock; bring to a boil over medium-high. Reduce heat to medium-low; simmer, uncovered, until mixture reduces by half, about 30 to 40 minutes. Reduce heat to low; stir in coconut milk, salt, and pepper. Add shrimp and cook, stirring occasionally, until opaque and cooked through, 2 to 3 minutes. Stir dendê oil or substitute. Taste and adjust seasonings.
Serve over rice with lime wedges; garnish with cilantro or parsley leaves or green onion.
Keywords: Alcohol, annatto, Bargain Meal of the Week, Bell Peppers, Brazilian, canned tomatoes, Carrots, celery, coconut milk, Fish and Seafood, Hot Peppers, Rice, Shrimp, Soup, Tomatoes, Wine