Giter VIP home page Giter VIP logo

bip-thomashartman-op_energy's Introduction

OP_ENERGY: A peer to peer energy derivatives market settled in bitcoin. 

********************
********************
********************

WHAT

Bitcoin provides free as in speech (not beer) value transfer transactions: a protocol for mutually distrusting parties to transfer value over a communications channel.

Bitcoin with OP_ENERGY provides free as in speech trading transactions: a protocol for mutually distrusting parties to trade energy derivatives, priced in hashes per bitcoin, over a communications channel. 

********************
********************
********************

WHY

OP_ENERGY empowers bitcoin and energy traders to make markets without the custodial and surveillance risks inherent to traditional currency, commodity, and altcoin exchanges.  

For instance, OP_ENERGY would enable an overweight bitcoin holder to reduce his bitcoin risk by opening a short position in hashes per bitcoin. The counterparty to this trade would be an overweight energy owner who believes the value of bitcoin will rise against energy, ie long hashes per bitcoin. 

Trades are just bitcoin (usually lightning) transactions, with all the privacy and security this entails. 

It's the ultimate free market.

Trading benefits: 

* alternative to custodial commodity exchanges for energy traders
* alternative to custodial forex and altcoin exchanges for bitcoin traders
* no custodial risk
* no surveillance risk, order books and trades are as private as coinjoin offers and mixes
* no oracle risk
* all market makers are equal -- no order book front running

Ecosystem benefits: 

* absorbs trade volume from competing currencies and cryptocurrencies into bitcoin
* increases miner revenue without increasing block size
* drives lightning adoption
* increases hashrate, making bitcoin more valuable while raising cost of 51% attack
* increases anonymity set of coinjoins
* makes bitcoin more valuable, private, and secure

Environmental benefits:

* prediction market for energy gluts and droughts
* incentivizes energy efficiency
* brings more green power online, sooner
* bottom-up incentives for energy efficiency complement top-down regulations and taxes on carbon emissions

********************
********************
********************

HOW 

SCARCITY

Energy is physical. 
Bitcoin is virtual.
Mining of bitcoin transactions is the bridge between the physical scarcity of energy and the virtual scarcity of bitcoin.

TRANSACTION FEES ARE THE FUTURE OF BITCOIN MINING

Currently miners are paid with newly minted bitcoin plus transaction fees.
But, bitcoin minting is capped at 21 million.  After this minting will end.
So eventually 100% of income to miners will be from transaction fees. 

TRANSACTIONS ARE SCARCE

No none knows exactly how much oil is left underground.
But everyone knows how much much bitcoin transaction data can be written into the blockchain over time.
The protocol limit is a one megabyte block per 600 seconds, or about four transactions per second.
For a global financial ledger, that's not a lot. So, transactions are expensive. Potentially, they are about to get a lot more so. 
A bitcoin civil war was fought to raise the block size limit, and the side that wanted the limit raised lost.
Scarce transactions make bitcoin valuable. Bitcoin hodlers, who set protocol rules, like that.

SCARCITY TRIANGLE

Q: What do bitcoins, bitcoin transactions, and energy, all have in common?
A: They're all scarce. 

Bitcoin users buy transactions from miners with bitcoin transaction fees. Miners buy these transactions with energy. 

The resulting 3-sided market is a scarcity triangle. 

    BITCOIN
     //\\
    A/  \C
   //    \\
  TXS=B=ENERGY

    BITCOIN
     USERS
     //\\
    A/  \C
   //    \\
BITCOIN=B=ENERGY 
MINERS    SOURCES

These are two views of the same triangle.

Transactions are bought from miners, with bitcoin transaction fees. (A)
Miners buy blocks of transactions with energy, via hashing. (B)
Energy is purchased with bitcoin for industrial use (which includes bitcoin mining) (C)

COST OF HASHES

A physical unit of energy is the kwh (kilowatt hour). This is about the amount of electrical energy a human can produce in ten hours, on an exercycle say. A virtual unit of energy measurement is the hash. A human can calculate a sha256 hash, also in about ten hours, using pen and graph paper say. Computers are much faster. A pocket phone can do thousands of hashes per second. What they have in common is, both the human and his pocket phone consume energy. Whatever technique is used, if it is fixed, it always takes strictly twice as much energy to calculate two hashes than one hash. This connection from hashes to energy is how the physical scarcity of energy connects to the virtual scarcity of bitcoin. 

DIFFICULTY: THE BLOCKCHAIN THERMOSTAT

Per the bitcoin protocol, blocks must be produced at the same rate, no matter how much energy -- or how little -- miners are spending, trying to collect precious bitcoin transaction fees. 
One block, with one megabyte of transactions, every 600 seconds. 
No more. No less.

If bitcoin is running too hot, transactions start coming in too fast.
If bitcoin is running too cold, transactions slow down.
Mining difficulty adjustment is a thermostat that keeps bitcoin running just right, at one block per 600 seconds.  The difficulty thermostat adjusts about every 1.2 million seconds (2016 blocks, or around 2 weeks).

A regular thermostat holds a house's temperature constant, by burning more or less energy to keep the temperature constant. The bitcoin difficulty thermostat holds the rate of bitcoin transactions per second constant, by increasing or decreasing the energy cost of block hashes. 

For example: If bitcoin is 10% too fast (averaging 540 seconds per block instead of 600), the block energy required for a hash increases by 10%. If bitcoin is 10% too slow (averaging 660 seconds instead of 600) the block energy decreases by 10%. 

Hashes are 64 digit hexadicimal (0 1 2 3 4 5 6 7 8 9 a b d e f) numbers. 

Low energy block hash:  00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048 (from 2009)
High energy block hash: 0000000000000000000aafac3a0d99cccbd4f62e3d08636bb9c242db366c7f73 (from 2020)

Due to its smaller numeric value (notice the leading zeros), producing the second hash required a billion to a trillion times more kwh (energy).

We must estimate the physical (kwh) energy spend, because we cannot know the exact amount of electricity kwh required to produce block hashes, nor the embodied energy kwh to produce hardware. But, we can with precision say how many hash attempts were expected statistically in each case, to produce the above hashes, and this information is accessible to the bitcoin protocol. The bitcoin protocol also knows the seconds of time that were required for block production, as this is needed for the difficulty adjustment. Miner revenue is also known. By convention, miners are paid in "sats" -- ie, satoshis, which are a hundred millionth of a bitcoin.

These three factors -- number of hashes, number of seconds, and miner reward -- can be used to calculate a protocol energy price for a span between any two blocks. OP_ENERGY proposes such a definition, which would result in the following 1-block trailing energy prices for the above hashes:

00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048 1-block OP_ENERGY price: 6 hashes / satoshi
0000000000000000000aafac3a0d99cccbd4f62e3d08636bb9c242db366c7f73 1-block OP_ENERGY price: 733 billion hashes / satoshi

todo: doublecheck above against current spec

OP_ENERGY -- TRADING THE THERMOSTAT 

A typical trader in today's world tries to predict if the usd / sat price of bitcoin will be lower or higher in some future period. If he predicts right, he increases his stack of bitcoin. 

A trader in an OP_ENERGY world tries to predict if the OP_ENERGY hashes / sat price of some range of future blocks will be greater than or less than some threshold value. Like the usd trader, if he predicts right, he increases his stash of bitcoin.

The key diffence with OP_ENERGY, unlike with USD, is that the bitcoin protocol has all the data it needs to fully specify the OP_ENERGY hash price. So this trade can be conducted purely following protocol rules, without trusting custodial exchanges or oracles. 

The simplest OP_ENERGY trades are binary options, which are exotic and difficult to trade. However, by composing a large number of binary options into a compound instrument, OP_ENERGY trades can simulate familiar instruments such as vanilla options and futures. This can be done while keeping trading fees low, even for extremely high throughput HFT. Thus, a modern derivatives market where a mainstream energy or bitcoin trader of today would feel at home, can be bootstrapped with OP_ENERGY.

For details, see BIP and whitepaper.

WHO

Thomas Hartman (originator and BIP writer)
ZoolandersDad (C++ and python implementation)
John Maeck (community building and strategic planning)
Many others who assisted

WHEN

Not for a while. Other procol stuff needs to happen first.
Estimate for OP_ENERGY mainnet inclusion, if on success path: five years


WHAT'S NEXT

Peer Review
Testnet implementation
Toy custodial exchange on testnet 
Toy custodial exchange on mainnet (small values, full KYC)
Real custodial exchange on mainnet (commercial product, hopefully proof of demand)
Proposal to implement on top of Blockstream Elements
Lobby bitcoin-like currencies such as litecoin for protocol inclusion
With proof of demand, lobbying for inclusion in mainnet bitcoin protocol

bip-thomashartman-op_energy's People

Contributors

tphyahoo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.