You're assuming a stagnant rank calculation where one sale on one day means something. That's not how it works, because rank is updated hourly. If a book is at #1000 after one sale, then gets 1000 sales in the next hour and just one again in the third hour, the rank doesn't go from #1000 to #1, then back to #1000.
The calculation used for rank also takes into account previous hours' sales, going back perhaps ten days. Each previous hour's sales count for less in the equation. For instance, and to make this easier, assume a 100-hour period is used. This hour's sales will count for 100 points in the rank score. The previous hour's sale will count for 99 and the hour before that, 98, going all the way back to four days and four hours ago (100 hours) when that hour counts for 1 point. Let's say that ten hours ago, a book has a single sale. That sale counted for 100 digits in the calculation in the hour it happened, but counts only 90 digits now. In 101 hours, that sale will no longer be a part of the calculation.
Computers keep track of every hour's sales of every book and each hour that passes, each of those sales counts for less. Every hour, the computer adds up all the points accumulated and compares that number to every other book, arranging them in order from the highest to the lowest and each book is assigned a rank for that hour from top to bottom. If no sales occurred in the current hour, the rank is still going to change, because other books did have sales that hour.
Then the other variable you haven't mentioned is the lag between when a purchase is actually made and when that purchase affects rank. That's usually about five to six hours.
Trying to tie rank to sales is like trying to nail Jello to the wall. The dashboard tells you how many sales and the product page tells you the rank. There's no need to try to figure out what one is based on the other when both are given.