you can't fight speculators and prevent them from coming in, in fact all the things you said (the adoption by merchants) is going to bring even more speculators in. it is because of the price and the way it moves. as it is adopted more then there will be a price rise because of the increasing demand. and as that happens we will see more newbies and profit-seekers come in and price goes even higher.
as far as we don't lose the objective altogether (which is adoption as a way of payment) we are fine, even with lots of speculators and weak hands.
People trading bitcoin for fiat is fine, but what I'm saying is that we don't need speculators and we shouldn't pretend like the people who are buying bitcoin are somehow heroes and the people who sell it villains.
If people bought gallons of milk with bitcoin and used it to just help trade gallons of milk and boxes of cookies then you'd still know the value of bitcoin without fiat being involved.
You could also make the calculation that e.g. I can get 1 gallon of milk for 0.5 mBTC... I can get 1 gallon of milk for $3.00..... Therefore 0.5 mBTC = $3.... Therefore 1 BTC = $6,000
No bitcoin exchanges or speculators necessary. All you need is a farmer who sells milk and a baker who sells cookies.
Edit: If you come by North Pinellas county, Florida I will gladly sell you 1 gallon of milk for 0.5 mBTC.
Edit2: 0.5 mBTC sound more natural as 50 millibitcents, it also sounds cooler, at least to me... You could even drop the bit... and make it 50 millicents, as no other currency offers millicents it will obviously refer to bitcoin.
for years the community have discussed the common terminology of the future
and it became apparent when the time comes that saying 'zero point zero zero" gets too irritating that we would use 'bits' (100 sats) instead
EG gallon of milk = 500bits
...
also the mbtc which is 10,000sats gets more confusing with the word Milli and Micro,, where micro is actually (ubtc) which is only 100sat
because if we started doing mbtc (10,000 sats) it wont be long before people (as you shown above) would start saying 'zero point five' for a gallon of milk or 0.1mbtc for a litre.. or "zero point zero five mbtc" for a pint of milk
so its better to skip the mbtc and go to ubtc (100 sats) aka 'bits'
the whole is a 'Mbtc' a milli or a micro. is confusing conversationally anyway.
and also milli is just a temporary thing which by the time it becomes common. its time to change again.
so much easier to just jump to 'bits' (100sats(ubtc(microbtc))) so that people can get used to on a more permanent terminology that 1 bit has 100 divisions. which most people around the world are used to