Preheat oven to 160 fan and grease and line a 2lb loaf tin with baking paper.
Zest and juice the orange and add the sultanas. Heat in the microwave for 1-2 minutes until plumped up.
For the cake, whisk the eggs, sugar, vanilla and oil together until combined. Add the orange juice and sultanas and mix. Add the flour, bicarb and spices and briefly mix. Fold through the apples and nuts and pour into the tin. Bake for 50-60 minutes or until a skewer comes out clean. Leave to cool on a wire rack.
To make the compote, melt the butter in a saucepan, add the chopped apples, sugar and vanilla. Cook for 10minutes so the apples are still holding their shape. Add the cinnamon, mix well then leave to cool.
For the frosting, beat the butter and icing sugar together until smooth. Add the cream cheese, orange zest, cinnamon and vanilla and beat until soft and smooth. Spread over the top of the cake and top with the apple compote.