/ dod-whitepaper-draft.txt
dod-whitepaper-draft.txt
  1  ****** Before — After — Bridge ******
  2  
  3  
  4  Before — This will be the first section of your white paper. In it, you describe the reader’s world as it is right now. Provide as much detail as you can to create a gap where your solution will fit or foreground a lack that will need to be fixed for that world to be perfect.
  5  
  6  [
  7  	Where we are now, crypto options are a nasent market defined by a variety of on-chain amm, off-chain order books, request for quote systems and OTC systems targeting primarily to traders. These leverage oracles of all sorts, stablecoins (usually centrlized ones or ones dependant on off chain credit origination) and a variety of underlying tokens/nfts on particular chains.
  8  ]
  9  
 10  After –In this section, you will paint a world where the problem you foregrounded and highlighted in the first section is solved. Bring the readers to imagine that world and how better it is than what they know.
 11  
 12  [
 13  	In the future, dex crypto options represents on the deeps markets for on chain liquity, where un collateralized lending markets are heavily active buyers of option to hedge their loan books on the long tail of tokens/nfts collateral, traders pricing and hedging those options for them while leverating a credit system that is no longer overly reliant upon  stablecoins built on off chain originated credit.
 14  ]
 15  
 16  Bridge — This is the last section, and it is where you describe your solution as what makes the new, better world possible. Describe the solution’s design, protocol, and implementation process concerning the reader’s ability to comprehend the technical aspects. In essence, in this section, you are presenting your solution as the bridge between the current world and the possible better world.
 17  
 18  [
 19  	DeFI Options DAO is defined as a Decentralized Options Exchange where the parameters can be governed by token holders. 
 20  	This includes:
 21  	 - exchange contract
 22  	 	- options books
 23  	 	- options registered
 24  	 	- pools registered
 25  	 	- erc20 token that represents an address exchange balance
 26  	 	- trades facilitation
 27  	 	- settlement facilitation
 28  	 - underlying vault
 29  	 	- inteface
 30  	 	- storage of underlying tokens collateral used for covered calls not marked for rehypothecation
 31  	 	- vault shares
 32  	 - what oracles traders can use
 33  	 	- dex twap aggregators
 34  	 		- inteface
 35  	 	- underlying feeds abtraction
 36  	 		- chainlink, pyth, etc
 37  	 		- interface
 38  	 - the differet collateral models (including support for portfolio margin) that can be used for the assets
 39  	 	- default model
 40  	 	- portfolio margin
 41  	 	- how stable/udl token shortages/surplus are factored
 42  	 - credit systems (on for stablecoins and another for each individual) underlying assets
 43  	 	- stablecoin credit system
 44  	 		- creation/destruction
 45  	 			- creation
 46  	 				- deposits of stables
 47  	 				- when hedging manager enabled on pool approved for borrowing collateral
 48  	 			- destruction
 49  	 				- withdrawals of stables
 50  	 				- when hedges closed enabled on pool approved for borrowing collateral
 51  	 		- internal debt creation/destruction
 52  	 			- destruction
 53  		 			- gains from providing liquidty for traders hedging
 54  		 		- creation
 55  		 			- losses from address exceeding their collateral deposited
 56  		 			- losses from providing liquidty for traders hedging
 57  		 			- losses from rehypothecated collateral
 58  	 	- underlying asset credit system
 59  	 		- creation/destruction
 60  	 			- creation
 61  	 				- deposits of underlying token
 62  	 				- when hedging manager enabled on pool approved for borrowing collateral
 63  	 			- destruction
 64  	 				- withdrawals of underliying token
 65  	 				- when hedges closed enabled on pool approved for borrowing collateral
 66  	 		- internal debt creation/destruction
 67  	 			- destruction
 68  		 			- gains from providing liquidty for traders hedging
 69  		 			- gains from rehypothecated collateral
 70  		 		- creation
 71  		 			- losses from address exceeding their collateral deposited
 72  		 			- losses from providing liquidty for traders hedging
 73  		 			- losses from rehypothecated collateral
 74  
 75  	 - hedging contracts that interface with other protocols that can help offest a traders options exposure (as well as originate credit for those hedges that is destroyed upon expiration of the options/closing of the hedges)
 76  	 	- ideal exposure calc
 77  	 	- current esposure calc
 78  	 	- rebalancing
 79  	 	- interface
 80  	 - credit tokens that can be redeemed over time for stables coins/underlying assets at an interest rate from the protocol when there is a shortage of the underlying assets
 81  	 	- stablecoins
 82  		 	- define redemption conditions
 83  		 		- can redeem when stables >= credit
 84  		 		- can redeem % debt outstanding owned * (% stables / credit) * stables available, when stables < credit
 85  		 			- once every dao defined withdrawal period
 86  		 	- erc20
 87  		- underlying asset
 88  			- define redemption conditions
 89  				- can redeem when udl token >= udl credit
 90  		 		- can redeem % debt outstanding owned * (% udl token / udl credit) * udl token available, when udl token < udl credit
 91  		 			- once every dao defined withdrawal period
 92  		 	- erc20
 93  	 - rehypothication contracts that traders+DAO have to approve where they want their collateral they provide to sell options against, can be deposited/withrawn from external protocols for additional yield.
 94  	 	- interface
 95  	 - liquidity pools that price options based on uploaded pricing surfaces that update automatically with oracle pries or can be static (this can be abstracted in frontends to look like typical limit orders).
 96  	 	- pricing:
 97  	 		- surface (https://thomasvilhena.com/2021/03/a-linear-interpolation-based-liquidity-pool)
 98  	 		- pulled from external amm
 99  	 	- lp tokens
100  	 		- anyone
101  	 			- to any one who deposits 
102  	 		- permissioned
103  	 			- only to owner defined on pool creation
104  	 	- conditional hedging
105  	 		- hedging manager defined
106  	 		- min dollar threshold in oi to hedge
107  	 	- governace
108  	 		- uses lp tokens as the governance token, not DAO governance token
109  	 		- adding what options to buy/sell
110  	 		- setting updating option price surfaces
111  	 		- setting underlying price range when to allow for buying/selling options
112  	 	- interface
113  	 - incentivization functions users can call that manages the exchange
114  	 	- underlying feed stats updates
115  	 	- liquidations
116  	 		- before
117  	 			- first try(only if more than 24h until expiration, else will just liquidate): collateral call
118  	 			- second try : liquidation
119  	 			- liquidation fee and penalty payed to DAO
120  	 		- after maturity (settlement)
121  	 			- settlement fee payed to DAO
122  	 - protocol goverance and settings
123  	 	- function setCirculatingSupply(uint supply) external;
124  	 		Allows token holders to set the circulating suply of dod, can not be set smaller than the previously set setting, cannot exeed that max supply for the token
125  	    - function setTokenRate(address token, uint v, uint b) external;
126  	    	Sets the decimal normalization used to adjust the tokens decimals to the decimals DOD uses internally
127  	    - function setAllowedToken(address token, uint v, uint b) external;
128  	    	Sets the allow stable coin
129  	    - function RemoveAllowedToken(address token, uint v, uint b) external;
130  	    	Removes a previously the allow stable coin
131  	    - function updateCreditWithdrawlTimeLock(uint duration) external;
132  	    	Sets the rate at which and address holding credit tokens can redeem them for stables/underlying tokens, defaults to 24 hours, min 2 hours max 48 hours
133  		- function applyCreditInterestRate(uint value, uint date) external view returns (uint);
134  			Applies the interest rate the DAO is willing to pay on credit tokens
135  	    - function setUnderlyingCreditInterestRate(uint i, uint b, address udlAsset) external;
136  	    	Applies the interest rate the DAO is willing to pay on underlying credit tokens on a particlar asset
137  	    - function setDebtInterestRate(uint i, uint b, address udlAsset) external;
138  	    	Applies the interest rate the DAO wants to charge on DAO issued credit
139  	    - function setUnderlyingDebtInterestRate(uint i, uint b, address udlAsset) external;
140  	    	Applies the interest rate the DAO wants to charge on a particlar asset
141  	    - function setUdlCollateralManager(address udlFeed, address ctlMngr) external;
142  	    	Approved the allowed collateral manager for a paricualr underlying feed
143  	    - function setDexOracleTwapPeriod(address dexOracleAddress, uint256 _twapPeriod) external;
144  	    	Sets the dex twap oracle period, min 2 hours, max 1 day
145  	    - function setBaseIncentivisation(uint amount) external;
146  	    	Sets the amount of credit the DAO wants to issue to an address for calling the incentivized functions on the exchange
147  	    - function setProcessingFee(uint f, uint b) external;
148  	    	Sets rate the DAO wants to have when processing liquidations and settling ITM options, does not included hard coded rate for liquidations
149  	    - function transferTokenBalance(address to, address tokenAddr, uint256 value) external;
150  	    	Tokens stored in protocol settings address and be transfered by DAO
151  	    - function transferBalance(address to, uint amount) external;
152  	        Credit balance of protocol settings (from fees and liquidations) address and be transfered by DAO
153  	    - function transferGovTokens(address to, uint amount) external;
154  	    	Governance tokens held by DAO in protocol settings can be transfered by DAO
155  ]
156  
157  ****** Features — Advantages — Benefits (FAB) ******
158  
159  This is another white paper template you can use. It focuses more on the solution you are presenting to the reader or the target customer. This is best suited when the solution you are presenting is meant for a problem that is almost obvious to the reader.
160  
161  Features — In the first section of the white paper will break down and describe the features of your solution. For example, if you are introducing a new blockchain, you will describe the mining or consensus process, the network architecture, and the wallet design.
162  
163  Advantages — In this section, you will describe what things give the solution a better chance at succeeding. Still, on your new blockchain, you can describe the capacity of the team behind it as well as the resilience of the technology you are using.
164  
165  Benefits — This is the most critical part because it is what will sell your solution. People are always interested in how something makes their lives better. Describing benefits is about showing people how the solution will improve the quality of their life or that of their business.