PancakeSwap
Launch App
Portuguese/Brazilian
Portuguese/Brazilian
  • Introdução à PancakeSwap
    • Início (BSC)
      • Crie uma Carteira
      • Obtenha Tokens BEP20
      • Usando PancakeSwap sem Corretoras Centralizadas
      • Conecte sua Carteira na PancakeSwap
    • Início (Aptos)
      • Crie uma Carteira
      • Obter Aptos Coins
      • Tutorial para fazer bridge de CAKE
      • Conecte Sua Carteira na PancakeSwap
      • Perguntas Frequentes sobre Aptos
    • Migração V3/V2
      • Como migrar
      • Como o APR v3 é calculado
      • Perguntas Frequentes
      • 2️⃣Migração V2
        • Migre seus Stakes
        • MasterChef v2
          • List dos Farms
        • Pool de Syrup de CAKE
    • Auditorias
    • Roadmap
    • Clique Aqui para Ajuda
      • Soluções de Erros e Problemas
      • Perguntas Frequentes
      • Corrigindo transações presas na MetaMask
      • Tutorial da Binance Academy
  • Produtos
    • 🔄Exchange
      • Swap de Tokens
      • Como Fazer Trade
      • Taxas e Roteamento
      • Pools de Liquidez
      • Como Adicionar/Remover Liquidez
      • Perguntas Frequentes
      • Integração com Market Maker
      • Smart Router (V2)
        • Como negociar usando o Smart Router
      • Zap
      • 🔄StableSwap
        • Como fazer StableSwap?
      • Ordens Limite (V2)
        • Perguntas Frequentes sobre Ordens Limite
    • 🚜Farm de Rendimento
      • Como Usar os Farms
      • Calculadora de APR/ROI/IL
      • Perguntas Frequentes
      • Farmando na Aptos
        • Perguntas Frequentes
      • Farm Crosschain
        • Perguntas Frequentes
      • bCAKE
        • Como usar o novo bCAKE?
        • Guia de Migração
        • Perguntas Frequentes
        • V2 (descontinuado)
          • Como usar o bCAKE?
    • 🔷veCAKE
      • O que é veCAKE?
      • Como obter veCAKE?
      • Migre da Pool de CAKE
      • Medidores de Votação
        • Perguntas Frequentes
      • Ganhe CAKE Semanalmente
        • Perguntas Frequentes
      • Subornos (Incentivos de Votos)
      • Gerenciadores de veCAKE
      • Incentivando a Liquidez
      • Perguntas Frequentes
    • 🍯Pools de Syrup - Stake de CAKE
      • Nova Pool de Syrup de CAKE
        • Como usar a opção de Stake Flexível
        • Como usar a opção de Stake com Prazo Fixo
        • FAQ da Pool de Syrup de CAKE
      • Outras Pools de Syrup
        • Syrup Pool FAQ & Troubleshooting
    • 🧑‍⚖️Leilões de Farm
    • 💹Compartilhamento de Receita
      • Como participar?
      • Perguntas Frequentes
    • 🛍️IFO (Oferta Inicial de Farm)
      • Como participar de um IFO
      • iCAKE
      • Detalhes do Contrato
    • 🌉Bridge de CAKE
      • Entre EVMs
      • Entre EVM e Aptos
      • Perguntas Frequentes
      • Guia da Bridge Wormhole
      • Perguntas Frequentes da Bridge Wormhole
    • 🤝Staking Simples
      • Como começar o Staking Simples
      • Perguntas Frequentes
      • Termos & Condições
    • 💧Integração de Staking Líquido
      • Como Fazer Stake Líquido
      • WBETH
        • Perguntas Frequentes
      • SnBNB
        • Perguntas Frequentes de SnBNB
    • 🟪Trade de Perpétuos
      • O que é Trade de Perpétuos?
      • Trade de Perpétuos V2
        • Como usar isso?
        • MADBTCUSD
          • Perguntas Frequentes do MADBTCUSD
        • Modo Degen
          • Taxa Dinâmica no Modo Degen
        • Glossário dos Perpétuos V2
        • Forex
        • Perguntas Frequentes de Trade no V2
          • Arbitrum
            • Pool de Syrup de ALP (Arbitrum)
              • Taxas de Compra e Venda de ALP
        • Programa de Recompensas de Trade
          • Arbitrum
      • Trade de Perpétuos V1
        • Glossário do Perpétuos
        • Como posso usar isso?
        • Perguntas Frequentes sobre o Trade de Perpétuos V1
    • 🎮Plataforma de Games
      • 🎓Pancake Mayor
      • 🛡️Pancake Protectors
        • Perguntas Frequentes
    • 🧈Recompensas de Trading
      • Como Participar
      • Perguntas Frequentes
    • 🔮Previsão
      • Como Usar a Previsão
      • Perguntas Frequente Da Previsão
      • Soluções de Problemas na Previsão
    • 🎟️Loteria
      • Como Jogar a Loteria v2
      • Perguntas Frequentes da Loteria
    • 🍯Pottery
      • Como jogar Pottery
      • Perguntas Frequentes do Pottery
    • 🖼️NFT
      • 🖼️Sistema de Perfis de NFT
        • Como configurar um perfil de NFT
        • Equipes
    • 💳Compre Cripto
    • 🌐Mini-Programa da PancakeSwap
      • Como usar o Mini-Programa da PancakeSwap?
      • Perguntas Frequentes sobre o Mini-Programa
      • ⛓️Integração CEDEFI da PancakeSwap
    • 📈Análise (Info)
      • Análise
    • 🖥️RPC Privado da PancakeSwap
    • 🔔Notificações
    • PancakeSwap v4
      • Perguntas Frequentes do v4
    • 💸Opções
      • Cartilha de Opções
      • Opções CLAMM
      • Perguntas Frequentes de Opções
  • Governança & Tokenomics
    • Tokenomics de CAKE
      • Controlando o fornecimento de CAKE
    • Governança
      • Como votar
      • Como Votar com a Carteira SafePal
    • veCAKE
  • Multichain
    • Expansão na Ethereum
    • Implantação na Aptos
  • Ecossistema & Parcerias
    • Programa de Afiliados
      • Dashboard & Link
      • Estrutura Comissão e Pagamento
      • Regras do Programa & Diretrizes
      • Termos & Condições
    • Programa de Embaixadores
      • 👥 Página da Moderação da Comunidade
      • 🌎Página da Tradução da Comunidade
      • ❓ Página das Perguntas Frequentes
    • Marca & Logos
    • 💼Parceria de Negócios
      • ⛽veCAKE/Medidores
      • 🧑‍🌾Oferta Inicial de Farm - IFOs
      • 🥞Pool de Syrup e Farms
      • 🖼️Mercado de NFT
      • ❓Perguntas Comuns Sobre Parcerias de Negócios
  • Desenvolvimento
    • Contribuindo
      • Visão Geral do Código Base
    • Recompensa por Bug
    • Smart Contracts BSC
      • PancakeSwap Exchange
        • Factory v2
        • Router v2
      • Main Staking/Syrup Pool/MasterChef Contract
      • Auto CAKE Syrup Pool (CakeVault)
      • Prediction V2
      • Lottery v2
      • Lottery
        • Lottery Contract
      • Syrup Pools
        • SmartChefInitializable
        • PoolDeployer
  • Equipe
    • A Equipe da Cozinha
    • Torne-se um Chef
      • Frontend Engineer
      • Solidity Engineer
      • DevOps Engineer
      • Blockchain QA Engineer
      • Business Development Manager
      • Communications/Public Relations Manager
      • Social Media Marketing Manager
      • Community Manager - PTBR
  • Fale Conosco
    • Suporte ao Cliente
    • Redes Sociais & Comunidades
  • Archive
    • Antigo Tokenomics
      • CAKE Tokenomics v1
      • Controlling CAKE supply v1
    • How to Use Farms with BscScan
  • Distribuição Token (🚧)
Powered by GitBook
On this page
  • Preciso migrar?
  • Não precisa mais fazer o reinvestimento
  • Taxas
  • Visão Geral
  • Ambiente de Testnet

Was this helpful?

  1. Introdução à PancakeSwap
  2. Migração V3/V2
  3. Migração V2

Pool de Syrup de CAKE

Migre para a nova Pool de Syrup de CAKE

PreviousList dos FarmsNextAuditorias

Last updated 3 years ago

Was this helpful?

A nova CakePool é um novo contrato de stake de $CAKE construído com base no CakeVault (o atual pool automático de CAKE) e projetado para funcionar com o MasterChef v2 da PancakeSwap para fornecer a funcionalidade "stake $CAKE, ganhe $CAKE" enquanto oferece mais recursos, como stake de termo fixo. A pool de CAKE manual atual será retirada após a migração.

A nova CakePool usará um token fictício para coletar $CAKE do MasterChef v2 e recompensar os usuários que fizerem stake de $CAKE. Os usuários que bloquearem seu $CAKE por mais tempo receberão um número mais significativo de participações (aumentados linearmente com base na duração), portanto, desfrutam de um rendimento maior

Preciso migrar?

Se você atualmente está usando enterStaking e leaveStaking no MasterChef da PancakeSwap (), você vai precisar migrar para o novo contrato.

Não precisa mais fazer o reinvestimento

Com a novo CakePool, as recompensas são distribuídas proporcionalmente a todos os usuários do pool com base nas participações. Semelhante a “tokens com juros” ou outros modelos baseados em participação(shares), o saldo em stake dos usuários aumentará quando mais recompensas forem colocadas no pool. Os usuários não precisam colher e reinvestir suas recompensas.

Taxas

Na nova CakePool, todos os usuários do stake flexível estarão sujeitos a dois conjuntos de taxas.

Taxa sobre recompensas de stake flexível

Uma taxa de 2% será aplicada a todas as recompensas geradas pelo stake flexível. O valor da taxa será calculado e realizado na próxima ação de depósito ou retirada, cortada das participações dos usuários. Para consultar o número da taxa de desempenho não realizada, use calculatePerformanceFee(address _user).

Taxa de Saque

Uma taxa de saque de 0,1% será aplicada ao valor sacado do stake se você retirar dentro de 72 horas após a última ação de depósito. A taxa de saque é cortada do valor final da retirada antes da transferência do CAKE.

Visão Geral

Depósito

Se você estiver usando o enterStaking(uint256 _amount) no MasterChef atual da PancakeSwap MasterChef. Você precisa migrar para deposit(uint256 _amount, uint256 _lockDuration). Para o stake flexível, simplesmente use “0” como _lockDuration.

Saldo de Stake e Taxas

Global variables: CakePoolContract // CAKE pool contract
struct UserInfo {
    uint256 shares; // number of shares for a user.
    uint256 lastDepositedTime; // timestamp of the last deposit action
    uint256 cakeAtLastUserAction; // number of CAKE at the last user action
    uint256 lastUserActionTime; // timestamp of the last user action
    uint256 lockStartTime; // timestamp of the start of the lock.
    uint256 lockEndTime; // timestamp of the end of the lock.
    uint256 userBoostedShare; // the amount of shares boosted/added to the user.
    bool locked; // status of the lock
    uint256 lockedAmount; // number of CAKE locked at the start of the lock period.
}

Quantidade de CAKE em stake (antes de subtrair todas as taxas)

const userInfo. = await CakePoolContract.userInfo(address);
const PricePerFullShare = await CakePoolContract.getPricePerFullShare();
const cakeAmount = userInfo.shares * PricePerFullShare / 1e18 - userInfo.userBoostedShare ;  // cake amount (wei), in flexible staking, userInfo.userBoostedShare should be 0.

Taxa de Performance

Consulte o contrato:

const performanceFeeAmount = await CakePoolContract.calculatePerformanceFee(address);

Calcule manualmente:

async function calculatePerformanceFeeAmount(_user:address){
    const user = await CakePoolContract.userInfo(address);
    const isFreeFee = await CakePoolContract.freeFeeUsers(_user);  //normal free fee users are some special contracts , so you can set default false

    if(user.shares > 0 && !user.locked && !isFreeFee){
        const PricePerFullShare = await CakePoolContract.getPricePerFullShare();
        uint256 totalAmount = user.shares * PricePerFullShare / 1e18; 
        uint256 earnAmount = totalAmount - user.cakeAtLastUserAction;
        uint256 performanceFee = await  CakePoolContract.performanceFee();
        uint256 currentPerformanceFee = (earnAmount * performanceFee) / 10000;
        return currentPerformanceFee;
    }
    return 0;
}

Taxa de Overdue: (só se aplica ao stake bloqueado)

Consulta do contrato:

const overdueFeeAmount = await CakePoolContract.calculateOverdueFee(address);

Calcule manualmente:

async function calculateOverdueFee(_user:address){
    const user = await CakePoolContract.userInfo(address);
    const isFreeFee = await CakePoolContract.freeFeeUsers(_user); //normal free fee users are some special contracts , so you can set default false
    const UNLOCK_FREE_DURATION = 1 week seconds (or you can get from smart contract,  const UNLOCK_FREE_DURATION = await CakePoolContract.UNLOCK_FREE_DURATION())
    const DURATION_FACTOR_OVERDUE = 180 * 24 * 3600; // 180 days, in order to calculate overdue fee. you can get it from contract too.

    if (
        user.shares > 0 &&
        user.locked &&
        !isFreeFee &&
        ((user.lockEndTime + UNLOCK_FREE_DURATION) < block.timestamp)
    ) {
        const PricePerFullShare = await CakePoolContract.getPricePerFullShare();
        uint256 currentAmount = user.shares * PricePerFullShare / 1e18 - user.userBoostedShare;
        uint256 earnAmount = currentAmount - user.lockedAmount;
        uint256 overdueDuration = block.timestamp - user.lockEndTime - UNLOCK_FREE_DURATION;  //  you can use UTC timestamp to replace current block.timestamp.
        if (overdueDuration > DURATION_FACTOR_OVERDUE) {
            overdueDuration = DURATION_FACTOR_OVERDUE;
        }
        // Rates are calculated based on the user's overdue duration.
        uint256 overdueWeight = (overdueDuration * overdueFee) / DURATION_FACTOR_OVERDUE;
        uint256 currentOverdueFee = (earnAmount * overdueWeight) / PRECISION_FACTOR;
        return currentOverdueFee;
    }
    return 0;
}

Taxa de Saque

const user = await CakePoolContract.userInfo(address);
const withdrawFee = await  CakePoolContract.withdrawFee();
const isFreeFee = await CakePoolContract.freeFeeUsers(_user); //normal free fee users are some special contracts , so you can set default false
let WithdrawFeeAmount = 0;
// you can use UTC timestamp to replace current block.timestamp.
// withdrawFeePeriod = 72 * 3600 (S)
// _amount : withdraw amount
if (!isFreeFee && (block.timestamp < user.lastDepositedTime + withdrawFeePeriod)) {
     WithdrawFeeAmount = _amount * withdrawFee;
}

Quantidade de CAKE em stakie (depois de subtrair todas as taxas)

const user = await CakePoolContract.userInfo(address);
const cakeAmountWithoutFee =  cakeAmount - (!user.locked ? performanceFeeAmount : overdueFeeAmount) - withdrawFeeAmount

Recompensas Pendentes

Por favor, note que a nova pool não requer qualquer reinvestimento. As recompensas estão sendo colocadas em seu saldo de stake automaticamente.

No entanto, você pode consultar o número de CAKE ganho desde a última ação, usando a diferença entre o saldo de stake atual (mencionado acima) e o número deuserInfo.cakeAtLastUserAction.

Saque

Se você está usando o método leaveStaking(uint256 _amount) no atual MasterChef da PancakeSwap. Você precisa migrar para withdraw(uint256 _shares).

Ao fazer stake flexível. Observe que, ao retirar, as taxas de recompensa pendentes serão calculadas e cortadas do número de participações dos usuários, o número real de participações retirados será recalibrado, com base na porcentagem de participações que você está retirando em relação ao total das participações que você tem. Veja o exemplo abaixo:

// the number of CAKE being withdrawn can be calculated by:
withdrawPercentage = _sharesToWithdraw / userInfo.shares
stakingBalance = userInfo.shares * PricePerFullShare / 1e18 - userInfo.userBoostedShare - !userInfo.locked ? calculatePerformanceFee(_userAddress) : calculateOverdueFee(_userAddress)
finalWithdrawAmount = withdrawPercentage * stakingBalance

Observe que o valor final do recebimento será afetado pela taxa de saque. Se sua função depende crucialmente do número final de CAKE sendo retirado, recomendamos calcular isso usando a diferença no saldo do CAKE antes e depois da ação de saque:

cakeBalPrev = CAKE.balanceOf(address(this))
CakePool.withdraw(_sharesToWithdraw)
cakeBalNew = CAKE.balanceOf(address(this))
cakeWithdrawn = cakeBalNew - cakeBalPrev

Ou calcule e subtraia a taxa de saque ao estimar o valor.

Ambiente de Testnet

Você pode usar o seguinte ambiente de testnet para testar a integração do seu projeto com a nova Pool de CAKE da PancakeSwap. Se você tiver alguma dúvida, entre em contato com nossa equipe pelos canais existentes ou entre em contato com bun@pancakeswap.com por e-mail.

Tokens Fictícios:

  • $CAKE: 0xFa60D973F7642B748046464e165A65B7323b0DEE (mintável usando mint(address _to, uint256 _amount) public)

  • $WBNB: 0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd

Factory e Router

  • Factory v2: 0x6725F303b657a9451d8BA641348b6761A6CC7a17

  • Router v2: 0xD99D1c33F9fC3444f8101754aBC46c52416550D1

MasterChefs

  • v1: 0x1ED62c7b76AD29Bfb80F3329d1ce7e760aAD153d

    • pid0: Manual CAKE

    • pid4: Dummy Pool for MasterChef v2

  • v2: 0xB4A466911556e39210a6bB2FaECBB59E4eB7E43d

Nova Pool de CAKE

0x683433ba14e8F26774D43D3E90DA6Dd7a22044Fe

2️⃣
0x73feaa1eE314F8c655E354234017bE2193C9E24E