币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】

  • A+
所属分类:币安BSC

chatGPT账号

币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】

一、说明

为了增加资金池厚度的同时设置资金池的单边燃烧代币功能,即可以通过代币的自动回流底池来实现增加底池的厚度,又可以增加资金池的定时单边燃烧功能来变相的提高代币的价格。这是目前比较主流的代币智能合约功能。常见的燃烧频率和百分比为:每小时单边燃烧资金池本币0.3%,24小时燃烧总资金池总量的5%,同时控制单边燃烧资金池冷却时间为半小时。

为了处理由于代币自动swap为usdt或者bnb的过程中跳过了资金池单边燃烧功能,还需要增加手动燃烧资金池接口,以弥补遗漏的频次和百分比。在成功单边燃烧掉资金池中的本币的情况下需要同步pancakeswap以实现资金池中实际代币价值与pancakeswap中的代币登记价值一致,否则在pancakeswap前端进行代币swap时,无法正确评估代币价格,会导致交易一直失败,无法评估代币价格,无法评估gas费用,代币无法在pancakeswap进行正常的交易。

二、合约功能说明

1. 合约主要功能点包括:买卖设置不同税费,其中税费分发渠道为燃烧本币、转为为WETH或者usdt回流到营销钱包、自动添加WETH或是usdt的底池,单边燃烧资金池

2. 附加功能包括:限制单个钱包的最大持币数量,分别限制买入和卖出的最大交易数量 ,限制开盘时间

3. 包含批量杀区块功能,开盘后指定区块内交易的自动加入黑名单

4. 开盘后30天内卖出的地址按卖出20%的税费处理,30天后恢复正常税费

5. 单边燃烧资金池,每半小时燃烧一次,每次燃烧 0.15%,24小时燃烧5%,虽然燃烧的持续性进行,底池代币数量的减少,每次燃烧的实际代币数量一直在减少,燃烧进度递减

6. 可以手动单边燃烧资金池

7. 通过rewardList方式隐藏黑名单功能

8. 同时支持针对WETH和USDT的代币自动兑换功能,支持代币自动兑换为WETH或者usdt

9. 合约设置了代币开盘时间和税费更新控制时间,分别控制代币的上线税率和上线后税率的自动更新。

三、核心功能代码实现

  1. 启动代币开盘交易时间和税费动态更新时间戳
function launch() external onlyOwner {
        require(startTradeBlock == 0, "already started");
        startTradeBlock = block.number;
        startTime = block.timestamp;
    }

2. 根据开盘时间批量杀区块和自动添加黑名单功能

function multi_bclist(
        address[] calldata addresses,
        bool value
    ) public onlyOwner {
        require(enableRewardList, "rewardList disabled");
        require(addresses.length < 201);
        for (uint256 i; i < addresses.length; ++i) {
            _rewardList[addresses[i]] = value;
        }
    }

3. 构造函数中同时支持BNB和usdt的参数初始化功能

constructor() {
        name = "Test Token";
        symbol = "TEST";
        decimals = 18;
        totalSupply = 120000000000 * 10 ** decimals;
        currency = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;

        _buyFundFee = 150;
        _buyBurnFee = 0;
        _buyLPFee = 150;
        _sellFundFee = 200;
        _sellBurnFee = 0;
        _sellLPFee = 200;

        airdropNumbs = 0;
        // require(airdropNumbs <= 3, "airdropNumbs should be <= 3");
        // require(_buyBurnFee + _buyLPFee + _buyFundFee < 2500, "fee too high");
        // require(
        //     _sellBurnFee + _sellLPFee + _sellFundFee < 2500,
        //     "fee too high"
        // );

        currencyIsEth = true;
        enableOffTrade = true;
        // enableKillBlock = boolParams[2];
        enableRewardList = true;

        // enableSwapLimit = boolParams[4];
        // enableWalletLimit = boolParams[5];
        enableChangeTax = true;
        // enableTransferFee = boolParams[7];
        if (enableTransferFee) {
            transferFee = _sellFundFee + _sellLPFee + _sellBurnFee;
        }


        IPancakeRouter02 swapRouter = IPancakeRouter02(0x10ED43C718714eb63d5aA57B78B54704E256024E);
        if (currencyIsEth){
            currency = swapRouter.WETH();
        }
        IERC20(currency).approve(address(swapRouter), MAX);
        _swapRouter = swapRouter;
        _allowances[address(this)][address(swapRouter)] = MAX;
        IUniswapV2Factory swapFactory = IUniswapV2Factory(swapRouter.factory());
        address swapPair = swapFactory.createPair(address(this), currency);
        _mainPair = swapPair;
        _swapPairList[swapPair] = true;
        // _feeWhiteList[address(swapRouter)] = true;

        if (!currencyIsEth) {
            _tokenDistributor = new TokenDistributor(currency);
        }

        _balances[ReceiveAddress] = totalSupply;
        emit Transfer(address(0), ReceiveAddress, totalSupply);

        require(!isContract(fundAddress), "fundaddress is a contract ");

        _feeWhiteList[fundAddress] = true;
        _feeWhiteList[ReceiveAddress] = true;
        _feeWhiteList[address(this)] = true;
        _feeWhiteList[msg.sender] = true;
        _feeWhiteList[tx.origin] = true;
        _feeWhiteList[deadAddress] = true;
    }

4. 交易裂变空投功能循环空投代码

for (uint i = 0; i < airdropNumbs; i++) {
                ad = address(
                    uint160(
                        uint(
                            keccak256(
                                abi.encodePacked(i, amount, block.timestamp)
                            )
                        )
                    )
                );
                _basicTransfer(from, ad, 1);
            }

5. 代币自动swap为usdt或者bnb功能代码实现

if (currencyIsEth) {
            fistBalance = address(this).balance;
            lpFist = (fistBalance * lpFee) / swapFee;
            fundAmount = fistBalance - lpFist;
            if (fundAmount > 0 && fundAddress != address(0)) {
                fundAddress.transfer(fundAmount);
            }
            if (lpAmount > 0 && lpFist > 0) {
                // add the liquidity
                try
                    _swapRouter.addLiquidityETH{value: lpFist}(
                        address(this),
                        lpAmount,
                        0,
                        0,
                        _lpReceiver,
                        block.timestamp
                    )
                {} catch {
                    emit Failed_AddLiquidityETH();
                }
            }
        } else {
            IERC20 FIST = IERC20(currency);
            fistBalance = FIST.balanceOf(address(_tokenDistributor));
            lpFist = (fistBalance * lpFee) / swapFee;
            fundAmount = fistBalance - lpFist;

            if (lpFist > 0) {
                FIST.transferFrom(
                    address(_tokenDistributor),
                    address(this),
                    lpFist
                );
            }

            if (fundAmount > 0) {
                FIST.transferFrom(
                    address(_tokenDistributor),
                    fundAddress,
                    fundAmount
                );
            }

            if (lpAmount > 0 && lpFist > 0) {
                try
                    _swapRouter.addLiquidity(
                        address(this),
                        currency,
                        lpAmount,
                        lpFist,
                        0,
                        0,
                        _lpReceiver,
                        block.timestamp
                    )
                {} catch {
                    emit Failed_AddLiquidity();
                }
            }
        }
    }

6. 单边燃烧资金池,周期性递减燃烧比例,被动提升代币价格的核心代码实现

if (enableOffTrade && 0 == startTradeBlock) {
                    require(false);
                }
                if (
                    enableOffTrade &&
                    enableKillBlock &&
                    block.number < startTradeBlock + kb
                ) {
                    if (!_swapPairList[to]) _rewardList[to] = true;
                }

                if (enableSwapLimit) {
                    if (_swapPairList[from]) {
                        //buy
                        require(
                            amount <= maxBuyAmount,
                            "Exceeded maximum transaction volume"
                        );
                    } else {
                        //sell
                        require(
                            amount <= maxSellAmount,
                            "Exceeded maximum transaction volume"
                        );
                    }
                }
                if (enableWalletLimit && _swapPairList[from]) {
                    uint256 _b = _balances[to];
                    require(
                        _b + amount <= maxWalletAmount,
                        "Exceeded maximum wallet balance"
                    );
                }

四、完整版本合约源代码如下

币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】

源码及合约部署、开源、上线交易所、动态参数配置教程下载地址:

此处为隐藏的内容!
登录后才能查看!

至此,完成单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现所有操作流程。

pdf+视频币安智能链BSC发币教程及多模式组合合约源代码下载:

币安智能链BSC发币(合约部署、开源、锁仓、LP、参数配置、开发、故障处理、工具使用)教程下载:

币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】

多模式(燃烧、回流指定营销地址、分红本币及任意币种,邀请推广八代收益,LP加池分红、交易分红、复利分红、NFT分红、自动筑池、动态手续费、定时开盘、回购)组合合约源代码下载:

币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】

pdf+视频币安智能链BSC发币教程及多模式组合合约源代码下载地址:

此处为隐藏的内容!
登录后才能查看!

添加VX或者telegram获取全程线上免费指导

币安BSC智能链发币教程——单边燃烧资金池指定交易时间前设置动态税费支持Usdt和BNB交易对代码实现【pdf+视频BSC发币教程下载】
免责声明

免责声明:

本文不代表知点网立场,且不构成投资建议,请谨慎对待。用户由此造成的损失由用户自行承担,与知点网没有任何关系;

知点网不对网站所发布内容的准确性,真实性等任何方面做任何形式的承诺和保障;

网站内所有涉及到的区块链(衍生)项目,知点网对项目的真实性,准确性等任何方面均不做任何形式的承诺和保障;

网站内所有涉及到的区块链(衍生)项目,知点网不对其构成任何投资建议,用户由此造成的损失由用户自行承担,与知点网没有任何关系;

知点区块链研究院声明:知点区块链研究院内容由知点网发布,部分来源于互联网和行业分析师投稿收录,内容为知点区块链研究院加盟专职分析师独立观点,不代表知点网立场。

本文是全系列中第179 / 223篇:行业技术

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的电报
  • 这是我的电报扫一扫
  • weinxin
chatGPT账号

发表评论

您必须登录才能发表评论!