Synthetic Athlete Performance Tokens

Hi, this post is to open the discussion on our smart contract architecture for AE and synthetic athlete performance tokens. Our model is a similar design to Synthetix where the SNX token is staked and sUSD is minted. Then, pools of sUSD act as collateral for each synth. In our system, the general token sponsor is Athlete Equity Coin (AE). AE is deposited into a staking contract which mints aeUSD at a 10:1 ratio. Then, pools of aeUSD sponsor the creation of athlete performance tokens. Athlete performance tokens are fed a combination of in-game statistics through the oracle. So that AE does not bear directional risk, inverse athlete tokens are also minted. This system requires approving AE and aeUSD as collateral.

1 Like

In our system, the general token sponsor is Athlete Equity Coin (AE)

Would this be a UMA synth? If so, what would be the collateral?

AE is deposited into a staking contract which mints aeUSD at a 10:1 ratio.

Is aeUSD a stablecoin? If so, how do you intend to keep the peg?

So that AE does not bear directional risk, inverse athlete tokens are also minted.

I don’t get this point, could you elaborate? Does Synthetix currently do this when minting SNX?

yeah it’s similar to minting sUSD. sUSD is minted when you stake SNX. Then, someone buys a synth and the value of the synth purchased is burned from the sUSD pool (debt pool).

In Athlete Equity, we want to stake AE. Then use the AE pool as the sponsor of athlete tokens. If we can use a common sponsor for more than 1 athlete token then we won’t need the stablecoin. In this way, AE is the only EMP sponsor.

Additional questions about flexibility of the EMP:
Can we mint more tokens after the EMP is created?
Can we burn tokens if the EMP becomes undercollateralized?

Can we mint more tokens after the EMP is created?

Yes! Once the EMP is deployed anyone can mint synths by depositing collateral. Whoever does that is called a sponsor.

Can we burn tokens if the EMP becomes undercollateralized?

I should look up the specifics of how this is implemented, but I would say you can’t do that without properly collateralizing your position first. Token sponsors can always exit their positions by burning their tokens otherwise.

Ok great. Does UMA require a standard collateralization ratio? This question is more about the burning logic.

Let’s say we are overcollateralized 10:1. And the price of the debt goes up, now we are not quite 10:1. Can we burn minted tokens to reduce debt and bring us back to 10:1?

Does UMA require a standard collateralization ratio?

It is recommended to be above 1.2.

Can we burn minted tokens to reduce debt and bring us back to 10:1?

I see what you mean now. I think the answer is no: you’d have to add collateral to your position.

Ok what does an expiry event look like? ie when an EMP expires what happens to collateral and what happens to the minted tokens?

After expiry, synth owners can redeem their tokens for collateral. The exchange rate is fixed by the oracle using the price id at expiry. This is all explained in the docs, which I recommend you read in case you haven’t yet.

Thanks jay. We’ve stayed active in the UMA discord to keep on track. Also, read through the docs in deeper detail. Per @chandler we learned that UMA is deploying on Polygon in the coming weeks which reduces our scope of development.

Where we’d like to move forward:

  1. Whitelisting our governance token as collateral
  2. Establishing a price identifier for athletes

To give you insight into our architecture, here are the core smart contracts at work in our system:

  • Staking Contract
    (collateralizes the system and sponsors each EMP)
  • Swap Contract
    (swap for athlete or swap athlete for stable)
  • EMP Contract
    (mints Athlete Tokens)
  • Governance Contract
    (organizes proposals, voting, on-chain governance)

Open Questions:

  • What does UMA look for when considering collateral approvals?
  • How can we help each other towards a successful launch on L2?

What does UMA look for when considering collateral approvals?

There is a wide variety of collateral types approved, as you can see here. As a general rule, it’s good to bear in mind the security considerations that apply to any price identifier.

How can we help each other towards a successful launch on L2?

Better to chat with the UMA team about this – I see you’ve already had an exchange with @chandler on Discord so :+1:

Just to let you know that we have a Hack Money hackathon later in the month and I wondered if you might be interested in joining.

You might want to chat to @ericbal who has proposed a synthetic token to track sportmen

UMA is also working with SportX to integrate our oracle into their sports prediction market and it might be worth having a look at what they are doing to see if there are any synergies there, and maybe also @Radar77 who was focusing on the volume of sports betting.

Thanks @jay

As you can see above the Staking Contract collateralizes the system and sponsors the EMP contract. Ideally, the Staking Contract is composed of the system’s governance token (AX) and a mix of stablecoins. Using AX as collateral unlocks liquidity incentives encouraging stakers to maintain liquidity on the system. Adding a mix of stablecoins (curve3 pool) reduces the market risk of becoming undercollateralized. My understanding is the pool of AX and stables requires whitelist approval but I’ll focus the following security considerations on AX.

  • How could pricing data manipulation occur?

Governance Risk - A governance attack by a coordinated party of bad actors would need more than 51% of AX tokens to successfully take over the contracts. The initial token allocation of AX is outlined here: https://www.axmarkets.net/litepaper

Smart Contract Risk - Risk of a contract bug resulting in drain of the contract. We are operating under guidance of past projects that have been attacked on mainnet. Initially releasing on testnet to work through any prevailing contracts bugs. After our testnet rollout, we are collecting an audit before releasing on mainnet.

Market Risk - Risk of a market collapse impacts liquidity providers forcing them to unstake and liquidate assets. To reduce the potential market risk of AX we add a basket of stablecoins to the pool of collateral. There are several other incentives to encourage LPs to continue staking.

  • How could this price ID be exploited?

Risks are similar to those above. To facilitate price discovery, the DAO will sponsor liquidity pools on several DEX’s. Rug pull risk is possible but unlikely. Refer to the token allocation in the whitepaper for specific %'s.

  • Do the instructions for determining the price provide people with enough certainty?

Creating market pairs on SushiSwap and Uniswap guarantee a price feed for AX as long as Uniswap and SushiSwap are functional.

  • What are current or future concern possibilities with the way the price identifier is defined?

Example price identifier below.

  • Are there any concerns around if the price identifier implementation is deterministic?

The implementation is not deterministic because the identifier is determined by the DEX AMM

Example Add Price Identifier

  • Price identifier name: First Price ID Name - AXUSD
  • Base Currency: BASE - AX
  • Quote Currency: QUOTE - USD
  • Rounding: Round to 5 decimal places (third decimal place digit >= 5 rounds up and < 5 rounds down)
  • Estimated current value of price identifier: * * Price identifier name: First Price ID Name - ETHUSD
  • Base Currency: BASE - ETH - May not apply if this is not a typical Base/Quote price
  • Quote Currency: QUOTE - USD - May not apply if this is not a typical Base/Quote price
  • Rounding: Round to 2 decimal places (third decimal place digit >= 5 rounds up and < 5 rounds down)
  • Estimated current value of price identifier: 0.11428

Yes, happy to form a team and build out this project. How can we get involved in Hack Money?

@ericbal wanna join the hack team? I think there is synergy between our projects.

1 Like

Hey - good to hear that

Register for the Hackathon here
https://hack.ethglobal.co/hackmoney2021

We have a dedicated channel on the discord server for the hackathon, drop by and say hello and we can find you potential team mates.

btw, we just simplified our collateral addition token process.

See the “early stage UMIPs” section and the “collateral types” sub-section.

Opening a new topic will bring up a template, Keep the bits in bold and edit the plain text. All you need to add is basic details (like name, email, date) then

  • token name
  • token contract address
  • link to token contract address on etherscan
  • store fee (should be apprex equal to $400 in units of collateral currency)

Price identifiers are a little more complex, however give us a shout if you need a hand