Hi,
When you let a parrot sit on top of his cage all day, and come and go as he pleases, he is less likely to do what you want him to do. The best thing to do is stick train him if he won’t step up on your hand. Instead of letting him sit on his cage all day, get him a playstand for when he is out. When allowed to sit on his cage, he sees no reason to go inside to sleep, since he is higher when he is on top of the cage. Parrots prefer the highest point when sleeping. Train him to step up on a stick, and stay on a playstand. Then when you want him to go in his cage, put his favorite treat in the cage and put him in his cage. Here are links to our training and behavior pages to give you more information:
Teaching Your Bird
Pet Bird and Parrot Behavior
Thank you for Asking Lafeber,
Brenda