Free TON announced the implementation of the reference mechanics auction, adapted to the architecture of distributed smart contracts since many use cases of the blockchain require just such a price determination algorithm.
Auctions are already included in the development of platform solutions such as Decentralized Name Service (DeNS) and stablecoin. In March 2021, a contest was launched to create, test and deploy smart contracts that implement various types of auctions.
During the DeNS development contest, a type of auction has already been implemented, such as the Vickrey auction, a one-round closed auction in which bidders reveal their bid in secret, and the winner pays the second-highest price for the purchase. It is believed that such an algorithm, proposed in the 1960s by Nobel laureate William Vickrey, encourages participants to bid as close as possible to the true value of the product.
Since this algorithm is already implemented, the contestants are asked to focus on such types of auctions as English and Dutch.
Both of these types should be implemented for forward and reverse auctions. A forward auction is a sale in which the seller offers his product to interested buyers. At the reverse auction, the initiator of the transaction is the buyer, who thus searches for the most acceptable price among the various offers.
All implementations submitted for the contest must be composable — that is, so that unified auction systems can be implemented; be scalable and should not rely on a single smart contract. Setting up for different configurations is also desirable, depending on the user’s wish to conduct a cascade auction or an auction with a reserved, non-reserved price, etc. The root contract of the auction must be able to deploy an infinite number of individual sales.
At the same time, smart contracts must interact with TON Crystal, with TIP-3 tokens, and have the function of transferring to DePool. Auctions should also generate events on the chain that report important state changes that other smart contracts can use.
It is allowed to use C++ and Solidity or a combination of them during development.
The best implementation of most types of auctions will earn the winner 50,000 tokens, with 25,000 for second place, 10,000 for third place, and 2,500 each for fourth and fifth places.