In a medium saucepan, add 2 tablespoons of the vegetable oil and heat. Add the onions and saute for 3 minutes, until soft and translucent. Add the garlic and saute for another 2 minutes. Add the saffron threads and saute for 1 minute. Season with salt. Add the rice and saute, stirring constantly for 2 minutes. Add the water and cover the pot. Lower the heat to simmer and cook for 20 minutes. Remove from the heat and let sit, covered for 5 minutes. Uncover and fluff with a fork. While the rice is cooking, in a saute pan, over high heat, add the remaining vegetable oil. When the oil is hot, add the tomatoes and the cayenne pepper. Saute for 5 minutes, or until the liquid begins to evaporate. Add the olives, shrimp and preserved lemons and cook until the shrimp turn pink and their tails curl completely, about 4 to 5 minutes. Be careful not to overcook. Season with salt and pepper. Add the shrimp mixture to the rice mixture and mix well. Check for seasoning. Garnish with almonds and parsley.