Hegic Staking Pool: Motivation & Design
Tags: Solidity, Wbtc, Eth, Options, Hegic

TL;DR version

I started building the Hegic Staking Pool (hegicstaking.co) to enable small bag HEGIC holders to participate in the whale game of earning real profits generated by usage of a real application protocol I ended up building what I consider an elegant and simple solution to stake HEGIC and earn both ETH and WBTC that is used by any size bag holders. It reached $1m in TVL in the first 24h and is now (<4 days after launch) at +$1.5m TVL. No issues have been reported. It has the lowest fees you will find.

In this article I want to explain why I decided to build this and how it is designed for you to be able to take a decision on staking or not in Hegic Staking Pool

IMPORTANT: You must Do Your Own Research. When you deposit your HEGIC in the smart contract, you are subject to the rules of the contract. The contract is between you and the code. I am not a manager and am not responsible in any way for unexpected outputs. HSP should be considered an experiment.

Why?

I discovered Hegic Protocol around July 2020. I loved it from the very beginning. Peer-to-pool approach applied to options? Interesting AF. I started reading as much as possible and contacted Molly Wintermute (its solo dev).

A couple of months later, v888 was introduced. It included something called Staking Lots. Basically, these Staking Lots are some kind of financial asset that receive 100% of the fees generated by Hegic Protocol. Great! A cash-flow (WBTC / ETH) generating financial asset. I decided I needed to buy at least one but preferably two, to earn both WBTC and ETH. Its price? 888,000 HEGIC. The price of a HEGIC? Still to be discovered (this was before 10/10/2020).

Just after HEGIC IBCO, price of HEGIC was $0.1337. This is, the price of two Staking Lots was close to $240k. I could not buy them. F**K! But what if I got together with other HEGIC holders and bought the financial asset I wanted?

Then I realised I could buidl a Pool and open this “get together” thing for anybody interested in earning real WBTC and ETH, regardless on the amount of HEGIC owned. And that is what I did.

I wanted to make it as close as possible to owning a full Hegic Staking Lot. But I came up with something better. I made it close to owning a Hegic ETH Staking Lot AND a Hegic WBTC Staking Lot. Also, I wanted it to be fair, trustless, reliable and efficient.

How it works?

Once you understand how Hegic Protocol works, own HEGIC and you want to earn juicy ether and bitcoin generated by the protocol, you need to:

Go to hegicstaking.co

Press Connect Wallet

Approve the contract to move your HEGIC

Input the amount of HEGIC you want to deposit (default: your total balance because YOLO)

Press DEPOSIT

Then, as soon as your transaction is mined, you will have deposited your HEGIC in the Smart Contract and you will receive an IOU token called sHEGIC (Staked Hegic) that you will be able to exchange back for HEGIC.

Also, you will start earning ETH and WBTC as soon as you stake your HEGIC, no need to wait for others to deposit with you. Great, huh?

That’s it. Is it simpler than you expected? Thanks.

During the period of time you have your HEGIC staked, your account will accrue ETH and WBTC. You can claim that profit anytime.

Withdrawal is as simple:

Input the amount you want to withdraw

Press WITHDRAW

No lock up period (ups! 15 min lock-up period). No withdrawal fee.

Your sHEGIC will be burnt forever and you will receive your HEGIC back in your wallet.

What about the design?

As I said before, I designed the Hegic Staking Pool to be as close as possible to owning a WBTC Staking Lot and a ETH Staking Lot. At the same time. The only difference is that users do not need to have 1,776,000 HEGIC.

0. Simplicity

I designed the Smart Contract to be simple. One simple goal is to be achieved: group funds together to buy Hegic Staking Lots. I created a simple solution for a simple problem.

It does not need any external inputs in order to work. No manual actions are required, no maintenance, nothing. You do not need my approval. You do not need any actions from me or any other human.

Grouping funds together and buying a financial asset is simple enough to use a simple design. I kept it simple to avoid using experimental stuff that may fail, resulting in lost funds or malicious actions / policies.

Community Governance is good when decisions are to be taken. I don’t think we need to add that amount of complexity on top of a relatively simple Smart Contract.

1. Fees

When I launched the Hegic Staking Pool (HSP) I said one thing: “I SET THE LOWEST FEES IN THE MARKET”.

This means that you get to be a Hegic Staker for only a 5% performance fee (ie 5% of your profit). This means that I only earn fees if you earn profit. I call it aligned incentives.

First stakers got a discount on their fees. FOREVER. Enforced by the code.

I cannot increase your fees once you have deposited any HEGIC amount. However, I can lower your fees. Isn’t that cool?

2. Earn WBTC AND ETH

To be able to earn WBTC and ETH at the same time, HSP contract buys 1 ETH Lot, then 1 WBTC Lot, then 1 ETH Lot, … This way, Pool owners should earn half of the profits in ETH and half in WBTC.

This makes HSP a fit even for holders with over 888,000 HEGIC. They can earn fees both in WBTC and ETH. This would not be possible with less than 1,776,000 HEGIC.

I chose the contract to earn WBTC and ETH to make it closer to owning a Hegic Staking Lot. Also, I strongly believe that “cashing out” profits is good for HEGIC price dynamics and good for stakers. Do you want to compound your profits? Buy more HEGIC and restake it. Regarding this, I’ll say one thing: do not put all your eggs in the same basket.

2a. Simple but smart lot management

Staking Lots are bought automatically once available liquidity (total liquidity-used liquidity) is higher than 888,000 HEGIC.

The Smart Contract will buy first 1 ETH Staking Lot, then 1 WBTC Staking Lot, then again 1 ETH Staking Lot, … This achieves an average of 50–50 weighting.

When it needs to sell, the Smart Contract will sell first 1 ETH Staking Lot, then 1WBTC Staking Lot, … This will result in a balanced exit strategy, the last lot being sold will be a WBTC one.

As you will read below, this 50–50 weights might change in certain cases like need of extra liquidity to fulfil withdrawal requests or when only 1 lot is held by the contract.

3. Maximize Liquidity

Hegic Staking Lots are locked up for 24h after purchase. This means that even if the HSP would not have a lock-up period (read below. spoiler: 15 min lock up period applies) a user might be “locked” in the staking pool for 24h if a staking lot had been recently purchased and not enough liquidity is available.

To reduce (almost avoid) impact of Hegic’s 24h lock up period and leveraging the alternated (1ETH, 1WBTC, 1ETH…) purchases of each assets’ lots, the pool will sell unlocked lots even if that means unbalancing asset weights (eg. selling all ETH lots and reaching a 100% WBTC staking pool to be able to create enough liquidity). This would only happen if withdrawals need more liquidity than is currently available.

After this unbalancing, the pool will buy underrepresented lots (i.e. ETH lots in the above’s example) until equilibrium is reached.

4. Trustless

HSP Smart Contract has been designed to avoid dependency on its owner / dev (me). No benevolent dictator, no s**t.

This means that, when you deposit, you know your conditions for the future. For example, if fees are 5% when you stake your HEGIC, I cannot increase them for you. Your performance fees will be capped at 5% FOREVER.

This Smart Contract is not upgradable and modifiable on purpose. I wanted you to know for sure that nothing would change. The terms are “hardcoded”.

I can change:

Performance Fee : I can set Performance Fees at a maximum of 8% of profits. Changes only apply to new users. If I set a lower fee, old users will get it if they deposit again.

: I can set Performance Fees at a maximum of 8% of profits. Changes only apply to new users. Lock-up period : it is set to 15 minutes by default. It is meant to avoid flash loan attacks. I can only disable this lock-up period. I cannot increase it.

: it is set to 15 minutes by default. It is meant to avoid flash loan attacks. I can only disable this lock-up period. I cannot increase it. Fee Recipient : The address that receives performance fees can be changed by contract’s owner.

: The address that receives performance fees can be changed by contract’s owner. Deposits: I can enable and disable users’ ability to stake HEGIC using the HSP. This is to be used only in case a security issue is reported and it does not have any effect on users that deposited before the change.

For example, stakers that deposited the first 8,880,000 HEGIC earned a discount on fees of at least 20%. This discount is enforced by code. They cannot get a higher fee, even if they want.

This is the one thing I am most proud of: You do not need to trust nobody to use it. Not even a “decentralized” community or voters or anything.

Returns and APY

IMO, 4 days is a too short period to evaluate returns. I will update on this. Some users have their own opinion already, though.

I would wait some time to get steady state numbers. Evaluating returns on short periods of time increase impact of entry and exit timing, Hegic Protocol usage over the period, …

I’ve received numbers from 144% APR to 300% APR.

If you have your own numbers, send them to me, please.

Remember: Real investors do their own numbers.

Next steps

As I said, this is not a complex project that requires of constant innovation and new technology to be used.

I will use the next days and your feedback to improve UI and clarify common questions. Also, I will build the stats tab to let you know how good this investment is.

I do not want to add unnecessary complexity or new protocols on top of the Hegic Staking Lot so I will only work on this to keep it sure and transparent. I will not change internal logic or functioning.

As soon as HSP reaches steady state, I will go back to WhiteheartDefi and finish building the awesome product we are getting ready for YOU.

Thanks for your support.