FutarchyOracleFactory

contract FutarchyOracleFactory
Title:Futarchy oracle factory contract - Allows to create Futarchy oracle contracts
Author:Stefan George - <stefan@gnosis.pm>
event FutarchyOracleCreation(address indexed creator, FutarchyOracle futarchyOracle, ERC20 collateralToken, Oracle oracle, uint8 outcomeCount, int lowerBound, int upperBound, MarketMaker marketMaker, uint24 fee, uint tradingPeriod, uint startDate)
EventFactory eventFactory
StandardMarketWithPriceLoggerFactory marketFactory
FutarchyOracle public futarchyOracleMasterCopy
constructor(FutarchyOracle _futarchyOracleMasterCopy, EventFactory _eventFactory, StandardMarketWithPriceLoggerFactory _marketFactory)
public

Constructor sets event factory contract

Parameters:
  • _eventFactory – Event factory contract
  • _marketFactory – Market factory contract
function createFutarchyOracle(ERC20 collateralToken, Oracle oracle, uint8 outcomeCount, int lowerBound, int upperBound, MarketMaker marketMaker, uint24 fee, uint tradingPeriod, uint startDate)
public
returns (FutarchyOracle futarchyOracle)

Creates a new Futarchy oracle contract

Parameters:
  • collateralToken – Tokens used as collateral in exchange for outcome tokens
  • oracle – Oracle contract used to resolve the event
  • outcomeCount – Number of event outcomes
  • lowerBound – Lower bound for event outcome
  • upperBound – Lower bound for event outcome
  • marketMaker – Market maker contract
  • fee – Market fee
  • tradingPeriod – Trading period before decision can be determined
  • startDate – Start date for price logging
Return:

Oracle contract