user257: Should make things smoother and result in less oscillation. Is there a reason why retargetting is only every 2016 blocks?

user2324: Retargetting every block based on the time from the last found block would result in a ridiculous oscillation - as compro01 writes. But if the target is based on the time for the last 2016 blocks, but evaluated every block, this would be a sliding window and I don't see why it wouldn't work. But most likely it is difficult to have consensus this way which doesn't result in a chain fork, as every node has to have the same opinion.  

user3310: Retargeting on every block would result in ridiculous oscillation in the difficulty level when there's a hot streak and several blocks are found in short succession or a cold streak where a block isn't found for a long period.
As for why it's 2016, at an average rate of 1 block per 10 minutes, it readjusts fortnightly.
Why 10 minutes was picked is unknown, AFAICT.

user52021: The update frequency results in some trade-offs.
Faster updates increase the exposure to isolation attacks-- where a partitioned part of the network speeds back up to the nominal speed. Faster updates also increase the amount of oscillation possible.  On the plus side they make the network respond faster to changes.
Many altcoins have changed to faster rules, but the vast majority have managed to do it in wrong and vulnerable ways.  For example: Some apply a sliding window filter but then apply the same change over and over again instead of it's n-th root, causing massive oscillation.  Others use the timestamp of the immediately prior block to set the current difficulty-- this lets you set your timestamp slightly lower than you should in order to make the next block have epsilon higher difficulty and thus guarantee it will win in a race due to having more total work.  Other schemes have wild non-linearities that make it a lot more profitable for miners to mine in bursts rather than continually.
When I look at all the different ways other rules have been messed up, and how inconsequential the 'slow' updates in Bitcoin have been in practice. I think Bitcoin's creator made a good decision, all considered.

user208: I suppose the only right answer is "because that's how Satoshi implemented it". His reasons for doing may have included easy of implementation, easy to guarantee consistency among nodes, or little worry about instability of correction algorithms.

257: <p>Should make things smoother and result in less oscillation. Is there a reason why retargetting is only every 2016 blocks?</p>
 2324: <p>Retargetting every block based on the time from the last found block would result in a ridiculous oscillation - as compro01 writes. But if the target is based on the time for the last 2016 blocks, but evaluated every block, this would be a sliding window and I don't see why it wouldn't work. But most likely it is difficult to have consensus this way which doesn't result in a chain fork, as every node has to have the same opinion.  </p>
 3310: <p>Retargeting on every block would result in ridiculous oscillation in the difficulty level when there's a hot streak and several blocks are found in short succession or a cold streak where a block isn't found for a long period.</p>

<p>As for why it's 2016, at an average rate of 1 block per 10 minutes, it readjusts fortnightly.</p>

<p>Why 10 minutes was picked is unknown, AFAICT.</p>
 52021: <p>The update frequency results in some trade-offs.</p>

<p>Faster updates increase the exposure to isolation attacks-- where a partitioned part of the network speeds back up to the nominal speed. Faster updates also increase the amount of oscillation possible.  On the plus side they make the network respond faster to changes.</p>

<p>Many altcoins have changed to faster rules, but the vast majority have managed to do it in wrong and vulnerable ways.  For example: Some apply a sliding window filter but then apply the same change over and over again instead of it's n-th root, causing massive oscillation.  Others use the timestamp of the immediately prior block to set the current difficulty-- this lets you set your timestamp slightly lower than you should in order to make the next block have epsilon higher difficulty and thus guarantee it will win in a race due to having more total work.  Other schemes have wild non-linearities that make it a lot more profitable for miners to mine in bursts rather than continually.</p>

<p>When I look at all the different ways other rules have been messed up, and how inconsequential the 'slow' updates in Bitcoin have been in practice. I think Bitcoin's creator made a good decision, all considered.</p>
 208: <p>I suppose the only right answer is "because that's how Satoshi implemented it". His reasons for doing may have included easy of implementation, easy to guarantee consistency among nodes, or little worry about instability of correction algorithms.</p>
