Heat the butter and oil in a large lidded saucepan. When hot, add the onion and fry gently until softened. Stir in the spices. Add the cabbage and fry for 3-4 minutes, stirring occasionally, until glossy.
Stir in the sugar, apples and red wine vinegar. Cover with a lid and let it cook gently for 30 minutes.
Stir in the redcurrant or cranberry sauce (if using) and cook for a further 10 minutes. If you aren’t using the sauce, taste the cabbage and add a little more sugar if it’s too tart for your taste.
The cabbage should be cooked for 15-20 minutes more if it isn’t finely shredded.
This dish freezes well. Let the cooked cabbage cool completely, then transfer to a freezer-safe container (it will keep in the freezer for 3 months). Defrost in the microwave or overnight in the fridge. Reheat in a microwave or in a saucepan on the hob.