Getting started with Charm on testnet
Charm is a new decentralized options protocol. It’s designed in a radically different way and uses a mechanism that can create options liquidity more efficiently.
Today we launched on testnet and beta.charm.fi is now live, so you can try it out for the first time! Below are instructions on how to get started. If you run into issues or have any questions, feel free to ask in our discord.
Instructions
1. Install Metamask and set up a wallet: https://metamask.io/download.html
2. Switch Metamask to the Rinkeby testnet. This is a test network which means you can try buying options without spending real money.
3. Get test ETH from the Rinkeby faucet: https://faucet.rinkeby.io/. Test ETH is valueless, but is needed to send transactions on testnet.
The faucet requires posting on Twitter/Facebook — if you don’t want to do that, just ask us for test ETH on discord and we can send you some.
4. Get test USDC by going to https://beta.charm.fi/faucet and clicking “Launch App” then “Get tokens”. These are needed to buy put options and short put options. The transaction will fail if you try to get tokens more than once every 24 hours.
Metamask will open up when you click “Get tokens”. Click on “Confirm” to send the transaction. It’ll take a minute or so for you to get your test USDC. Once you see the tokens in your balance, click on “Go to Charm”.
5. Now you have all the test tokens you need to buy options! You’ll see a list of options markets — choose one and click “Buy”. The options symbol like “ETH 20NOV2020 450 C” means an ETH call option with a strike price of 450 that expires on 20 November 2020.
6. In the buy page, enter a small amount, click the buy button and confirm the transaction in Metamask. Make sure the amount you enter isn’t more than your test token balance. The quoted price per option and the price impact (how much the quoted price differs from the marginal price) is also shown at the bottom.
Owning 0.1 call options (with a strike price of 450) means you have the option to buy 0.1 ETH for a cost of 45 USDC at expiry. In practice, Charm options are cash-settled so your options will be exercised automatically if it’s profitable to do so. For example, if the price of ETH/USDC is 480 at expiry, your 0.1 call options will be worth 3 USDC.
0.1 put options gives you the option to sell 0.1 ETH and receive 45 USDC. So they increase in value as the price of ETH decreases (and are a way of shorting ETH). For example, if the price of ETH/USDC is 400 at expiry, your 0.1 put options will be worth 5 USDC.
0.1 covered calls means you agree to sell 0.1 ETH for 45 USDC if it’s worth more than 45 USDC. This is useful if your outlook is neutral and you want to earn a yield on your ETH. (Short puts are identical to covered calls, but are bought/sold with USDC).
7. It’ll take a minute or so for the transaction to go through. When it’s confirmed, your new options position will show up on the homepage:
8. Your options can be sold at any time or held until expiration when they can be redeemed for the settlement value. You don’t have to worry about forgetting to exercise your options — they’ll be exercised automatically if they’re in-the-money and you can collect the payout any time (even 5 years later).
How it works under the hood
An automated market-maker (AMM) is used to issue and price the options. There are two really cool things about Charm’s AMM:
- No liquidity providers or options writers/sellers are needed. Instead, the AMM automatically matches up calls and covered calls, as these have opposite liabilities (same with puts and short puts). It does this in a way that guarantees it always has enough to pay out all options.
- The options are priced freely by the market, purely by supply and demand. The AMM gradually increases the price with each buy trade and gradually decreases it with each sell trade. This means it can offer a fair and efficient price.
If you’d like to learn more in depth about Charm’s AMM, please take a look at the technical litepaper.
Join our growing community on discord — we’d love to hear any feedback, questions or suggestions!