Tokens Are Back In Style

Tokens Are Back In Style

By CPix | Everything Crypto | 22 Dec 2020


What a fantastic day for DeFi. No, wait! What a epic day for Ethereum. Woah, hold up! What a phenomenal day for all of crypto!

December 17, 2020 marked the launch of The Graph Mainnet. The Graph is a necessary tool for the Ethereum space handling thousands of query requests per second for dapps of all shapes and sizes.The Graph is an indexing protocol for querying data on networks like Ethereum and IPFS. It powers thousands of applications in both DeFi and Web3 ecosystem. The great thing about The Graph is anyone can build and publish open APIs, called subgraphs. These applications can then be queried using GraphQL to get vital blockchain data. For the first couple years The Graph lived on a hosted platform with potential for critical failures due to centralization risks but now with the launch of mainnet will be more robust and distributed globally thanks to hundreds of indexers located all around the world. The Graph is used for dapps like Uniswap, Synthetix, Aragon, AAVE, Gnosis, Balancer, Livepeer, DAOstack, Decentraland and thousands of others. But that isn't even the crazy part! The Graph usage has been growing at over crazy rates and recently did somewhere in the ballpark of 10 Billion queries in November.

The Graph is built up of a core team who started the project and an inspirational community of thousands from 100+ countries. There are investors from the public sale, indexers who run hardware and software to handle the network, delegators who essentially stake based on Indexer strength, and curators who signal strength of well developed and useful subgraphs. All together this project brings together talents of all kinds to accomplish the dream of all crypto enthusiasts, an open Web3 ecosystem.

Now to The Graph's native token $GRT. GRT is what indexers stake and delegators/curators signal with to prove they have skin in the game essentially creating incentivized Token Economics for participants in the network. GRT has a Total Supply of 10,000,000,000 tokens with an initial supply of just over 1,200,000,000 tokens. More information on the token distribution and economics can be found in the link provided. With all the major exchanges such as Coinbase, Binance, Kraken, Uniswap, Huobi, and many others already listing or in the process of listing GRT, anyone interested in participating in the network can easily do so.

   

Market Update (Monday 9:30 AM ET)

Percent Change (Rounded) Based on Last Monday Open (9:30 AM ET)

Bitcoin- $22,750 (+15%)

Ether- $610 (+5%)

Gold- $1,879 (+3%)

DJI Average- 30,159 (UNCH)

NYSE Composite Index- 14,467 (UNCH)

NASDAQ Composite Index- 12,804 (+3%)

S&P500 Index- 3,684 (UNCH)

Share

New Developments

  1. Bitcoin Whale Emerges With $1 Billion, Alan Howard’s Backing, Bloomberg

  2. UK Investment Manager Ruffer Adds Bitcoin to Portfolio, CaseBitcoin

  3. CME Announces Ether Future Contracts, CoinDesk

  4. Coinbase Files Form S1 With SEC For IPO, Coinbase Blog

  5. Tornado.Cash Governance Proposal, Tornado Cash

  6. The Graph’s Flight Path To Mainnet, The Graph Blog

  7. Pornhub: Now Accepting Crypto Only, Decrypt

  8. Introducing Compound Chain: Distributed Ledger to Transfer Value, Compound

    compoundfinance.jpgCompound Labs @compoundfinance Today, we're excited to share the whitepaper for Compound Chain, a distributed ledger capable of transferring value & liquidity between peer ledgers. compound.cashhttps%3A%2F%2Fpbs.substack.com%2Fmedia%2FEpdgeEIUYAIX4I-.jpg

    December 17th 2020

    78 Retweets298 Likes

Industry Insights

Dev Talk

  1. Announcing IBC 1.0 Implementation Release Candidate, Christopher Goes

  2. Fraud Proof Security Drill: Will You Be My 1-of-N?, Optimism

  3. Solidity 0.8.0 Release Announcement, Ethereum.org

dApp Education

*How to become a Tornado Cash Relayer using Avado’s Blockchain Computer

Developer Activity

Tornado.Cash Reward Swap Contract:
*Tools: Metamask (Wallet), Remix IDE (Development Environment), Solidity (Smart Contract Language) Ethereum (Blockchain), Etherscan Block Explorer
**Created by Tornado.Cash Team
***RewardSwap is ENSResolve. This is only the last ~100 lines of code in the contract

# set pragma

pragma solidity ^0.6.0;

# contract (Source)

/**
  Let's imagine we have 1M TORN tokens for anonymity mining to distribute during 1 year (~31536000 seconds).
  The contract should constantly add liquidity to a pool of claimed rewards to TORN (REWD/TORN). At any time user can exchange REWD->TORN using
  this pool. The rate depends on current available TORN liquidity - the more TORN are withdrawn the worse the swap rate is.

  The contract starts with some virtual balance liquidity and adds some TORN tokens every second to the balance. Users will decrease
  this balance by swaps.

  Exchange rate can be calculated as following:
  BalanceAfter = BalanceBefore * e^(-rewardAmount/poolWeight)
  tokens = BalanceBefore - BalanceAfter
*/

contract RewardSwap is EnsResolve {
  using SafeMath for uint256;

  uint256 public constant DURATION = 365 days;

  IERC20 public immutable torn;
  address public immutable miner;
  uint256 public immutable startTimestamp;
  uint256 public immutable initialLiquidity;
  uint256 public immutable liquidity;
  uint256 public tokensSold;
  uint256 public poolWeight;

  event Swap(address indexed recipient, uint256 pTORN, uint256 TORN);
  event PoolWeightUpdated(uint256 newWeight);

  modifier onlyMiner() {
    require(msg.sender == miner, "Only Miner contract can call");
    _;
  }

  constructor(
    bytes32 _torn,
    bytes32 _miner,
    uint256 _miningCap,
    uint256 _initialLiquidity,
    uint256 _poolWeight
  ) public {
    require(_initialLiquidity <= _miningCap, "Initial liquidity should be lower than mining cap");
    torn = IERC20(resolve(_torn));
    miner = resolve(_miner);
    initialLiquidity = _initialLiquidity;
    liquidity = _miningCap.sub(_initialLiquidity);
    poolWeight = _poolWeight;
    startTimestamp = getTimestamp();
  }

  function swap(address _recipient, uint256 _amount) external onlyMiner returns (uint256) {
    uint256 tokens = getExpectedReturn(_amount);
    tokensSold += tokens;
    require(torn.transfer(_recipient, tokens), "transfer failed");
    emit Swap(_recipient, _amount, tokens);
    return tokens;
  }

  /**
    @dev
   */
  function getExpectedReturn(uint256 _amount) public view returns (uint256) {
    uint256 oldBalance = tornVirtualBalance();
    int128 pow = FloatMath.neg(FloatMath.divu(_amount, poolWeight));
    int128 exp = FloatMath.exp(pow);
    uint256 newBalance = FloatMath.mulu(exp, oldBalance);
    return oldBalance.sub(newBalance);
  }

  function tornVirtualBalance() public view returns (uint256) {
    uint256 passedTime = getTimestamp().sub(startTimestamp);
    if (passedTime < DURATION) {
      return initialLiquidity.add(liquidity.mul(passedTime).div(DURATION)).sub(tokensSold);
    } else {
      return torn.balanceOf(address(this));
    }
  }

  function setPoolWeight(uint256 _newWeight) external onlyMiner {
    poolWeight = _newWeight;
    emit PoolWeightUpdated(_newWeight);
  }

  function getTimestamp() public view virtual returns (uint256) {
    return block.timestamp;
  }
}

Blockchain Jobs

Want your company’s open positions listed? Send an email to [email protected]

Earn Opportunity

Lolli pays you in Bitcoin to shop through their browser extension online at 1000+ retailers and just released an iOS app. The app allows users to access their wallet balance and participate in the Daily Stack. The Daily Stack gives users a chance to win various amounts of BTC everyday just for getting on the app. Download the app using the link below! Referral Code: RGZNEN

Lolli iOS App

Leave a comment

How do you rate this article?

7


CPix
CPix

Goal is simple. Speed up mass adoption!


Everything Crypto
Everything Crypto

In this blog I cover major public blockchain developments, cryptocurrency shifting from speculation to utility, and personal opinions as to how the space will develop going forward.

Publish0x

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.