If we adhere to theory — ghosts are deceased humans, while demons and angels are not of earthly origin. Both are known to have stronger powers than your average ghost. You’ll find a demon more apt to move objects and possess the human body, just as you’ll find an angel more awe inspiring and willing to help the suffering human condition than a ghost.
Why would a demon be stronger than a ghost, or deceased human? Depending on our beliefs, we can understand why angels, blessed with powers from higher dimensions are maybe stronger than deceased humans, but why a demon? In fact, why either entity since we too are of the same cosmic fabric? If I had an answer it would be “experience” or that they have been in that realm for so much longer. When we cross over, that is relatively new territory for many souls. For demons and angels, this is their long endured habitat and home. The demon is cunning and the angel enlightened. Really, you can think of it as a good/bad adult (demon/angel) dealing with an inexperienced child (ghost). They hold the experience we lack and are full of tricks (demons), or miracles (angels) of which either inspire or frighten us. Ị also think miracles and tricks are inherent in us too, but they are more readily accessible and producible by these beings because this is what they have been doing for many life-times. I think our abilities and faults are a microcosm of theirs.
With this said, it doesn’t mean that ghosts cannot be the very thing angels and demons are. An entity, once human, can descend or ascend into either characteristic. A child, once loved on earth, can come back and lift the spirits (literally) of those most dear to it and be called an angel. A person who has crossed over from irreparably painful circumstances can spiral into negativity and do demonic things.