Marinate the fish pieces only with pinch of salt and leave it for 10 minutes.
Fire up the chulha or clay stove, add the wok or kadai and add the oil.
Add the fish when the oil is hot, fry it very carefully. Flip it once only. Fry it till light brown.
Fry all the fish in the same way and keep it aside.
Add 1 tbsp ghee in the oil and also the whole spices such as bay leaf, dry red chilis, cinnamon, cumin seeds, black pepper, cloves, and cardamom. Fry it for 1 minute.
Add the ginger and garlic paste. Fry it well.
Add the onion paste and salute it for 5 minutes, and then add the coriander powder. Add some boiled onion water. Stir it for 2 mins.
Add the yogurt while removing the pan from the fire but if you are doing it in the gas stove then make the flame low to add the curd and mix it well. In this way the yogurt will not have any extra air bubbles and it will mix well.
Add the cashew and raisin paste. (I have used raisins instead of sugar).
Cook it for 10 mins and add some lukewarm water to make the gravy according to desired consistency. Turn it to boil, add half spoon salt and then add the fried fish pieces.
Add the garam masala and a pinch or black pepper powder.
Cook it for 10 mins and add half spoon rose water, (you can add kewra water if you want).
Cover it with a lid for 5 mins and Fish Rezala is ready. Serve it with steamed basmati rice.