LogoLogo
  • Introduction
    • What is SingularityDAO?
    • Useful Links
    • Launchpad
      • FAQ
    • DynaSets
      • Why DynaSets
      • V1
        • Architecture
        • Audit
    • Vaults
      • Epoch Vaults
      • Unbonded Vaults
      • Yield Farming
    • DEX
    • SDAO Staking
      • Staking
      • FAQ
      • Guide
      • Audit
    • SREP
      • Tiers
  • Guides
    • General
      • How to Set Up a Wallet
      • How to Use Trust Wallet to Interact with the SingularityDAO dApp
      • How to Add a Custom Token in Trust Wallet
      • How to Add a Custom Token in MetaMask
    • Launchpad
      • How to Interact with the Launchpad
    • DynaSets
      • How to Participate in DynaSets
      • How to Withdraw DynaSet LP Tokens
      • How to Redeem DynaSet LP Tokens
    • Vaults
      • How to Stake
      • How to Yield Farm LP Tokens
    • DEX
      • How to Swap Tokens
      • How to Provide Liquidity
  • Smart Contracts
    • DynaSets
      • Token Balances
      • Deposit and Withdraw/Redeem
      • Execution
      • Forge
        • Deposit
        • Redeem
        • Withdraw
      • DynasetTvlOracle
      • Contract Addresses
    • SingularityDAO Token Contract Addresses
  • Governance
    • Governance
  • Research Papers
    • Artificial Intelligence
      • Architecture of Automated Crypto-Finance Agent
      • Adaptive Multi-Strategy Market Making Agent
      • Adaptive Predictive Portfolio Management Agent
  • Security
    • Smart Contract Audits
    • Telegram Admins
Powered by GitBook
On this page

Was this helpful?

  1. Smart Contracts
  2. DynaSets

Forge

During the contribution phase tokens are deposited in the forge. At the end of the contribution period the forge swaps all tokens deposited, into the DynaSets underlying assets, weighted based on the requirements of the DAM that are defined when initialising the DynaSets.

ForgeV1 allows to create mutiple Forge Objects to contribute to a specific dynaset.

function forgeFunction(
    uint256 forgeId,
    uint256 contributorsToMint,
    uint256 minimumAmountOut
) external nonReentrant onlyRole(BLACK_SMITH) {

PreviousExecutionNextDeposit

Last updated 2 years ago

Was this helpful?