BMAX: pricing “sats now vs sats later” via a mining sharechain (no L1 changes, no custodians, no oracles)

I wouldn’t go that far; it’s just that the price pressure on a future BTC seems to narrow to 1:1 – if I want to have 1 BTC in ten years’ time, then if I already have 1 BTC (or more) that’s obviously easy, I just time lock 1 BTC somewhere; but if I have less than 1 BTC, exchanging that for some other good, and then hoping I can sell it for a BTC-denominated profit soon doesn’t seem very safe.

For inflationary currencies, the opposite is true – trade $100k for shares, or gold, or land, or a bunch of other things, and you’ll probably end up with more than $100k if you sell it a few years later, even without involving a counterparty, or adding value to whatever you bought before you sell it.

So to me, the risk free rate is just a different measure of currency inflation vs real goods. The “time value of money”, where you’re getting a zero-effort profit by loaning someone money now and (hopefully) getting repaid later, adds counterparty risk (whether that be the borrower directly, the intermediary bank, or the guaranteeing insurnace firm, government, or currency issuer) and gets you an corresponding profit.

I don’t think you get the same “get interest on your bank deposits with 0 risk” behaviour if you don’t have a currency issuer that can turn large scale defaults into just an inflationary shock.

That’s how I look at it, anyway. YMMV obviously.

So the way I’d look at this is that the counterparties here are future miners vs present share holders, and via the FIFO queue, the risk that’s created is how long it will take the queue to drain so that you receive your funds.

I’m not really following the logic for the unbonded shares though; it seems buggy to me. Suppose when the sharechain is new, I mine 50% of shares with 1% of global hashrate over a two week period, and leave all my shares unbonded. In that case, the sharechain will get ~40 blocks in a two week period, my shares will be selected for 50% of them, and I’ll get 20 blocks worth of reward, same as I would on any other pool. But then if I stop mining, over the next two week period only ~20 blocks will be mined, but my shares are still eligible to be selected, and that will happen about 33% of the time, so I’ll get an additional ~6 blocks worth of reward.

So I think at that point everyone else would abandon the sharepool as non-competitive and it would die (since ongoing participants are losing funds to me whether or not they bond their shares). I think similar logic applies after the long term – once there’s any substantial amount of unbonded shares in the pool, creating new shares by mining into the sharepool isn’t going to be profitable compared to mining against some other pool. So I think you need a rolling window of some sort for unbonded shares, rather than a perpetual claim.

Assuming that’s fixed somehow, recasting it as a “miners insurance” type scheme, rather than a “time value of BTC” thing, would look something like:

  • if your shares are unbonded, you have a chance of getting a big reward
  • if your shares are bonded, you will definitely get a smaller reward, but it will be delayed (both due to the time it takes to gather enough unbonded shares to buy a bonded share, and the time for the bonded FIFO queue to get to your share)

Targeting the expected value of both those to be roughly R \cdot \frac{D_S}{D_B} should be plausible and make the pool viable.

If you imagine there was some safe way for the sharechain to store rewards then distribute it later (very non-trivial ofc), you could make the rule be that each share found for a 2016 block retarget period (at constant target difficulty D_B) accrues a total block reward of nR, which is then distributed evenly, with roughly \alpha n R BTC going to bonded shares, and the remaining (1-\alpha) n R BTC going to to n lucky unbonded share holders.

That would involve bonded and unbonded share holders getting their payouts at exactly the same time, so there’s no conflict between present and future value, just a risk tradeoff. You could probably have the bonded payouts suffer a penalty that increases the unbonded miners’ payouts, perhaps encouraging more participation by large miners, helping to make your pool more viable.

If you’re targeting both forms of reward to have similar present value to mining in a regular pool, then you’re already distributing 100% of the block reward, and I don’t think you have any degrees of freedom left to get interesting behaviour over the long term.

If you look at it as going from a 1-in-a-million chance at a million dollars vs a 1-in-1 certainty of $1, you could perhaps consider mid-range shares as well, where you might have a 1/10000 chance at $10,000 or a 1/100 chance at $100, so to speak. ie, the fundamental limit might be that you can have 1000 outputs per block reward, but you have 1,000,000 shares per block on average, then each share has a 1/1M chance of a 3.125BTC reward, and you could combine 1000 of them to have a certainty of a 3.1mBTC reward, but perhaps you could provide 100 of them to have a 10% chance of a 3.1mBTC reward, or 1000 of them to have a 1% chance of a 0.3BTC reward.

Selling (bonded) shares for immediate BTC on an open market with an automated market maker would likely be very useful, allowing miners to be immediately liquid, without requiring the pool to act as an insurer. I expect there’s significant demand for a facility like that.