Earning BTC on Avalanche #2 — $BTC Vaults with Struct Finance

Earn 8% fixed to 48% variable APR on $BTC by depositing in Struct Finance’s $BTC.b Vaults.

harry.avax
Struct Finance
10 min readAug 7, 2023

--

Introduction

One of the more recent DeFi protocols to join the growing Avalanche ecosystem is Struct Finance, who launched a few months ago with their structured financial instruments.

Struct Finance
Struct Finance

This sees yield-bearing products split into separate tranches, with different levels of risk and strategies for each. Their first vaults are interest rate products built on top of GMX, offering a lower risk fixed return tranche and a higher risk variable return tranche.

There’s a great post on the Avalanche blog introducing Struct and covering their launch, if you’d like to read a little more:

I’ll be taking a look at their latest vault today, which is currently offering an estimated APR of 8% on $BTC.b deposits in the fixed tranche and up to 48% for the variable tranche.

Struct Finance

Struct Finance — Markets
Struct Finance — Markets

The launch of Struct Finance has been done in a carefully considered manner, with new vaults being released periodically, steadily adding support for different assets and raising the cap on deposits.

Struct Finance — TVL
Struct Finance — TVL

This has lead to some managed but still impressive growth, seeing $1.78m in TVL attracted in the couple of months since their first vault went live.

Struct Finance — $USDC Vaults
Struct Finance — $USDC Vaults

The first vaults we saw from Struct took $USDC deposits for both the fixed and variable tranches, with annualised returns ranging from 7.25% to 15% on the fixed side and boosted with incentivised $AVAX rewards up to a staggering 212.91% on the variable side.

Struct Finance — Genesis Vaults
Struct Finance — Genesis Vaults

These vaults are all built on top of $GLP from GMX, which is used to provide liquidity on the platform and earns fees by doing so. For a more detailed explanation on how this works, you can take a look at my article from February of this year on staking $GLP with GMX and Yield Yak:

Struct then takes these deposits to open a yield-bearing position, in this instance by minting $GLP with them. Once the vault matures, depositors to the fixed tranche are prioritised, receiving their principal and the accrued yield at the fixed rate back.

Struct Finance — Tranches
Struct Finance — Tranches

Depositors to the variable tranche then receive any residual assets. The rates for this side are generally higher, as the yield is leveraged and amplified. There are also additional boosted rewards in the form of $AVAX offered at the moment, as part of the Avalanche Rush rewards allocated to GMX.

Struct Finance — Vault Risks
Struct Finance — Vault Risks

As a result, this does come with additional risk. The vault may not perform as well as expected, for example, leading to the variable tranche receiving less or even no yield, in more extreme cases.

I’d highly recommend reading the Risk & Fact Sheet from Struct’s documentation and make sure that you fully understand the risks involved with these vaults before considering making a deposit.

Seeing success with their $USDC vaults, Struct then launched BTC.b-USDC vaults in July. These took $BTC.b deposits for the fixed tranche and $USDC for the variable tranche.

With the subscription for these currently closed, Struct have since released their latest vaults, this time taking $BTC.b deposits for both the fixed and variable tranches.

It’s the fixed tranche of this vault that I’ll be depositing to today.

Wallets

I created a new wallet with the following address to use for this strategy:

0x2700767cD9913a175136Be7e7a5AcD46a4643a8e

Which you can track and follow on Avascan, SnowTrace and DeBank.

I then sent 0.0045948 BTC.b to this address, followed by 0.1 AVAX, with the $BTC.b to deposit in the vault and the $AVAX to cover any gas fees involved.

Obtaining $BTC.b

Before making a deposit to the $BTC.b vault, you first need to acquire some. If you already have $BTC that you’d like to use for this then you can use the Avalanche Bridge to bridge it over:

It’s worth noting that if you bridge $75 in $BTC or more then you’ll currently receive a small $AVAX airdrop to cover gas fees when using it once it arrives.

If not, as was the case for me, then it’s a simple process to acquire as $BTC.b is available on a number of decentralised exchanges. To make this even easier, I used Yak Swap from Yield Yak, which is a no-fee DEX aggregator, to make sure I got the best possible rate.

Yak Swap — Exchange $USDC for $BTC.b
Yak Swap — Exchange $USDC for $BTC.b

I had $USDC that I wanted to exchange for $BTC.b, so selected the relevant options in the left-hand pane and then clicked the 100% button to select all my $USDC for the exchange.

This showed me the two-step exchange in the screenshot above, first swapping the $USDC for $WAVAX on Pangolin Exchange and then exchanging that for $BTC.b on Uniswap.

SnowTrace — Transaction Details
SnowTrace — Transaction Details

Happy with the quoted rate, I then clicked the Swap button to complete the exchange. This required just a single transaction to complete and gave me 0.0045948 BTC.b in return.

This was done from my main wallet, and I then sent the $BTC.b and some $AVAX for gas fees to the address for use with this strategy as in the Wallet section just above.

Entering the Variable $BTC.b Vault

Once I had the $BTC.b in my wallet, the next step was to select the vault that I wanted to deposit into.

Struct Finance — Markets
Struct Finance — Markets

This was done by clicking the BTC.b-BTC.b liquidity pool on the Markets list on Struct Finance.

Struct Finance — $BTC.b Vaults
Struct Finance — $BTC.b Vaults

From there, you then need to select the vault that you’d like to enter. You can check the status of the vaults by hovering over the symbol to the left. If it’s pink, it shows that the vault it currently closed for deposits and is working towards maturity.

If it’s the blue/cyan colour as in the screenshot above, it shows that the vault is open for deposits and displays information on the subscription period.

Struct Finance — $BTC.b Vault Details
Struct Finance — $BTC.b Vault Details

Clicking on the chosen vault selects it and displays more details, allowing you to toggle between the Fixed and Variable tranche depending on which you’d like to enter.

At this point, it’s worth checking the deposits in both tranches. Struct works in such a way that deposits in both sides should be balanced, meaning any excess in either side doesn’t enter the vault and must be claimed once the subscription window closes.

Struct Finance — $BTC.b Fixed Vault Deposit
Struct Finance — $BTC.b Fixed Vault Deposit

As I was going for the Fixed tranche, this wasn’t an issue as the deposits in that side were lower than those in the Variable side. I then entered the 0.0045948 BTC.b I wished to deposit and clicked the Approve button.

Struct Finance — $BTC.b Approval
Struct Finance — $BTC.b Approval

This required a single transaction and automatically updated to display a message along the top of the screen letting me know once it had confirmed. I then clicked the Deposit button to complete the process.

Struct Finance — $BTC.b Deposit Conformation
Struct Finance — $BTC.b Deposit Conformation

There was another transaction required to confirm this, and the page automatically updated again once this had taken place and displayed my position in the right-hand panel.

And that’s it! Once you have successfully entered a vault, you can easily track your positions through the Dashboards page.

Struct Finance — Dashboards

This allows you to quickly view your vaults on the Positions tab, and any deposits or withdrawals you’ve made on the Transactions tab.

The two transactions it took to enter the vault needed just 0.007509112 AVAX for gas fees in total, leaving me with 0.092490888 AVAX of the original 0.1 AVAX that I’d allocated for this purpose.

Projections

The fixed tranche currently has an estimated APR of 8%.

Assuming that this remains the same for the two month duration of the vault, I can expect to earn the following on my 0.0045948 BTC.b deposit:

2 months — 0.00006126 BTC.b

This should result in me being able to withdraw 0.00465606 BTC.b from the vault once it reaches maturity on the 4th of October.

Conclusion

I’ve been really impressed watching Struct Finance grow over the last few months. I particularly like the responsible approach they’ve taken in the initial phase, with the gradual rollout of new vaults and raising of the deposit caps.

Struct Finance — Upcoming Trader Joe Autopool Vaults
Struct Finance — Upcoming Trader Joe Autopool Vaults

There’s also plenty more to come from Struct, with vaults built on Trader Joe’s Autopools up next. They’ve just shared a thread on Twitter walking through these, and there’s a more in-depth article available on their Medium available if you’d like to read more on the subject:

I found the process of entering the vaults very straightforward and easy to follow, with the UI being intuitive to use and signposting any next steps.

Struct Finance — Matured $USDC Vault
Struct Finance — Matured $USDC Vault

The returns have, for the most part, been excellent too. The highlight is one of the earliest $USDC vaults, which realised returns of 16.33% on the Variable tranche in its four week duration. Annualised, that comes to 212.91%!

Whilst these rates are impressive, it’s important to note that they are currently incentivised with Avalanche Rush rewards from GMX, which means they won’t remain at this level indefinitely. It may be tempting to dive in to make the most of them while they’re available, but it’s critical that you understand the risks before doing so.

Struct do a great job of explaining these in their documentation, and from my experience have been very responsive on Twitter and in their Discord if anyone ever has any questions.

In addition to the upcoming Trader Joe Autopool vaults, there are others in the works too. With the recent release of GMX V2, I’d be surprised if there aren’t vaults based on the new $GM pools available soon.

As Struct themselves so fantastically put it with their line of Everything can be tranched!, there is plenty more to come as well.

Struct Finance — Everything can be tranched!
Struct Finance — Everything can be tranched!

Of particular interest to me are the LSTs and FX options that we may see before long. Now that Balancer has launched on Avalanche and is attracting some significant liquidity, I think there’s a great opportunity for Struct to build tranched offerings on top of their innovative pools.

This might see us with fixed and variable products available for the pool for $yyAVAX from Yield Yak, for example, or the pools for $ggAVAX and $sAVAX from GoGoPool and BENQI respectively.

Struct Finance — The Factory
Struct Finance — The Factory

Another key development that I’m eager to hear more about is what they call The Factory, which will give people the ability to permissionlessly create their own structured products, significantly expanding the possibilities and community-based aspect of their offering.

Struct Finance — Traditional Structured Financial Products
Struct Finance — Traditional Structured Financial Products

If you’d like to read more from me then please be sure to follow me on Twitter and on Medium, where you can find all my other articles and the latest updates on strategies.

You can also find me and all the protocols mentioned in this article at the links just below.

--

--

harry.avax
Struct Finance

Writing about DeFi, onchain yield and tracking real performance over time. Core Contributor @ Yield Yak | https://x.com/harry_avax