ARC-45: Incentivize Initial Injective Mainnet Pools with ASTRO

Summary

This proposal aims to offer ASTRO rewards for four pools on the Injective mainnet deployment of Astroport. These pools are ASTRO-USDT, INJ-USDT, ATOM-USDT and USDC-USDT.

The four pools were chosen according to the guidelines in ARC-41.

Abstract

Astroport is now deployed on Injective mainnet! In order to encourage liquidity provision and bootstrap the Injective Astroport satellite, we propose to offer ASTRO rewards to four pools:

  • ASTRO-USDT
  • INJ-USDT
  • ATOM-USDT
  • USDC-USDT

The pools were chosen according to ARC-41 which describes how the Astroport community can offer LP rewards on multiple chains. The initial amount of ASTRO rewards for each pool should last for 8 weeks (according to the Astroport Incentive Framework) from the moment of and assuming this proposal passes. After the initial 8 weeks of rewards, the community should re-evaluate the amount of fees produced by these pools and adjust ASTRO rewards in order to target the 0.1 fee to emissions ratio.

Methodology

In order to estimate the amount of fees generated by each pool, we made the following assumptions and observations:

  • Injective block times are one second
  • The average price of ASTRO is $0.09
  • The Astroport pools will process the same volume (on average and excluding the ASTRO-USDT pool) as their counterparts on the Injective orderbook. This assumption was made because the orderbook is the best source of volume data on Injective and thus offers a good starting point to think about ASTRO emissions
  • We target a 0.1 fee to emissions ratio as proposed in the Astroport Incentive Framework

With these points in mind, we arrive at the following rewards distribution:

The amount of ASTRO distributed per Injective block is approximatelly 0.845 ASTRO. If Injective were to have the same block times as Terra 2, this would translate to about 5.075 ASTRO per block.

Lastly, in order to have enough ASTRO rewards for the foreseeable future on Injective, we propose that the Assembly IBCs 13,154,923 ASTRO from the Treasury to the Injective satellite. At 0.845 ASTRO per block, Assembly would have about 6 months of rewards runaway on Injective.

Executable Message

There are three different executable messages that will help add ASTRO emissions on the Injective Astroport deployment, thus this ARC will be split in three parts:

  1. Claim ownership for the Assembly over the Astroport Injective deployment
[
      {
        "wasm": {
          "execute": {
            "contract_addr": "inj1rsrefjc7xnl6d6fm6avl706nu5y6nkpxffyevq",
            "msg": "eyJjbGFpbV9vd25lcnNoaXAiOnt9fQ==",
            "funds": []
          }
        }
      }
]
  1. IBC 13,154,923 ASTRO from the Treasury (on Terra 2) to the Injective Astroport satellite. This amount of ASTRO will be stored in the Astroport Satellite contract
[
      {
        "wasm": {
          "execute": {
            "contract_addr": "terra12ncurr62xe93xrsh2drp4zvehj0gn32lfnshr8k0p4xfyju2knwq2qgmh2",
            "msg": "eyJleGVjdXRlIjp7Im1zZ3MiOlt7Indhc20iOnsiZXhlY3V0ZSI6eyJjb250cmFjdF9hZGRyIjoidGVycmExbnN1cXNrNmtoNTh1bGN6YXR3ZXY4N3R0cTJ6NnIzcHVzdWxnOXIyNG1majJmdnR6ZDR1cTNleG4yNiIsIm1zZyI6ImV5SnpaVzVrSWpwN0ltTnZiblJ5WVdOMElqb2lkR1Z5Y21FeGFtaG1hbTV0TXpsNU0yNXVPV3cwTlRJd2JXUnVOR3MxYlhjeU0yNTZNRFkzTkdNMFozTjJlWEpqY2prd2VqbDBjV04yYzNReU1tWmpaU0lzSW1GdGIzVnVkQ0k2SWpFek1UVTBPVEl6TURBd01EQXdJaXdpYlhObklqb2laWGxLYW1GSFJuVmliVlp6U1dwdmFWa3lhR2hpYlRWc1lrTXdOVTFUU1hOSmJrcHNZbGM1TUZwV09XaGFSMUo1V2xoT2VrbHFiMmxoVnpWeFRWaEtlbU50Vm0xaGJVMHpaVWMxYzA1dFVUSmFiVEF5V1ZoYWMwNTZRVEppYmxVeFpWUmFkV0V6UWpSYWJWbzFXbGhhZUVsdU1EMGlmWDA9IiwiZnVuZHMiOltdfX19XX19",
            "funds": []
          }
        }
      }
]
  1. The last part will set the total amount of ASTRO to distribute to 0.845 ASTRO, set the vesting schedule for all ASTRO to 6 months and set up alloc_points for the four pools mentioned above

The readable version of this proposal looks as follows:

{
   "msg1_registering_vesting_account": {
     "register_vesting_accounts": {
       "vesting_accounts": [
         {
           "address": "inj1z354nkau8f0dukgwctq9mladvdwu6zcj8k4928",
           "schedules": [
             {
               "start_point": {
                 "time": 1679318579,
                 "amount": "0"
               },
               "end_point": {
                 "time": 1692472979,
                 "amount": "13154923000000"
               }
             }
           ]
         }
       ]
     }
   },
   "msg2_set_tokens_per_block_in_generator": {
     "set_tokens_per_block": {
       "amount": "845870"
     }
   },
   "msg3_set_active_pools": {
     "setup_pools": {
       "pools": [
         [
           "inj1q5wmfzl6gfe629cc5yacluerphf8d5gqjd5055",
           "28148"
         ],
         [
           "inj1hawmarr2vaswduu09xvkcqjqm79d5zp8zku95r",
           "51434"
         ],
         [
           "inj1zejzp0ne0hh7c0wupuspkcqwajlw6kww3r86jl",
           "20105"
         ],
         [
           "inj1j8jdreca56zey784s43jqqsgp224ulhqxygsmp",
           "314"
         ]
       ]
     }
   },
 }

The executable message for part three looks as follows:

[
     {
       "wasm": {
         "execute": {
           "contract_addr": "inj1lq7etsvahc3rn6jnj3chvpx4d8hxwp4c3xy2wt",
           "msg": "ewogICAgInJlZ2lzdGVyX3Zlc3RpbmdfYWNjb3VudHMiOiB7CiAgICAgICJ2ZXN0aW5nX2FjY291bnRzIjogWwogICAgICAgIHsKICAgICAgICAgICJhZGRyZXNzIjogImluajF6MzU0bmthdThmMGR1a2d3Y3RxOW1sYWR2ZHd1NnpjajhrNDkyOCIsCiAgICAgICAgICAic2NoZWR1bGVzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgInN0YXJ0X3BvaW50IjogewogICAgICAgICAgICAgICAgInRpbWUiOiAxNjc5MzE4NTc5LAogICAgICAgICAgICAgICAgImFtb3VudCI6ICIwIgogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgImVuZF9wb2ludCI6IHsKICAgICAgICAgICAgICAgICJ0aW1lIjogMTY5MjQ3Mjk3OSwKICAgICAgICAgICAgICAgICJhbW91bnQiOiAiMTMxNTQ5MjMwMDAwMDAiCiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICBdCiAgICAgICAgfQogICAgICBdCiAgICB9CiAgfQ==",
           "funds": [
             {
               "denom": "ibc/EBD5A24C554198EBAF44979C5B4D2C2D312E6EBAB71962C92F735499C7575839",
               "amount": "13154923000000"
             }
           ]
         }
       }
     },
     {
       "wasm": {
         "execute": {
           "contract_addr": "inj1z354nkau8f0dukgwctq9mladvdwu6zcj8k4928",
           "msg": "ewogICAgInNldF90b2tlbnNfcGVyX2Jsb2NrIjogewogICAgICAiYW1vdW50IjogIjg0NTg3MCIKICAgIH0KICB9",
           "funds": []
         }
       }
     },
     {
       "wasm": {
         "execute": {
           "contract_addr": "inj1z354nkau8f0dukgwctq9mladvdwu6zcj8k4928",
           "msg": "ewogICAgInNldHVwX3Bvb2xzIjogewogICAgICAicG9vbHMiOiBbCiAgICAgICAgWwogICAgICAgICAgImluajFxNXdtZnpsNmdmZTYyOWNjNXlhY2x1ZXJwaGY4ZDVncWpkNTA1NSIsCiAgICAgICAgICAiMjgxNDgiCiAgICAgICAgXSwKICAgICAgICBbCiAgICAgICAgICAiaW5qMWhhd21hcnIydmFzd2R1dTA5eHZrY3FqcW03OWQ1enA4emt1OTVyIiwKICAgICAgICAgICI1MTQzNCIKICAgICAgICBdLAogICAgICAgIFsKICAgICAgICAgICJpbmoxemVqenAwbmUwaGg3YzB3dXB1c3BrY3F3YWpsdzZrd3czcjg2amwiLAogICAgICAgICAgIjIwMTA1IgogICAgICAgIF0sCiAgICAgICAgWwogICAgICAgICAgImluajFqOGpkcmVjYTU2emV5Nzg0czQzanFxc2dwMjI0dWxocXh5Z3NtcCIsCiAgICAgICAgICAiMzE0IgogICAgICAgIF0KICAgICAgXQogICAgfQogIH0=",
           "funds": []
         }
       }
     }
 ]

Copyright

Copyright and related rights waived via CC0.

5 Likes

Excellent proposal. I’m glad you went with solid, well-known Cosmos tokens, not a bunch of bridged ERC-20s (I was a bit worried about that!). I have a few questions, though.

What bridged version of USDT and USDC will be used?

Why are you proposing to incentivize an unstaked ATOM pool? Doesn’t seem to make sense, given that we will have to use ASTRO to compensate LPers for their missed staking rewards (in addition to IL). There’s really no possible world where swap fees could ever compensate LPers for missed staking rewards, so LPing ATOM on Astroport is fundamentally unsustainable.

Seeing as there are at least two decent ATOM LSDs to use instead of unstaked ATOM, it makes sense that we use one of those instead - because it’s far cheaper to incentivize, and thus would result in much deeper liquidity.

Thanks, Stefan. I agree with the listed token pairs.

I have similar question as John, with regards to the type of USDT and USDC used. It will make sense to utilise the USDT currently used on Helix, which I’m assuming its an ERC20 from Ethereum. As for USDC, since axlUSDC is heavily utilised in Cosmos, having the Injective’s USDT paired with axlUSDC will drive much needed volumes through this pair. On top of that, the Astroport bridge between Injective & Terra should support axlUSDC transfers.

With regards to @John_Galt’s suggestion to use stATOM as opposed to ATOM, there might be merits to the suggestion, however, the lack of an incentivised stATOM-ATOM pool on Astroport makes swapping back to ATOM tedious. Moreover, a stATOM-ATOM doesn’t allow Astroport to market-make on Injective’s orderbook for its ATOM-USDT pair. At this moment, an ATOM-USDT will make sense. In the future, having an incentivised stATOM-ATOM on Astroport will open up more possibilities of pairing ATOM with other Cosmos assets on Astroport.

2 Likes

I agree with this. ERC20 USDT paired with axlUSDC will be the most important stablecoin pair

Yeah, that’s a good point about using ATOM, so that in the future the liquidity in that pool can be projected onto the Helix ATOM-USDT order book. And I do agree that the current paradigm is to trade ATOM on DEXes, not an ATOM LSD. So using an ATOM LSD would seem strange, while using ATOM would seem normal.

But eventually, there will come a day when Astroport and Helix and even Osmosis will be forced to switch their main ATOM trading pairs to an ATOM LSD. Using unstaked ATOM and having to compensate liquidity providers for their forfeited staking rewards makes little sense, and is completely unsustainable in the long term.

Since all DEXes will have to make the switch eventually, maybe Astroport should take the initiative and do it first. If Astroport starts incentivizing an ATOM LSD instead of ATOM, it will have a clear competitive advantage against other DEXes.

The Astral Assembly will have to have this liquid staking discussion eventually. Otherwise, we’ll end up in a situation where we’re incentivizing unstaked LUNA, INJ, ATOM, SEI, NTRN - and paying out boatloads of incentives just to compensate for forfeited staking rewards.

1 Like

I agree that long term we should all look into incentivizing stATOM liquidity. The proposal mentions ATOM because that token is trading on Helix and thus it has demand and volume we can use to estimate potential fees on Astroport.

As far as I know, the USDC flavour used on Helix is the Wormhole one. I assume that once Axelar integrates with Injective, Astroport can also move to axlUSDC.

I don’t think bridging axlUSDC from Terra is a good idea. Keep in mind that axlUSDC bridged from Terra to Injective will have a different IBC denom than the one coming directly from Axelar to Injective. Things can get really confusing, hence I think it’s safer to use the Wormhole version for now.

The token denoms are as follows:

USDC | NATIVE (wormhole) | factory/inj14ejqjyq8um4p3xfqj74yld5waqljf88f9eneuk/inj1q6zlut7gtkzknkk773jecujwsdkgq882akqksk

USDT | Bridged ERC20 | peggy0xdAC17F958D2ee523a2206206994597C13D831ec7

ATOM | IBC | ibc/C4CFF46FD6DE35CA4CF4CE031E643C8FDC9BA4B99AE598E9B0ED98FE3A2319F9
1 Like

Definitely a great proposal, token pairs look good. Incentivized stATOM-ATOM pool in future makes a lot of sense as per @MaxCallisto comment. Cheers @stefan

Wormhole USDC does not have any utility on Cosmos or even on Injective. We may want to reconsider if its worth incentivising a pool with almost no utility, and wait for axlUSDC to be deployed on Injective before considering incentivising a USDC-USDT pool.

1 Like

But who is John Galt?

2 Likes

We should absolutely be using all IBC enabled assets , with deep liquidity. axlUSDC has far more liquidity than wormhole . As well , we should be promoting stATOM as much as we can as the Astral Assembly. Stride is in Astroports corner , and is purchasing xASTRO on a daily basis

Makes sense if Stride would incentivize an stATOM pool with xAstro as they do with stLUNA. No info on that yet tho, and about purchasing xASTRO on a daily basis, do you have any info how it is purchased? Legit curious, this has been asked plenty times and been left unanswered afaik.

1 Like

Hey everyone, this is Mirza from Injective Labs. Love this overall proposal and excited to see Astroport live on Injective!

Just wanted to provide my two cents regarding USDC formats. Currently the major USDC form live on Injective dApps is Wormhole USDC. As a result if Astroport is not using that form of USDC, traders would not be able to easily arb between the Injective orderbook and Astroport’s amm, leading to a far less capital efficient environment. Ideally traders should be able to easily arb between dApps such as Helix and Astroport with ease but that is only possible if the same form of USDC is utilized.

Converting the current whUSDC into axlUSDC across Injective exchange dApps would be highly cumbersome for users who have onboarded already. USDC in general will have a canonical form within the Cosmos ecosystem by Q2 of this year. At this time it won’t really matter if you are using whUSDC, axlUSDC or peggy USDC since all of them will likely have to be burned to generate the new forms of USDC. I recommend looking into the cross chain transfer protocol (CCTP) introduced by Circe (the creator of USDC). Effectively protocols supporting CCTP will enable the mint and burn functionality for the USDC provider. I have confirmed with the Wormhole team that they will be one of the providers adopting the CCTP standard.

In summary, I want Astroport to be the biggest and most capital efficient AMM in history. I would like to see efficient trading from day one, whereby users can easily take part in arbs and more sophisticated trading strategies. I also think that USDC having a canonical form by Q2 means that Cosmos will have one core standard and since Wormhole will support that standard, users on Injective will be able to utilize the correct format very soon.

Happy to of course get feedback here!

1 Like