In a large soup pot over medium-low heat, drizzle a couple tablespoons of vegetable, olive, or coconut oil. Add the onion. Allow to cook for 5-10 minutes until soft. Add the ginger and garlic and saute a few minutes more, until fragrant. Season with salt.
Add the spices, stir well, and allow to cook for another minute or two. Add the yam and squash, stir. Finally, add the apple, and stir some more. Season with salt.
Add the stock, and increase the heat to bring it to the boil. Once at a boil, turn down the heat so that it is at a simmer. Allow to simmer until the vegetables are very soft.
Drain the soup, reserving the stock. Puree the vegetables until smooth, then add them back into the pot with the reserved stock. Mix until all is incorporated, and bring back up to a simmer. Add the coconut milk and stir well. Adjust seasoning and serve! I garnished mine with a little drizzle of maple syrup.
You could also make this in the slow cooker.