拍卖是一种流行的方法,它可以以最好的价格出售NFT。
有一些拍卖技巧是为了出售我们的NFT收藏品,但荷兰式拍卖不同于其他技巧,它的使用频率更高。
与常规拍卖不同的是,在荷兰式拍卖中,价格开始时很高,然后在预定的时间间隔内慢慢下降。
简单地说,在荷兰式拍卖中,NFT的价格从初始价格(上限)开始,并定期下降一个固定额度(例如,每 10 分钟下降 0.1 ETH),直到它达到最低价格。
其中一个原因可能与区块链上的gas战争有关。
Gas Wars是指在交易吞吐量较低的以太坊等区块链上同时启动大量交易时,会出现区块链 Gas 费用的飙升。
荷兰式拍卖被用来将多余的铸币费从矿工转移到艺术家身上,或用于资助特定的慈善机构或社区 DAO。
在Remix IDE中创建一个名为NFT.sol的新文件并粘贴我们之前使用的合约。
.bit针对当前使用DID进行资产交易的风险发出警告:4月4日消息,.bit近期发现并分析了使用DID进行资产交易会涉及资产丢失的安全风险。在认识到这些严重的威胁并对其进行研究分析后,.bit公布了其风险提示,以向区块链行业发出警告,并建议用户避免使用DID发送或交换资产。.bit表示风险并不是源自于DID这样的系统本身,而是源自于对系统的错误使用。.bit将在近期分享更多关于如何使用DID的信息,包括应采取的安全步骤,以及未来计划在其协议中实施的安全措施。[2023/4/4 13:44:43]
编写智能合约
在我们的Remix IDE中创建一个新的solidity文件,并将其命名为DutchAuction.sol。
创建一个IERC-721接口,然后初始化Dutch Auction合约。
请参考以下代码:
初始化合约后,我们将定义一些必须在合约中使用的变量。
丹麦外交部提议使用区块链打击腐败:金色财经报道,丹麦外交部发布了一份报告,解释了IT技术和服务的使用,包括区块链、电子治理、大数据等,以打击行政或日常腐败和腐败。该报告在国际反腐败会议(IACC)上发表,强调将区块链作为一种可建立更透明的治理和交易系统的技术,并进一步补充说,它还将赋予个人更多对自己数据的权利。根据该报告,由于区块链具有不可变和透明地存储记录的能力,因此可以用作潜在的反腐败工具。[2020/9/4]
首先,我们要定义拍卖的持续时间。这意味着NFT的拍卖将在此期限后终止。我们将定义持续时间为2天。
接下来,我们需要存储NFT的地址和它的ID。因此,我们将使用IERC721接口来存储NFT。
我们将这个变量设置为不可变的,这样一旦部署合约,它的值就不会改变。
然后,我们将存储卖家的地址。因此,我们将定义变量seller,它将存储卖家的地址。
荷兰式拍卖需要一个起拍价。我们将定义一个变量startingPrice。
我们还需要拍卖开始和结束的时间戳。因此,我们将定义两个变量startAt和expiresAt,它们将存储各自的值。
动态 | CIMB新加坡分行使用iTrust的区块链平台完成贸易融资交易:联昌银行(CIMB)新加坡分行表示,已使用iTrust的区块链和物联网(IoT)平台完成了贸易融资交易。该交易涉及为进口到中国的乳制品提供融资,预计每年的现金流量高达1亿美元。(Ledgerinsights)[2019/10/17]
最后,我们将定义discountRate. DiscountRate 将确定价格下降的速率。
接下来,我们将在构造函数中初始化这些状态变量。
在其中,我们将传入startingPrice、discountRate、_nft和_nftId。
在构造函数中,我们将卖家设置为该合约的部署者。并且一旦NFT被售出,我们需要将 ETH 转移给卖家,我们会进行支付。
动态 | 本周印度最高法院将对使用银行渠道买卖比特币作出判决:据livemint报道,本周,印度最高法院(SC)可能会对使用银行渠道在加密货币交易所买卖比特币的行为作出最终判决。截至目前,用户无法使用其银行账户从印度的任何交易所买卖加密货币。但在判决结束前,受影响的各方已离开宣布退出。据悉,该国最大的加密货币交易所之一Zebpay 在上周五关闭了它的业务。[2018/10/2]
我们将获取用户的输入,以获得startingPrice、discountRate、startAt 和expireAt。因此,我们将其写成:
我们也会检查NFT的价格是否总是大于零。
_startingPrice?>=?_discountRate?*?DURATION,?"Starting?Price?is?less?than?the?discount?offered"_discountRate * DURATION 是应用于startingPrice 的最大价格扣除额。
动态 | 澳大利亚昆士兰银行禁止客户使用房贷进行加密货币投机:7月15日消息,澳大利亚昆士兰银行(Bank of Queensland)已禁止客户使用房贷进行加密货币投机,原因是担心澳大利亚对加密货币活动日益加强的监管。
昆士兰银行(Bank of Queensland)签署的合同将提醒潜在借款人“任何涉及购买或使用加密货币的贷款目的都是不可接受的”。《澳大利亚金融评论》(Australian Financial Review, AFR)最近报道,昆士兰银行(Bank of Queensland)的一位发言人“证实了这些变化”。
虽然借款人无法直接将贷款给房地产的资金投入加密货币市场,因为这些资金直接支付给了卖主,但许多机会主义的债务人利用从抵押贷款中提取的资金来购买虚拟货币。据报道,其他交易员通过获取信贷额度来寻找加密货币的风险敞口——借贷者利用预先确定的信贷额度来获取资产净值。[2018/7/15]
最后,我们输入设置NFT。所以我们可以说:
我们的构造函数已经完成了。
接下来,我们将定义两个将进一步使用的函数:currentPrice()和buyNow()。
使用currentPrice(),我们将知道NFT在特定时间里的价格。
代码:
接下来,使用buyNow()函数,用户将能够购买NFT。
在这个函数中,首先,我们将检查拍卖是否过期。
如果拍卖没有到期,那么我们将获取当前价格并使用currentPrice函数将其存储在price变量中。
接下来,我们将检查发送的金额是否大于或等于价格。
一旦我们知道 msg.sender已经发送了足够的ETH来购买NFT,我们将使用3个参数来转移NFT的所有权:seller、msg.sender、nftId。
最后,我们使用了selfdestruct()函数来结束拍卖。因此,我们将在函数内部传递卖家地址。
我们的合约应该是这样的:
接下来,我们将通过销售NFT测试荷兰拍卖智能合约。
使用tokenURI来创建我们的NFT
现在我们将部署这个NFT,然后使用它的tokenURI调用mint函数。
一旦我们创造了NFT。接下来我们要使用我们的荷兰拍卖合约。
部署荷兰式拍卖合约
编写荷兰式拍卖合约,然后部署它。
为了部署我们的合约,我们必须传递一些参数。
设置startingPrice为1000000, discountRate为1,我们刚刚部署的NFT地址,最后,我们必须提供等于1的tokenId 。
添加了参数后,单击Deploy按钮部署我们的合约。
只要我们的荷兰式拍卖合约生效。我们接下来要做的是批准荷兰式拍卖来使用我们的NFT。
为此,我们将打开部署合约下的NFT,并执行审批功能。
我们需要传递荷兰式的部署地址和NFT的代币id来运行审批函数。
要检查荷兰式拍卖是否已经启动,请打开已部署的荷兰式拍卖合约,并运行currentPrice函数几次。你会注意到每次你运行这个函数,都会得到一个递减的价格值。
现在是时候出售我们的NFT了。
使用荷兰式拍卖合约来出售我们的NFT
首先,运行currentPrice函数并复制价格值。
然后切换到我们想从中购买 NFT 的其他帐户,并将价格值粘贴到value选项下。
然后运行buyNow函数。
回到我们的NFT合约并运行ownerOf函数,就可以看到合约的所有者被更新了。
这就是我们如何使用荷兰式拍卖出售我们的NFT。
Source:https://medium.com/uv-labs/learn-how-to-sell-your-nfts-at-the-best-price-using-the-dutch-auction-model-2881261b09e3
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。