If you move fast then you can't get all points where you moving that's why your equation going wrong..
Solution:
Use Line Intersect equation.. For line intersect you need four x-y value. You have already two x-y value from line and third x-y value is current touch event and forth x-y value should be last touch event.
int lastX;
int lastY;
int currentX;
int currentY;
case MotionEvent.ACTION_MOVE:
currentX = event.getX();
currentY = event.getY();
//your line intersect code
lastX = event.getX();
lastY = event.getY();
break;
Some Link for Line Intersect: