FreeTON Dex Implementation Stage 1 Proposal

proposed by a strong team svoi.dev, who developed for instance timer smart contract for Free TON, led to some arguments in the defi subgroup, on the last defi weekly call and in telegram discussion group. We reached a decision that I will try to merge their proposal with the dex, to keep the dex implementation still generic but better suited for uniswap model. Here is what came out (also added two laugans points about minimum average point and free open source license):

FreeTon DEX Implementation proposal

Contest dates

  • Warm-up period: mid January 2021
  • Submission Stage 1 period: 22 January(00:00:00 UTC) - 28 February(23:59:59) 2020

General description

The goal of this contest is to prove the ability of free ton blockchain to perform fast and cheap non-custodial exchange operations, such as exchange of tokens, loans, IOUs or other types of liabilities.

The Free TON DEX, or FreeDEX for short, should be general purpose and let the users/governance create an arbitrary number of liquidity pools, manage the order and transactions fees, support different types of referral programs and of course yielding mechanics for the participation in the dex marketing and development.

Furthermore the primary differentiator of FreeDex should be support for staking through TON depool contracts and voting using TON SMV contracts, support for TIP-3 tokens and self-governed structure of the DEX from initial launch. FreeDex can be either OB (order-book) dex, LP (liquidity provision) dex, any combination of those or any other possible yet unknown type.

Roadmap

Stages:

  1. Set of dex smart contracts (exchange, liquidity pools, etc) with mandatory debot interface and optional UI (Stage 1. Current)
  2. Complex liquidity pool mechanics (pool explorers, pool factories for LP dexes, cross margin and complex FOK IOC order for order-based dexes) (Stage 2)
  3. Complex automated market maker mechanics (Stage 3)
  4. Additional necessary improvements like UI/UX, governance mechanics, voting mechanics, yielding mechanics, etc (Stage 4)

Implementation stage 1

Stage 1 implementation should include set of open source smart contracts for TON network which would allow:

  1. Exchange contracts supporting exchange function of two arbitrary tokens, either through order book for OB dex implementation or LP for LP dex implementation
  2. OB dex should allow user to put or cancel order, LP dex to add either external liquidity through the bridges or TIP-3 tokens
  3. Exchange can be performed between two users or user and LP using AMM (automated market maker) for both OB and LP dexes
  4. All operations should be performed through debot interface but additional UI interfaces are welcome as well

Products of the work should include:

  • source code of smart contracts in a public repository
  • smart contracts deployed on the testnet
  • description of scenarios for calls of smart contract methods for main use cases
  • debot interface and/or web application interface development based on best practices of OB or LP DEXes (adding tokens to LP, exchanging, canceling, etc)

General contest requirements

Your submission should include:

  • The basic economic model and description of money flow in the system
  • The general technical architecture of the solution including all of the features listed below in the hard evaluation criteria section along with the proposed customer journeys
  • Detailed technical specification of the proposed implementation with the justification of the selected approach: smart contracts, integration layer, interfaces
  • Deployed implementation in Free Ton devnet with ability to test the functionality using debot interface
  • Name and contact information of the contestant for communication (Telegram username, e-mail)

Your work and the proposed solution must be:

  • Original. It should not include more than 10% of other contestants’ works;
  • Implementable. Keep in mind the peculiarities and goals of FreeTON;
  • Consistent. Its elements should not contradict each other and the FreeTON Declaration of Decentralization;
  • Safe. It must ensure a due level of funds security;
  • Modern. Inspire by the leading market solutions.

Evaluation criteria and winning conditions

General criteria

When evaluating a proposal, priority will be given to applications that will take into account the following functional, technological and technical features in describing their solutions:

  1. TIP-3 tokens, as confirmation of the investment
  2. The system should be able to charge a commission(s) from users for transactions
  3. The system should be able to cancel the exchange if the operation fails at any stage
  4. The system should be able to cancel the exchange operation after the timeout expires
  5. The system should use tick timer and the messaging function on the FreeTON network

Hard criteria

  • Support for non-custody exchange of any tokens within the FreeTON network
  • Support for adding liquidity to the exchange from external blockchains at least through smart contract system or using atomic swap bridges described in atomic swap contest
  • Non-custody approach to both exchange and liquidity provision
  • Support of de-bot interface for at least testing purposes

Artifacts

  • Link to github/gitlab with executable code and thorough README on how to deploy and run
  • free open-source license

Soft criteria

  • Good economics with working prototype
  • Mostly everyday English to facilitate understanding of technical paper
  • Additional web, mobile, chatbot or any other type of UI for smoother user experience

Rewards Stage 1

Place Reward, TON
1 250,000
2 200,000
3 150,000
4 50,000
5 25,000

Works with average score less than 3 are excluded from prize nomination (reject counts as vote with weight 0)

Voting

  • Jury members who vote in this contest must have a solid understanding of the technology. Those jurors who don’t, should not vote or choose “Abstain.”
  • Jurors whose team(s) intend to participate in this contest by providing submissions lose their right to vote in this contest.
  • Each juror will vote by rating each submission on a scale of 1 to 10 or can choose to reject it if it does not meet requirements or choose to abstain from voting if they feel unqualified to judge.
  • Jurors will provide feedback on your submissions.
  • The Jury will reject duplicate, sub-par, incomplete, or inappropriate submissions.

Jury rewards

An amount equal to 5% of the prize fund will be divided equitably between all jurors who vote and provide feedback based on their votes’ quantity and quality. Both voting and feedback are mandatory to collect this reward.

Governance rewards

An amount equal to 2% of the prize fund will be divided equitably between all governance members.

Procedural reminders to all contestants

  • Accessibility. All submissions must be accessible for the Jury to open and view, so please double-check your submission. If the submission is inaccessible or does not fit the criteria described, jurors may reject the submission.
  • Timing. Contestants must submit their work before the closing of the filing of applications. If not submitted on time, the submission will not count.
  • Contact information. All submissions must contain the contestant’s contact information, preferably a Telegram username by which jurors can verify that the submission belongs to the individual who submitted it. If not, jurors may reject your submission.
  • Content. The content published in the forum and the provided PDF file should not differ, except for formatting. Otherwise, jurors may reject the submission.
  • Well-formed links. If your submission has links to the work performed, the content of those links must have the contestant’s contact details, preferably a Telegram username, or backlink to your submission at the FreeTON forum, so jurors can match it and verify to whom the work belongs. If not, jurors may reject your submission.
  • Multiple submissions.
    • Each contestant has the right to provide several submissions if they contain different approaches to the contest problem’s solving. However, if works are not unique enough or differ just in insignificant details, jurors may reject such repeating submissions.
    • If the contestant wants to make an additional submission that overrides the one previously published, he must inform the Jury about this fact and indicate the correct revision to assess. In this case, only the indicated work will count. If the contestant hasn’t indicated the updated submission as the correct one, only the first one will count, the Jury will reject all the others.

Disclaimer

Anyone can participate, but Free TON cannot distribute Tons to US citizens or US entities

3 Likes

Так вот я и пытаюсь обсудить с вами тот факт, что вы оборзели с размерами наград. Это не лезет ни в какие рамки. За месяц работы даже целой команды эти деньги несопоставимы ни с какой приличной деятельностью.

ok, let’s count, 250k ton at current price 40c makes 100k$. For an average team of 10 people including testers, products and developers, their average cost would be around 10ppl * 5k$ = 50k$. With potential downside of ton to 20c with current volatility plus the winning team should have some margin imho. The second and third team would just recover the costs with minimum margin if at all.

The defi group decided to increase the previous standard prizes due to the fall of the token price.

2 Likes

That means, you don’t believe your work will increase the value of FreeTON? :slight_smile: There is no logic in it. Why the price of token should drop after your brilliant work?

me personally, I believe it will grow, especially after first defi projects go into mainstream production, but it takes time and it’s also question of the marketing, pr, market and a lot of factors that are outside of participants’ control, while the costs are arising from the start, with no guarantee for compensation.

2 Likes

Thank you for your feedback and a serious approach in considering and taking into account our proposal

Taking into account the level and importance of the Dex project, we propose to make the following adjustments to the current version of the draft proposal for the implementation of Dex:

  1. we consider the governance token are not that much needed at the first stage
    (i.e. let’s focus on exactly what is important for the defi)
  2. to enable other interfaces besides debot
  3. make a “ladder of rewards”
    1st place - 250
    2nd place - 225
    3rd place - 200
    4th place - 175
    5th - 150
    taking into account the complexity of the task
    or do as it was with the W&D sg contests (below certain points only stay without awards): with a table of reward depending on the points given:
  • at least a month and a half (this will allow fresh teams to join the community)

Thank you

1 Like

10, почему не 20 или 30?) Был бы повод еще прибедниться. Для решения этой задачи достаточно 2-3 профессионала. Все остальные люди нужны лишь для усваивания бюджета.

agree, I was doubting regarding governance, will move it to next stages. As for rewards I will try to redistribute it towards upper places.

I have developed several matching engines and trading terminals, 2-3 people are only backend developers + ui + testing + tech analyst and tech writers, including product owner it’s closer to 10. Afaik top notch exchanges have core teams closer to 20-30 people. If 2-3 people don’t sleep, work for 3 roles and wins I personally won’t have any remorses.

2 Likes

moved governance mechanics to 4th stage, changed redistribution of rewards and added additional interfaces to current stage

Sorry, but based on a reasonable understanding of the work ahead, we still kindly ask:

  1. can you pls provide the ability to use not only the debot interface within the entire program, and also give an option to use other interfaces in the following as well:

a)

b)

c)

  1. We also believe that the redistribution of the prize pool between the top five winners will have an exceptionally beneficial effect on the result as follows:
    1st - 250
    2nd - 200
    3rd - 150
    4th - 100
    5th - 50
    taking into account, among other things, the term of the exclusion of the possibility of receiving prizes by teams with less than 3 av.points

  2. Taking into account the complexity of the task, we also ask very much to prolong the submission period to one and a half months.

We think that the adoption of these proposals will allow to attract more wide variety of teams to the community and get the maximum possible positive result on the project.

2 Likes

You already have the ability to not use debot interface because they are separate contracts by design. Debots are additional client-side smart contracts for main smart contracts. So, they don’t oblige you to use them.
Obligation is to write Debots as minimal user interface.
I think debot requirements are good and important for tests, adoption and as decentralized on-chain UI.

2 Likes

thanks, totally support, I’ll specify it more explicitly in the proposal everywhere where the debot interface is mentioned.

1 Like

specified more clearly that OB and LP approach can be used for implementation both in general description and in requirements and criterias, specified mandatory requirement for debot and optional for other type of UIs, prolongated the dates and corrected the prizes

2 Likes

@rainblowing Hello, I want to clearly define the “non-custody” way work with the exchange in the competition.
If I make a smart contract with Ton blockchain , it need require user deposit token into the smart contract for exchange. is it “non-custody” or is it " *custody"?
Or in this competition, the “non-custody” mean that token only keep in the wallet of user, right ?

Other question about the " * Support for non-custody exchange of any tokens within the FreeTON network".
If I defined a token ,it not contain the “transfer” the method ,or it random name the method to other something , do you think is it possible to exchange with other TIP-3 token ?
From my understand , we must have a clear defined for the token ,rather than “any token”, any token
can’t support in exchange , I trust no one blockchain can to do this.
In addition, about the “ Non-custody approach”,if it mean we need keep the TIP-3 token in our wallet when providing liquidity and trading, the also a bad rule.
Just imagine if anyone transfer TIP-3 token to other wallet address after they provide liquidity to Exchange, do you think what will happen? The exchange will fill with by fake liquidity. Of course, exchange work with some timer to fix the fake liquid,but it must a huge cost on this. Defi exchange hot with Ethereum,do you see any defi exchange implement similar this way?
If I want attack this exchange, I can build a reboot ,submit so much liquidity to exchange,then transfer my token to other address,the exchange can easy fill full by fake liquidity or fake order.
I want the product can really work with people rather than just Competition works.
If the rule cannot be changed at now,please let me know.
I also can work on this design,but I don’t think it can work in other people.

1 Like

I hope I can get some reply about above post.
Thank you.

sorry, we discussed it on the telegram group, was I talking to you regarding your questions?)

@rainblowing @cryonyx
Dear DeFi SG members and jurors! I have a rather important question about the rules of the ongoing contest:
“OB dex should allow user to put, cancel, match and fill orders, LP dex to add either external liquidity through the bridges or exchange tokens between LP and user. TIP-3 tokens or its extensions should be used”
— does this mean that due to the fact that TIP-3 token standard is being changed as we speak and different teams have to use their own tweaked TIP-3 implementations submissions to this contest will be fine as long as they use any “version” of TIP-3, not just precisely the one in TONLabs github?

yes, correct! any “version” of TIP-3

@UltraNihilist
Indeed. But I would recommend grounding your changes to the standard for a better understanding of what needs to be upgraded there.

BTW, join the discussion going on in the TIP-3 topic: