According to Luke’s feedback, the first thing I should deal with is the overlapping problems of the head (neck) part.
When the body comes down, the head movement should be going up.
When the body is up, the head falls with it (if I understand it correctly).
So I adjust the head movement (graphic editor) like this:
Then I found that the twisting amplitude of the whole body was too large and needed to be slowed down.
Adjust the rotate xyz of the waist
After adjusting the curve, the character formed a Diagonal circle, but I found her moving very weird…
Next, adjust the frame by frame.
Adjust the trajectory of waist xyz respectively to make the (curve) movement smooth
Next is the optimization of the elbow and wrist. Obviously, their movement range is too large to reduce the curvature.
This is my final optimized effect: