Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Synthetic PoW Mining Index formula #9

Closed
0xSSoul opened this issue Jul 1, 2019 · 4 comments
Closed

Synthetic PoW Mining Index formula #9

0xSSoul opened this issue Jul 1, 2019 · 4 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@0xSSoul
Copy link
Member

0xSSoul commented Jul 1, 2019

Background

A basic principle that has been agreed upon is that the index is only related to the reciprocal of mining difficulty.

As a result, the form of Bitcoin Hashrate Contract Index is something like:

  • Difficultyi is the mining difficulty of Bitcoin at the contract expiration.
  • Constant is a fixed scaling factor.

The discussion of the index converges to the discussion of Constant.

Candidate 1

The first index candidate makes the index equal to the math expectation of 10T/s Hashrate mining revenue in 14 days.

  • 10T/s is in the same order of the hashrate of Ant S9 (14T/s), which has the largest number in BTC network.
  • 14-day (2016 blocks) is the difficulty adjustment time interval in Bitcoin.

Let Constant as below:

Parameter Value Note
HashrateUnit 10 13 Hash/s 10 T hash
N 2,016 Number of blocks per difficulty cycle
Coinbasei 12.5 BTC per Block Block reward halves every 21,000 blocks
TargetBlockTime 600 s Target block time for bitcoin is fixed at 10 minutes

Contract Size
1 WBTC per index point.

Pros

  • This index has a clear physical meaning.
  • Easy to trade: miners can hedge the 14-day mining difficulty risk of 10T/s hashrate by entering one short position (buy one short position token)

Cons

  • Formula is too complex to understand.
  • The index number is a little too small: It is in the order of 10-3

Candidate 2

The simplest index. Let Constant be 1, which leads to the index as below:

Contract Size

1 WBTC per index point. 1012(1T) index point per contract.
For now (2019/07/07), the difficulty is about 7.9T, so it is 0.126WBTC per contract.

Pros

  • Very simple.

Cons

  • No physical meaning.
  • Not easy for traders: Miners need UI/UX tools to simplifiy the trade.
  • Due to the limit of Market Protocol, index reported by the Oracle will be the index multiplex 1012.

Candidate 3

Combine candidate 1 and 2.

Use index from the candidate 2:

Contract Size

1 WBTC per index point. Constant index point per contract.

  • Constant is from the candidate 1.

Pros

  • The index looks very simple.
  • The contract position is relative to a physical meaning.
  • Easy to trade like candidate 1.

Cons

  • Due to the limit of Market Protocol, index reported by the Oracle mayl be the same as candidate 1.
@CarboClanC CarboClanC changed the title Index of Hashrate Revenue Swap Synthetic PoW Mining Index formula Jul 6, 2019
@CarboClanC CarboClanC added the documentation Improvements or additions to documentation label Jul 6, 2019
@CarboClanC
Copy link
Member

Please verify whether the difficulty coefficient is 2^32 for the denominator of the Ethereum Mining Index as well.

@0xSSoul
Copy link
Member Author

0xSSoul commented Jul 10, 2019

After talking with the member from Market Protocol, I propose the index candidate 4:

Candidate 4

This candidate makes the index equal to the math expectation of 100P/s (100,000T/s) Hashrate mining revenue in 1 day.

This candidate has the same formula with candidate 1, but use the parameters below:

Parameter Value Note
HashrateUnit 10 16 Hash/s 100P (or 100,000T) Hash/s
N 144 Number of blocks per difficulty cycle
Coinbasei 12.5 BTC per Block Block reward halves every 21,000 blocks
TargetBlockTime 600 s Target block time for bitcoin is fixed at 10 minutes

Today's difficulyt is 9.06T, and the index is 2.774.

Use 100P/s rather than 10T/s of candidate 1 is because:

  • It makes the integer part of the index has 1 significant digit
  • 100T is near the hashrate of 10,000 Ant S9. 10,000 S9 need about 10MW power resource, which is a biasic unit of mining fields.

Contract Size

1 WBTC per index point. 0.001 index point per contract token.

  • 0.001 makes one contract token price at the order of $10.

Pros

  • This index has a clear physical meaning.
  • Easy to trade: miners can hedge the 1-day mining difficulty risk of 100T/s hashrate by entering one short position (buy one short position token).
  • The integer part of the index has 1 significant digit.
  • A small order of contract size to trade.

Cons

  • 100P/s (100,000T/s) is a little too large to remember.

@0xSSoul
Copy link
Member Author

0xSSoul commented Jul 12, 2019

Candidate 5:

This candidate makes the index equal to average daily bitcoins mined by 1T/s hashrate over the last N days

Same as the previous candidate, this index is only related to the reciprocal of mining difficulty. Rather than one difficulty number in the previews formulas, this index uses last n difficulty numbers.

The formula is below:


where:

  • T is the number of difficulty adjustments during N days. Let T=N/14
  • Difficultyi is the value of difficulty after the i-th last difficulty ajustement
  • K is a scaling factor as blew:

Parameter Value Note
HashrateUnit 10 12 Hash/s 1T hash
TargetBlockTime 600 s Target block time for bitcoin is fixed at 10 minutes
Coinbasei 12.5 BTC per Block The block reward at i-th last mining difficulty adjustment.
Block reward halves every 21,000 blocks.
NBlock 144 Number of blocks per day
K 251457095 havles as Coinbasei halves

As the difficulty ajust every 2016 blocks, which is roughly 14 days, the N of index is set to be a multiple of 14.
The index is named BME{N} (Bitcoin mining earnings N days), where N is the days of the index, eg. BME28, BME84.
Before the next block reward halves, the index is changed whenever the difficulty adjusts.

Examples

Height Time Difficulty BME14 BME28 BME84
572,544 2019-04-21 09:54:28 6,353,030,562,983 3.958E-05    
574,560 2019-05-04 16:32:13 6,702,169,884,349 3.752E-05 3.855E-05  
576,576 2019-05-18 16:31:36 6,704,632,680,587 3.750E-05 3.751E-05  
578,592 2019-05-31 06:43:04 7,459,680,720,542 3.371E-05 3.561E-05  
580,608 2019-06-14 09:03:50 7,409,399,249,090 3.394E-05 3.382E-05  
582,624 2019-06-27 10:59:30 7,934,713,219,630 3.169E-05 3.281E-05 3.566E-05
584,640 2019-07-09 17:17:48 9,064,159,826,491 2.774E-05 2.972E-05 3.368E-05

Contract Size

  • 1 WBTC per index point. 1 index point per contract.

Pros

  • This index has a clear physical meaning.
  • Easy to trade: miners can hedge the 84 days mining difficulty risk of 1T/s hashrate by entering short position (buy 84 short position tokens) of BME84 expires in 84 days.
  • It is comparable with the "mining earnings" of btc.com, which it is a well known number. Actually, BME14 should be the same with "mining earnings" of btc.com.

Cons

  • The index is in the order of 10E-5, which is too small to remember.

@0xSSoul
Copy link
Member Author

0xSSoul commented Jul 14, 2019

Candidate 5 is accepted by governance meeting July 14th 2019.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

3 participants