Combine the first 7 ingredients (the marinade). Rinse the fish well. If you're using a large fillet, cut it into serving pieces. In a large glass bowl, layer about half the onion slices. Pour some marinade over them. Then add the fish and the rest of the onions and marinade. Cover and refrigerate for at least 2 hours, but preferably overnight or all day.
When you're ready to cook, lift the fillets out of the marinade and set them aside. Pour the marinade off the onions and set the marinade aside. Cover the cubed potatoes with cool, salted water, bring them to a boil, and then simmer for a few minutes until they are just barely tender. Drain any excess liquid.
Meanwhile, in a heavy, nonreactive skillet, gently saute the onions in the peanut oil for about 20 minutes, until lightly browned. Add the red bell pepper, if used, for the last 5 minutes of sautéing. Combine the sautéed onions and bell pepper with drained sweet potatoes and marinade and simmer for about 20 minutes.
While the vegetables simmer, briefly grill, broil, or saute the fish until lightly browned on both sides. Add the fish to the simmering vegetables and continue to simmer for 15 minutes or until the fish is just cooked through. Salt to taste.
Serving Ideas : Serve in wide, shallow bowls on rice or steamed millet. Serving Size: 6