<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Mellow Protocol on Medium]]></title>
        <description><![CDATA[Stories by Mellow Protocol on Medium]]></description>
        <link>https://medium.com/@mellowprotocol?source=rss-d4dd1e3c9a8c------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*VoOyKsuuhD3uTJDQXI7_Sw.png</url>
            <title>Stories by Mellow Protocol on Medium</title>
            <link>https://medium.com/@mellowprotocol?source=rss-d4dd1e3c9a8c------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 20 Jun 2026 05:12:13 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@mellowprotocol/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Mellow Protocol going live — strategies and launch]]></title>
            <link>https://mellowprotocol.medium.com/mellow-protocol-going-live-strategies-and-launch-77ba6761aabf?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/77ba6761aabf</guid>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[liquidity-management]]></category>
            <category><![CDATA[defi]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Tue, 15 Nov 2022 14:34:42 GMT</pubDate>
            <atom:updated>2022-11-15T15:37:05.406Z</atom:updated>
            <content:encoded><![CDATA[<h3>Mellow Protocol going live — strategies and launch</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tNqMy_-ZxMad2-dfTCOleg@2x.png" /></figure><p>How’s your bera market, folks? We at Mellow think it’s a great time to build and focus on tech.</p><p>Our main goal is to create a robust ecosystem for building DeFi strategies — provide users top-notch safe yield-generating products built on top of Mellow and help other protocols to get sustainable funds and pools management.</p><p>Sooo… The Day is coming! Yes, we’re ready to show you what our team has been building for more than a year. <strong>We’re announcing Mellow Protocol launch!</strong><br>The protocol is deployed and will be launched for the first users on <strong>November 17th</strong>.<br>Mellow will be available on <strong>Ethereum mainnet first</strong>.</p><h3>Launch details</h3><p>We want to bring the best experience to our users and will start with limitations that will help to gather feedback and make the launch more robust.</p><p>Here’re the raw facts:</p><ul><li>Date — <strong>November 17th</strong></li><li>Initial TVL limits — <strong>500k per strategy</strong>, will be increased gradually after the launch</li><li>Gated access — <a href="https://opensea.io/collection/lobsterdao"><strong>LobsterDAO NFTs</strong></a><strong> and </strong><a href="https://mirror.xyz/degenscore.eth/S81434DTCCHfeGze7LeI9X_fg46Z-kwnkElyEm5JrXg"><strong>DegenScore Beacons</strong></a><strong> holders</strong></li><li>Gated access period — <strong>~1 month</strong></li></ul><h3>Strategies</h3><p>At the launch, strategies with completely different approaches will be available — <strong>Boosted UniV3</strong> and <strong>Fearless Gearbox</strong>. Also, Mellow already has a strategy built on top of the protocol by <a href="https://www.voltz.xyz/">Voltz Protocol</a> — <strong>Mellow-Voltz LP Optimizooor</strong>, we’re excited that our vaults already help other protocols to build their strategies.</p><h4>Boosted UniV3</h4><p>Boosted UniV3 strategy provides a risk profile very similar to a fixed UniV3 position but with higher returns by the combination of <a href="https://uniswap.org/">UniV3</a> and <a href="https://yearn.finance/">Yearn</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/600/1*8SRP3KlZjZxiXRasqFWFkQ@2x.gif" /></figure><p>Consider UniV3 ETH/USDC 0.05% pool and assume we’d like to put our liquidity into the [1000, 2000] price range (we refer to it as the Domain price range). How can we do better than just providing it directly into the pool?</p><p>The trick is to put only a tiny portion of liquidity into a really narrow price range earning the same fees as direct providing. As soon as the price risks going out of the narrow range, rebalance the interval to cover the price safely.</p><p>The liquidity requirements for UniV3, in this case, are significantly lower. The rest of the liquidity is allocated to Yearn. Thus the overall returns are higher for the UniV3 Boosted strategy.</p><p><strong>Concentrated liquidity and swaps risks</strong></p><p>The strategy has the same risk as the underlying UniV3 position with the Domain price range with one exception: if the rebalance happens when the price is out of the narrow price range. In this case, there are two key differences:</p><ol><li>Boosted UniV3 swaps at a better price than UniV3</li><li>UniV3 gets fees for the swap, Boosted UniV3 pays fees for the swap</li></ol><p>Generally, a better price gives much more benefit than fees loss so Boosted UniV3 will perform better than UniV3. However, there are some edge cases when the price move is too little to compensate for the loss of the fees. In these rare cases, the Boosted UniV3 position will perform slightly worse.</p><p>For more details and formulas see our article about the tricks with Uniswap V3:</p><p><a href="https://mellowprotocol.medium.com/uniswap-v3-voodoo-magic-fuckery-f1773aba684">Uniswap V3 Voodoo Magic Fuckery</a></p><h4>Fearless Gearbox</h4><p>This strategy allocates the tokens into Gearbox Protocol to get the leverage and puts them into the Curve pool. Then the strategy deposits Curve LP tokens into Convex where the juicy yields live.</p><p>The strategy implements the backstop module:</p><blockquote>The backstop module monitors the position’s health factor and has pre-defined deployment parameters when the strategy can be stopped. Under the specific market conditions, Backstop Module automatically triggers Closing Credit Account to avoid liquidations.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*MBtnDmyTa9juVY31.png" /></figure><p>For more details see the detailed article on the Fearless Gearbox:</p><p><a href="https://mellowprotocol.medium.com/fearless-gearbox-strategy-by-mellow-ed7c52e002e9">Fearless Gearbox strategy by Mellow</a></p><h4>Mellow-Voltz LP Optimizer</h4><p>The strategy was built by <a href="https://voltz.xyz/">Voltz Protocol</a>, and we’re proud that the team chose Mellow to work on their strategy, details are described in the article in Voltz Protocol blog:</p><p><a href="https://www.voltz.xyz/resource-centre/introducing-the-mellow-voltz-lp-optimizooor">Introducing the Mellow-Voltz LP Optimizooor</a></p><h3>Voltz Labs ⚡️ on Twitter: &quot;Today we&#39;re announcing the launch of the @Mellowprotocol LP Optimisoor - allowing traders to passively LP on Voltz Protocol without the risk of impermanent loss (and generating &gt;30% APY in backtested results!)Here&#39;s why we&#39;re excited about this launch 👇 pic.twitter.com/jsKCN7cxcu / Twitter&quot;</h3><p>Today we&#39;re announcing the launch of the @Mellowprotocol LP Optimisoor - allowing traders to passively LP on Voltz Protocol without the risk of impermanent loss (and generating &gt;30% APY in backtested results!)Here&#39;s why we&#39;re excited about this launch 👇 pic.twitter.com/jsKCN7cxcu</p><p>The trick — it’s already live and can be used via Voltz <a href="https://app.voltz.xyz/#/products">dapp interface</a>.</p><h3>Code &amp; audits</h3><p>Our codebase is available on <a href="https://github.com/mellow-finance">GitHub</a>, feel free to check it out and ask any question in our <a href="https://discord.gg/w6sJDJrV65">Discord</a> #💻dev section.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*i9sax3ktHIOVJkv68rYVxw@2x.png" /></figure><p>The protocol core was audited by <a href="https://chainsecurity.com/">Chainsecurity</a> and <a href="https://blocksec.com/">BlockSec</a>, the reports are <a href="https://github.com/mellow-finance/mellow-audits">published in Mellow GitHub</a>.</p><p>Initial strategies are under audit right now and the reports will be published soon.</p><h3>Protocols, integrations and further strategies</h3><p>Besides the initial strategies, there’re more to come and some new strategies are already WIP and will be released soon.</p><p>We see Mellow not only as a solution for LPs, but also as a protocol for protocols that provides strategies for native protocol tokens and treasury management.</p><p>As an integration layer, we’re open to collaboration and integration with any protocols, feel free to contact us in Discord if you want to discuss your strategy ideas or have requests for integrations to implement your strategy.</p><p>Ping us and let&#39;s buidl together!</p><h3>Get involved</h3><p><strong>To get involved join the discussion in </strong><a href="https://discord.gg/w6sJDJrV65"><strong>Mellow Discord</strong></a><strong>, share your ideas and </strong><a href="https://app.mellow.finance/"><strong>check the protocol on Nov 17th</strong></a><strong>.</strong></p><p><strong>Contribute with your fresh, juicy, composable ideas and share your feedback!</strong></p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://docs.mellow.finance/">Docs</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=77ba6761aabf" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Fearless Gearbox strategy]]></title>
            <link>https://mellowprotocol.medium.com/fearless-gearbox-strategy-by-mellow-ed7c52e002e9?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/ed7c52e002e9</guid>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[leverage]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Mon, 07 Nov 2022 16:52:04 GMT</pubDate>
            <atom:updated>2022-11-14T15:35:07.410Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*r54uW_9bQYXEdWgIb0XJtA@2x.png" /></figure><p>Mellow Protocol sees itself as an integration layer for DeFi that enables building automated strategies integrated with best-in-class protocols.</p><p>We love building composable stuff as it’s one of the key benefits of programmable money. That’s why we were interested in Gearbox, as it provides inventory for programmable leveraged strategies. This allows you to increase the capital efficiency of many strategies.</p><blockquote>Gearbox is a generalized leverage protocol. It allows anyone to take DeFi-native leverage and then use it across various (DeFi &amp; more) protocols to earn leveraged yields, this enables you to compose your position as you want. You can find more details in Gearbox <a href="https://docs.gearbox.finance/">docs</a>.</blockquote><p>We implemented integration with Gearbox — our Leveraged Vault. It allows strategists to easily program leveraged strategies for different protocols using Gearbox <a href="https://docs.gearbox.finance/overview/credit-account">Credit Accounts </a>— all of these can be provided for strategists as a ready solution that can be deployed as an end-user product. The goal of the strategist here is to manage the strategy’s risks. Here’s the list of parameters that can be managed to achieve that:</p><ul><li>Set the type of collateral provided to the vault (choose once per initialization)</li><li>Leverage coefficient (choose once per initialization)</li><li>Vault funds allocation (choose once per initialization)</li><li>Backstop parameters</li></ul><p>Let’s first see the diagram showing how everything works:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/980/1*f2aHRZVyrHHy8emdiIYGQQ@2x.png" /></figure><h4>Strategy</h4><p>This strategy allocates your assets into Gearbox and leverages them to put into the Curve pool, then deposits your Curve LP tokens into Convex where you get your juicy yields.</p><h4>Backstop module</h4><p>The backstop module monitors the position’s health factor and has pre-defined deployment parameters when the strategy can be stopped. If market conditions correspond to these parameters Backstop Module automatically triggers Closing Credit Account to avoid liquidations.</p><h4>Maintaining position</h4><p>Not everyone can implement the appropriate infrastructure to automate maintaining the position. Tracking it manually is also not easy — we all need to sleep at least sometimes. While leveraging is also challenging — sometimes quite low depeg can lead to liquidation.</p><h4>Risk management</h4><p>Any on-chain implementation of leverage has some hidden effects — for example, oracle’s deviation:</p><h3>Gearbox ⚙️🧰 V2 LIVE on Twitter: &quot;Check the oracles section to understand that Gearbox uses @chainlink $USD oracles. So when you are dealing with $ETH debt $stETH position, Chainlink price tick is different for both &amp; might cause liquidation even if stETH doesn&#39;t actually depeg relative to ETH. Count that in! pic.twitter.com/hhVqjw8dtK / Twitter&quot;</h3><p>Check the oracles section to understand that Gearbox uses @chainlink $USD oracles. So when you are dealing with $ETH debt $stETH position, Chainlink price tick is different for both &amp; might cause liquidation even if stETH doesn&#39;t actually depeg relative to ETH. Count that in! pic.twitter.com/hhVqjw8dtK</p><p>Estimation of such kind of risks needs the expertise to keep your assets safe.</p><h4>Low entry threshold</h4><p>In fact, Vault represents a tokenized index for leveraged strategy — the user can easily get into such a complex derivative product, while an external party manages the risk. For example, such an index can later be used as an infrastructure for building leveraged indices (IndexCoop team, we got something to discuss👀).</p><p><strong>What are the benefits of such leveraged vault strategies for end users:</strong></p><ul><li>1-click deposit without opening the credit account</li><li>No need to monitor 24x7 your position liquidation status</li><li>Users don’t need to wait to get access to Gearbox</li></ul><h4>Strategies we’re building as an example</h4><p><strong>Current strategy:</strong></p><ul><li>Leveraged FraxUSDC, collateral USDC</li></ul><p><strong>Upcoming strategies:</strong></p><ul><li>Leveraged LIDO, collateral ETH</li><li>Leveraged LIDO, collateral USDC</li></ul><p>The most curious Degens who read our articles until the end could wonder when we will launch the protocol and this pretty strategy. Well, we won’t make you wait for long, it’s less than ten days left until Mellow Protocol launch. The announcement is coming!</p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://docs.mellow.finance/">Gitbook</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ed7c52e002e9" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Announcement of Seed Round led by Robot Ventures, Arrington Capital and ParaFi & latest updates]]></title>
            <link>https://mellowprotocol.medium.com/announcement-of-seed-round-led-by-robot-ventures-arrington-capital-and-parafi-latest-updates-17fb47397fed?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/17fb47397fed</guid>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[liquidity-management]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[ethereum]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Thu, 25 Aug 2022 14:33:56 GMT</pubDate>
            <atom:updated>2022-11-08T22:07:32.153Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DB7lXqOkZFZfDZRVZaqxHw.png" /></figure><p>After Uni V3 was announced in spring 2021, we came up with the idea of developing a permissionless liquidity rebalancing protocol. We started with our <a href="https://mellow.finance/research.pdf">research</a> on how to effectively manage the liquidity on Uni V3 and then expanded to a cross-protocol permissionless protocol vision.</p><p>As the Protocol is launching soon, we want to share our current progress, upcoming milestones, and of course, the details about our seed round.</p><h3>Recap</h3><p>We were working in a semi-stealth mode, and right now, as we are close to releasing our Protocol, we want to showcase a short recap of what we have achieved so far.</p><h4>Product</h4><ul><li><a href="https://mellowprotocol.medium.com/mellow-protocol-vaults-design-ed09bed7b869">Permissionless vaults platform </a>— our main effort and the core of the product</li><li>First strategy contract</li><li><a href="https://docs.mellow.finance/">Documentation</a> for developers/strategists</li><li>Performed internal tests with L2 live deployments</li></ul><h4>Research</h4><ul><li><a href="https://mellowprotocol.medium.com/mellow-backtesting-sdk-datasets-2ed23acdae0c">Backtesting SDK</a> — we used it internally while developing the strategies and open-sourced it to the public recently</li><li>Strategies — we designed effective strategies that can be deployed on the platform for multiple token pairs</li><li>Data infrastructure — we built a robust infrastructure to enable researchers to get access to on-chain data while working on strategies rapidly</li></ul><h4>UI</h4><ul><li>The user interface is ready for production deployment</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Pk76XJk7MmyrM_MiEUEugA.png" /></figure><h4>Team</h4><ul><li>Hired core team and contractors — our core team expanded to 12 people and we’re looking for new passionate Web3 contributors</li></ul><h4>Audits</h4><ul><li>Completed <a href="https://github.com/mellow-finance/mellow-audits/tree/main/202208_Chainsecurity_vaults_v1">audit with ChainSecurity</a></li><li>Completed <a href="https://github.com/mellow-finance/mellow-audits/tree/main/202208_BlockSec_vaults_v1">audit with BlockSec</a></li><li>Completed <a href="https://code4rena.com/contests/2021-12-mellow-protocol-contest">Cod34r3n4</a> audit competition</li></ul><h4>Content &amp; Community</h4><ul><li>Released articles about <a href="https://mellowprotocol.medium.com/uniswap-v3-liquidity-providing-101-f1db3822f16d">LPing on UniV3</a>, our <a href="https://mellowprotocol.medium.com/mellow-protocol-vaults-design-ed09bed7b869">Vaults system architecture</a>, <a href="https://mellowprotocol.medium.com/uniswap-v3-voodoo-magic-fuckery-f1773aba684">VMF strategy</a>, and our <a href="https://mellowprotocol.medium.com/mellow-backtesting-sdk-datasets-2ed23acdae0c">backtesting SDK</a></li><li>Launched <a href="https://discord.com/invite/w6sJDJrV65">Discord community</a></li></ul><h3>Seed round</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*lvd5y1e8JZyUFPneWcrnKA.png" /></figure><p><strong>In August 2021, Mellow Protocol closed a $2.75 million seed round led by </strong><a href="https://robvc.com/"><strong>Robot Ventures</strong></a><strong>, </strong><a href="https://www.arringtoncapital.com/"><strong>Arrington Capital</strong></a><strong>, and </strong><a href="https://parafi.com/"><strong>ParaFi</strong></a><strong>.</strong></p><p>Also, we’re super excited to see among our backers valuable funds, builders and community members:</p><ul><li><a href="https://www.p2pcap.com/">P2P Capital</a></li><li><a href="https://lemniscap.com/">Lemniscap</a></li><li><a href="https://focuslabs.io/">Focus Labs</a></li><li><a href="http://www.principle.ventures/">Principle Ventures</a></li><li><a href="http://primitive.ventures/">Primitive Ventures</a></li><li>NEMO Ventures (the friendly apes behind <a href="https://degenscore.com/">DegenScore</a>)</li><li><a href="https://twitter.com/Darrenlautf">Darren Lau</a> (<a href="https://t.me/thedailyape">The Daily Ape</a>, <a href="https://twitter.com/Not3Lau_Capital">Not3Lau Capital</a>)</li><li><a href="https://twitter.com/daryllautk">Daryl Lau</a> (<a href="https://twitter.com/Not3Lau_Capital">Not3Lau Capital</a>)</li><li><a href="https://twitter.com/santiagoroel">Santiago R Santos</a> (<a href="https://opensea.io/assets/0xb47e3cd837ddf8e4c57f05d70ab865de6e193bbb/9159">#9159</a>)</li><li><a href="https://twitter.com/_jamiis">Jamis Johnson</a> (<a href="https://pleasr.org/">PleasrDAO</a>)</li><li><a href="https://twitter.com/barinov">Igor Barinov</a> (<a href="https://blockscout.com/">Blockscout</a>/<a href="https://www.xdaichain.com/">xDai chain</a>)</li><li><a href="https://twitter.com/ivangbi_">Ivangbi</a> (<a href="https://gearbox.fi/">Gearbox</a> &amp; <a href="https://t.me/lobsters_chat">LobsterDAO</a>)</li><li><a href="https://yearn.finance/">Yearn</a> сore contributor</li><li><a href="https://twitter.com/nanexcool">Mariano Conti</a> (ex-<a href="https://makerdao.com/">MakerDAO</a>)</li><li><a href="https://twitter.com/bigmagicdao">Molly</a> (<a href="https://www.egirlcapital.com/">eGirl capital</a>)</li><li>Shadowy super coders who want to stay anonymous</li></ul><p>The community already gives us a lot of valuable feedback and wise advice. The goal of the current funding round is to develop and bootstrap the Protocol.</p><h3>Protocol launch</h3><p>Our primary focus is to get live – we’re working on final preparations before the launch.</p><h4>Next steps:</h4><ul><li>UI deployment</li><li>Guarded launch of the Protocol and initial strategies in Mainnet</li><li>Integrations &amp; L2 deployments</li><li>Strategist UI</li><li>V2 design</li></ul><p>As we’re going to be live soon — keep an eye on our media and don’t miss the official launch announcement👀</p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://docs.mellow.finance/">Gitbook</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=17fb47397fed" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Mellow backtesting SDK & datasets]]></title>
            <link>https://mellowprotocol.medium.com/mellow-backtesting-sdk-datasets-2ed23acdae0c?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/2ed23acdae0c</guid>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[sdk]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[uniswap]]></category>
            <category><![CDATA[ethereum]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Thu, 07 Apr 2022 16:15:09 GMT</pubDate>
            <atom:updated>2022-11-08T22:06:23.598Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*V1MmWvQJ7p0iRMq9Z1WUJw.png" /></figure><p>The DeFi landscape is rapidly becoming more complex. In terms of products and structure, it is becoming similar to the TradFi ecosystem, only built on fundamentally different rails: transparency, control of your funds, and privacy.</p><p>However, the DeFi ecosystem is still at the very early stages (like a 4-year-old kid), and some parts are still missing. One of these missing (or almost missing) parts is the analytical tools for DeFi space. Ofc you can say there is Dune and Nansen, which can be used as BI solutions, and Gauntlet for stress tests and simulations. But these tools can’t fill all the needs in DeFi analytics. Modeling and testing strategies are one of those places where analytic tools can be very useful.</p><p>Here at Mellow, we are building a platform that we hope can address this need and enable the creation of economically viable and validated asset management strategies. We already use this tool by ourselves to research market structure and look for highly profitable strategies. But Web3 is about open solutions. So today, we want to present you the Mellow SDK — an open-source (now!) solution for developing asset management strategies in DeFi. This SDK will allow to weigh the risk of strategies and their potential returns and, ultimately, allow for the creation of more structured products. And everyone will benefit from this — strategists, liquidity providers, and the entire market.</p><h3>New Challenges</h3><p>Blockchain systems are at the intersection of technology and finance. While we believe that blockchain technology opens up a new paradigm shift in the way people interact, we are also convinced that it creates a new set of challenges not found in traditional finance:</p><ul><li>Transaction costs (even though gas prices in 2022 fell compared to 2021, it is imperative to consider gas costs and other losses when making transactions)</li><li>In distributed and open networks, the behavior of the system and the experience of using the software is determined not only by the strategist. There are a lot of different effects that should be taken into account while building a strategy: other participants’ actions, hacker attacks, and market manipulations (JIT attacks, flash loan attacks, etc.)</li><li>It is necessary to reproduce invariants and other algorithm parts that are often used in existing DeFi protocols (with the growth of Uniswap seems everyone knows x*y=k)</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/498/1*clrX-FaA44AeFic7EiBfaQ.gif" /></figure><p>We at Mellow want to develop new standards that respond to these challenges and can form the basis for creating new and better strategies in DeFi.</p><h3>Mellow SDK</h3><p>Mellow SDK is an analytical tool that allows you to evaluate the profitability and risks of strategies based on historical data. The main focus of the Mellow SDK is functionality for working with DeFi tools, but it can also work with CeFi crypto services.</p><p>Using the Mellow SDK, you can create your algorithmic strategy for managing a portfolio that includes UniV3 positions, currency pairs, and deposits. The analysis tools implemented in the SDK allow you to calculate the performance metrics of your strategy and visualize them (for example, APY, impermanent loss, collected fees, portfolio value, etc.). Note that the framework is flexible for customization; you can add your own metric to the calculation.</p><p>The Mellow SDK allows you to use actual UniswapV3 pool data from Mellow Open Data storage, generate synthetic data based on Geometric Brownian Motion, or use your Binance API to download data from Binance.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/480/1*CgRe9gFsH8gwyaiKIgXZ0Q.gif" /></figure><h3>Use cases</h3><p>In this section, we will consider three strategies that allow you to evaluate the capabilities of the platform:</p><ul><li>LP-ing to Uniswap V2</li><li>Passive LP-ing to Uniswap V3</li><li>Active LP-ing to Uniswap V3</li></ul><h4><strong>LPing to Uniswap V2</strong></h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*MMLA0wYtyRz7hh2bAyCd8A.png" /></figure><p>The visualization shows portfolio growth and APY you get.</p><h4><strong>LPing to Uniswap V3</strong></h4><p>You can select a price range to deposit funds in Uniswap and look at how it behaves on historical data. The issue here is that you know actual price fluctuations to predict prices. For example, you can get range [15,16] for WBTC/WETH pair and backtest this strategy:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*RT1OzWu1fYQA_OejcazoxQ.png" /></figure><p>The knowledge of future prices opens you great opportunity to grow your wealth. How sad that it works only on backtest🧐</p><h4><strong>Active LPing in Uniswap V3</strong></h4><p>You can say strategies that do nothing are boring and be right. So let’s build an active strategy.</p><p>For example, when the price is 60 minutes outside the interval, the strategy withdraws funds and puts it to a new very narrow interval — (price-0.3, price+ 0.3). That is, the interval will constantly chase the price. It is pretty clear that such a strategy can go bankrupt due to the cost of gas, so we put gas_cost=0 (what a joke! But it’s only a showcase).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*vyfqGeuBySpYahEH1rrFNA.png" /></figure><p>You can see here how the interval changed, but unfortunately, this strategy did not get income even with 0 transaction costs since impermanent loss always stayed higher than earned fees:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*Rj9RRJkC1RRe6Giay6KCog.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/1*wBaOJ7NOBQxhDC-y6VdZfQ.png" /></figure><h3>How to work with SDK</h3><p>This section will briefly describe how to work with the Mellow SDK. An example of a Jupiter notebook can be found on our <a href="https://github.com/mellow-finance/mellow-strategy-sdk">GitHub</a>.</p><p>We also recommend checking our <a href="https://mellow-strategy-sdk.readthedocs.io/en/main/">documentation</a>, where you can find more explanations, tutorials, and how to get started. And ofc ask any questions on <a href="https://discord.gg/w6sJDJrV65">Discord</a>.</p><h4>Setup</h4><p>Create a virtual environment and <a href="https://pypi.org/project/mellow-strategy-sdk/">install the package</a>.</p><pre>python3 -m venv .venv<br>source .venv/bin/activate<br>pip install mellow_strategy_sdk</pre><h4><strong>Choose WBTC/WETH 0.3% pool</strong></h4><p>POOLS — dictionary with pools available in SDK. For example, choose WBTC/WETH pool with middle fees.</p><pre>pool_num = 1<br>pool = Pool(<br>    tokenA=POOLS[pool_num][&#39;token0&#39;],<br>    tokenB=POOLS[pool_num][&#39;token1&#39;],<br>    fee=POOLS[pool_num][&#39;fee&#39;]<br>)</pre><h4><strong>Download data</strong></h4><p>Usually, extracting data correctly from blockchain has a lot of troubles (for example, the Graph has some gaps in the data, which can be critical for strategies backtest). Fortunately, we have already done that job for a large set of pools — you can simply download and use them.</p><p>Let’s load data from Mellow Open Data. The data consists of transactions (mint, burn, swap events) with UniswapV3. The data is updated once a day.</p><pre>data = RawDataUniV3(pool=pool, data_dir=&#39;data&#39;).load_from_folder()</pre><p>Data contains three data frames — data.mints, data.swaps, data.burns. Respectively, historical data on mint (deposit), burn (withdraw), and swap operations performed in the pool.</p><h4>Use standard strategy</h4><p>The <a href="https://github.com/mellow-finance/mellow-strategy-sdk/blob/main/mellow_sdk/strategies.py">strategies.py file</a> contains some ready-made strategies that can be used as tutorials:</p><ul><li>Hold — buy &amp; hold strategy</li><li>UniV3Passive — mint to specified interval&amp;wait</li><li>StrategyByAddress — backtests actions in the pool at the wallet address</li></ul><p>As the V2 interval corresponds to V3 (0, ∞), you can use UniV3Passive for V2 to</p><pre>v2_strat = UniV3Passive(<br>    lower_price=1e-10,<br>    upper_price=1e10,<br>    pool=pool,<br>    gas_cost=0.1,<br>    name=&#39;passive_v2&#39;<br>)</pre><h4>Backtest</h4><p>The backtest sequentially passes historical data at each step feeding it to the input of the strategy, after which it takes a snapshot of the portfolio.</p><p>By the end of the backtest, we could remember the state of the portfolio at each point in time.</p><pre>bt = Backtest(strategy=v2_strat)<br>portfolio_history, rebalance_history, uni_history = bt.backtest(df=data.swaps)</pre><h3>The Grand Plan</h3><p>Our goal is to complete the ecosystem with universal vaults that everyone can use to build any strategies they want and deploy using Mellow infrastructure.</p><p>Initially, we developed the SDK for internal use, and now we make it public so every builder can use it for backtesting his strategies and ensuring that he’s on the right track.</p><p>We want to help the community build better products and strategies, and we’ll be happy to discuss your ideas or answer any questions on our Discord or Twitter.</p><p><strong>Come! Build! Earn!</strong></p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://docs.mellow.finance/">Gitbook</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2ed23acdae0c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Uniswap V3 Voodoo Magic Fuckery]]></title>
            <link>https://mellowprotocol.medium.com/uniswap-v3-voodoo-magic-fuckery-f1773aba684?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/f1773aba684</guid>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[blockchian]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[liquidity]]></category>
            <category><![CDATA[uniswap]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Tue, 22 Mar 2022 19:16:53 GMT</pubDate>
            <atom:updated>2022-11-08T22:05:06.893Z</atom:updated>
            <content:encoded><![CDATA[<p>Heyhey, everyone, we’re back in town! Hope you had a great time with your yields in DeFi while we kept quietly building.</p><p>We worked hard on the smart contracts code and audits, as well as the new math models and strategies. As we’re getting closer to the launch (news on the release plans are also coming soon 👀), we’re making it up with new research materials for the community.</p><p>Today, we want to go down into the deepest deeps of Uniswap V3 and see if we can use some magic to extract some hidden value from it.</p><p><em>50% APY on WETH/USDC pool? Is it possible?</em></p><p>We want to invite you to our theoretical journey that starts 200 days back and spans over several acts. We’ll go back in time and see what we can learn from the past and how we can change the future. Are you ready? Then let’s start our 20-minute adventure from the beginning of the Uniswap V3 era (in and out, real quick).</p><h3>Act 1 — The Riddle (long, long time ago…)</h3><p>In early 2021, Uniswap V3 introduced the concept of concentrated liquidity to AMMs. Instead of providing liquidity on the entire price range of (0, ∞) (as any Uni V2 LP provider did), liquidity providers could now put their tokens into any price range they wanted. And since any price range is shorter than (0, ∞) they could earn more fees from that. Sounds cool, huh? Well, one thing seemed clear — not everyone was happy with it:</p><h3>kain.eth L222 on Twitter: &quot;Uniswap V3 nft positions inadvertently ruined yield farming, prove me wrong. / Twitter&quot;</h3><p>Uniswap V3 nft positions inadvertently ruined yield farming, prove me wrong.</p><p>Uniswap Labs was the first AMM to provide their LPs with powerful tools for liquidity optimization (they’re real innovators and big brains!). But all of a sudden, capital management on Uniswap V3 became challenging. Any liquidity provider would need to choose the best price range for liquidity provision. Impermanent loss, price risks, mempools… All these creepy details started to matter.</p><p>Professional market makers could seemingly deal with it and even extract more value using techniques like <a href="https://dune.xyz/queries/233623/437572">JIT</a>. But what about the ones who only want to ape in and forget about it?</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/640/0*YPcR2QIDOLxTe3cY" /></figure><p>One way of doing it would be to put the liquidity onto the (0, ∞) range and forget about it. Wow, that’s a relief! But won’t that steal some precious APY %? Can we do a little bit better?</p><p>Wait… Wasn’t Sir Hayden talking exactly about this???</p><h3>hayden.eth 🦄 on Twitter: &quot;My favorite v3 vault design sounds a bit like a riddle:I always maintain a 50/50 allocation but still uses concentrated liquidity. I rebalance with no fees or permanent loss.What am I? / Twitter&quot;</h3><p>My favorite v3 vault design sounds a bit like a riddle:I always maintain a 50/50 allocation but still uses concentrated liquidity. I rebalance with no fees or permanent loss.What am I?</p><p>The answer to The Riddle is simple:</p><h3>hayden.eth 🦄 on Twitter: &quot;winner winnerTake on the 50-50 v2 position in v3 but keep tokens in the fringes in lending protocolsAs price moves rebalance by withdrawing/depositing from lending protocol and v3 position (no swap fee)same IL / same market neutral nature, but you also earning lending fees https://t.co/oLvDiQViVT / Twitter&quot;</h3><p>winner winnerTake on the 50-50 v2 position in v3 but keep tokens in the fringes in lending protocolsAs price moves rebalance by withdrawing/depositing from lending protocol and v3 position (no swap fee)same IL / same market neutral nature, but you also earning lending fees https://t.co/oLvDiQViVT</p><p>Here’s how it works in detail:</p><ol><li>Break a UniV2 price curve into equal virtual price ranges</li><li>Put a portion of liquidity into the range which currently covers the current price</li><li>Put all other tokens into the yield protocols like Convex, Ribbon, and Yearn and earn additional yields</li><li>When the price goes from one range to another, pull liquidity from the former and put it into the latter</li></ol><p>Now that we have understood the guts of Hayden’s strategy, let’s see how it works.</p><p>Lights, camera, action!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*QZoSyaXlAzSqGagYcVJ3jg.gif" /></figure><p>Sooooo… With just a handful of capital, we can exactly duplicate the UniV2 position but earn an additional yield on all other capital in your position. It seems like a huge win, but can we do even better?</p><h3>Act 2 — The VooDoo Magic Fuckery (present days)</h3><p>Ok, so we could beat UniV2 in the previous act. But can we beat UniV3 itself with UniV3? The answer is YES!</p><p>Unsurprisingly, for any UniV3 price range, we can:</p><ol><li>Break a UniV3 price range into equal virtual price ranges</li><li>Put a portion of liquidity into the range which currently covers the current price</li><li>Put all other tokens into the yield protocols like Compound, Aave, and Yearn and earn additional yields</li><li>When the price goes from one range to another, pull liquidity from the former and put it into the latter</li></ol><p>And here we go again with the almighty VMF strategy:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2-OUbV8AYr0WtQbVDqJK2g.gif" /></figure><p>Here’s the actual magic spell with the correct ingredients:</p><p>Assume we provide liquidity on Uni V3 at interval [a0, b0] using 1 unit of wealth. Then concentrated UniV3 strategy will be</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*xp6n_gbJjMM7QZMb" /></figure><p>where u_1 — is part of liquidity provided to UniV3, u_2, u_3 — is part of liquidity provided to yield generated one-token strategies, [a,b] — subset of [a0,b0] such as a0&lt;a&lt;c0&lt;b&lt;b0, c0 — current price.</p><p><strong>UniV3 beats UniV3, sounds pretty cool, right?</strong></p><p>But before we conclude this act with a standing ovation, we need to address one more small detail here. If you read carefully, there’s one thing that might be lurking in your mind and make you feel uncomfortable — step 4 of the strategy.</p><p>“When the price goes from one range to another, pull liquidity from the former and put into the latter.” Well, we cannot trigger that on UniV3 price change on-chain, right? This has to be done with an external caller, keeper perhaps, that could miss the rebalance event, and the price can move far away from the price range with liquidity. And in that case, the strategy doesn’t work exactly like UniV3. Assume we had a <a href="https://www.coindesk.com/markets/2021/05/19/market-wrap-capitulation-city-as-bitcoin-dumps-to-31k-eth-to-2k-before-reversal/">40% price crash on May 21</a> when ETH fell from x to y. We can imagine a Twitter thread coming:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/952/0*VXmhcjSeNPcHHggK" /></figure><p>To sum up, we have a VMF strategy that:</p><ol><li>Earns the same fees as UniV3 position</li><li>Has additional yield by adding free liquidity into yield protocols like Compound, Aave, Yearn, etc.</li><li>IL protected when prices go mad</li></ol><h3>Act 3 — The Money (not too far distant future)</h3><p>Ok, nuff said on math and formulas! Let’s address the elephant in the room, a small question that rules this world, a small question that drives all success — <em>what’s in it for me</em>?</p><p>It turns out that the APY for this strategy could reach a staggering 58% on USDC-WETH pair and 18% on WBTC-WETH pair:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/0*lpaXDW_j4p2H4PC_" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/900/0*rxrSKGHJ6WmXaBNg" /></figure><p>Here APY for two-token strategy is calculated by <a href="https://twitter.com/0xAlexEuler/status/1503444182257393666">0xAlexEuler’s approach</a>, which looks more valid for crypto investors (measuring APY in one of two tokens gets higher APY but easy for manipulations — read more in <a href="https://twitter.com/0xAlexEuler/status/1503444182257393666">Twitter thread</a>).</p><p>Now imagine what we can do next with that? A VMF strategy that beats plain UniV3 LPing. Build a vault that implements this strategy automatically, so it’s just set-and-forget for liquidity providers? Sure thing. But there’s more to it…</p><p>In fact, <strong>any</strong> active management strategy on top of UniV3 can be built on top of the VMF strategy and have… higher yield and… lower IL!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/481/0*Z2yDCbI0H8kGQwSS" /></figure><p>We want to leave this play open-ended. I know, I know, everyone hates open endings. But! They’re leaving more space for imagination, so rare these days!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f1773aba684" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Mellow protocol Vaults design]]></title>
            <link>https://mellowprotocol.medium.com/mellow-protocol-vaults-design-ed09bed7b869?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/ed09bed7b869</guid>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[crypto]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[ethereum]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Fri, 12 Nov 2021 07:10:44 GMT</pubDate>
            <atom:updated>2021-12-20T12:38:09.332Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ueV1Ju7OiY6b48i2Uh75pg.png" /></figure><p>Lately, we discussed the basics of liquidity providing mechanics on Uniswap V3 in our <a href="https://mellowprotocol.medium.com/uniswap-v3-liquidity-providing-101-f1db3822f16d">medium post</a>. It was part of broader research on optimal liquidity provision on Uniswap V3 and other DeFi protocols we’ve been doing for the last months. The research brought us new insights into active liquidity routing strategies and system design, which will be covered in the next articles. Today, we’re going to show how we can actually implement the system for active liquidity balancing between protocols on the blockchain.</p><p>Key results of our research led us to the design of Mellow Permissionless Vaults — a system that allows <strong>flexible liquidity provision and liquidity management</strong>. In this article, we’d like to provide key highlights and encourage the community to have a design discussion on our <a href="https://twitter.com/Mellowprotocol">Twitter</a> and <a href="https://discord.com/invite/w6sJDJrV65">Discord</a>.</p><p>If you want to dive into details and contract API check out our <a href="https://docs.mellow.finance/">docs</a>.</p><p>Let’s get started!</p><h3>Featured highlights</h3><p>There’re a lot of different aspects that should be considered when designing a vault system. We decided that we want to have the following features in Mellow Vaults:</p><ol><li><strong>Permissionless</strong> — anyone can create a new vault and deploy strategies to manage it;</li><li><strong>Strategist friendly</strong> — strategists should be incentivized to create new strategies by earning fees;</li><li><strong>Multitoken</strong> — strategies can manage multiple ERC-20 tokens at once;</li><li><strong>Cross-protocol</strong> — liquidity can be routed to different DeFi protocols on Etheruem mainnet and on L2/sidechains;</li><li><strong>Liquidity-mining enabled</strong> — liquidity in the Vault could be used to participate in liquidity mining programs thus earning additional yield for Mellow liquidity providers;</li><li><strong>Strategy trustless</strong> — strategy should only be able to perform minimal actions that only allow to rebalance liquidity between protocols and tokens, not diverge it somewhere else. Thus it’s possible to deploy the Strategy both as a smart contract and as an off-chain management system;</li><li><strong>Oracle adverse </strong>— reduce the number of oracles to a minimum since many DeFi hacks used oracle manipulation.</li></ol><h3>How it works</h3><p>A typical vault and strategy setup would be made by using Mellow Permissioless Vaults <em>deployVault</em> function. As a result, the following set of smart contracts (called Vault System) would be established <strong>for every strategy and token pair</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*GeSO8eJ8WZUEjgko8V3LkQ.gif" /><figcaption>Fig. 2 Deposit / Rebalance / Withdraw flow</figcaption></figure><p>For each DeFi protocol, a separate Vault contract is deployed. This allows depositing/withdrawing funds and tracking earnings for that protocol. These vaults are aggregated using Gateway Vault.</p><p>On top of that, there’s an LP Issuer contract that issues LP ERC-20 tokens to liquidity providers or NFT Issuer that issues ERC-721 tokens (Vault System configuration defines the type of contract/token).</p><p>The flow of the tokens between the contracts:</p><ol><li>Liquidity provider deposits ERC-20 tokens into LP Issuer;</li><li>LP Issuer mints LP tokens to the liquidity provider;</li><li>ERC-20 tokens get transferred into the Gateway Vault, then it redistributes them into Integration layer vaults on a pro-rata basis;</li><li>Integration layer vaults put liquidity into DeFi protocols.</li></ol><p>Strategy contract is a separate entity that is only allowed to redistribute liquidity between vaults and collect liquidity mining rewards (if any) from the underlying DeFi protocols. Technically, the Strategy is not required to be a contract but can also be an off-chain management system.</p><h3>Vault system architecture</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*gB3kYbNa1uqNTrTzNwKQmw.png" /><figcaption>Mellow Permissionless Vaults smart contracts architecture</figcaption></figure><p>There are two types of contracts on the diagram:</p><ol><li><strong>Protocol contracts</strong> (pink color) — these are the protocol contracts that are deployed in one instance;</li><li><strong>Vault contracts</strong> (purple color) — these are the contracts deployed by users (vault owners/strategists) by using <strong>protocol contracts.</strong> Essentially everyone can create a set of Vault contracts.</li></ol><p>We can logically separate contracts into Vault Groups. Each Vault Group is a set of contracts that allows managing and creating a vault of a specific Vault Kind. Vault Governance is a contract that can:</p><ol><li>Deploy a new vault via a VaultGovernance#deployVault method</li><li>Manage governance params for specific vaults</li></ol><p>Upon Vault creation, the Vault Registry contract mints a new ERC-721 token that represents that Vault.</p><h3>Strategists unite!</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*vkeyEzjpdJDmX3pAc-9zuA.jpeg" /></figure><p>Mellow Protocol Vaults are <strong>permissionless by design</strong>. We believe in the power of builders and community and we welcome everyone to build liquidity management strategies with Mellow.</p><p>New Vault System can be easily created and deployed.</p><p>There are 3 core functions applicable to liquidity in the Vault contracts:</p><ul><li>Vault#push — pushes the ERC-20 tokens from the Vault balance to the underlying DeFi protocol;</li><li>Vault#pull — pulls the ERC-20 tokens from the Underlying DeFi protocol to some other Vault of the Vault System;</li><li>Vault#claimRewards — claim liquidity mining rewards for the Vault (if any are assumed by the underlying DeFi protocol). Note that contracts with the liquidity mining rewards should be whitelisted in the Protocol Governance.</li></ul><p>For more details on managing Vaults and managing the liquidity check <a href="https://docs.mellow.finance/mellow-permissionless-vaults/strategist-guide">Strategist guide</a> section in our docs.</p><blockquote>After we finish the beta phase, we’re considering special incentives for Strategists who will actively build effective liquidity management strategies.</blockquote><h3>Next steps</h3><p>We’re preparing for the launch and here’s our plan for the following months:</p><p><strong>Nov’ 21:</strong> Finalize the design of the vaults, finish the development, release the first version of the protocol for internal testing on mainnet;</p><p><strong>Dec’ 21:</strong> Code423n4 contest and first audit, guarded launch with cap limits;</p><p><strong>Feb’22:</strong> Final audit, uncapped vaults launch, L2 experiments.</p><p>Join our <a href="https://twitter.com/Mellowprotocol">Twitter</a> and <a href="https://discord.gg/w6sJDJrV65">Discord</a> to discuss Vaults design with the team and stay in the loop.</p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://docs.mellow.finance/">Gitbook</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ed09bed7b869" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Uniswap V3: Liquidity providing 101]]></title>
            <link>https://mellowprotocol.medium.com/uniswap-v3-liquidity-providing-101-f1db3822f16d?source=rss-d4dd1e3c9a8c------2</link>
            <guid isPermaLink="false">https://medium.com/p/f1db3822f16d</guid>
            <category><![CDATA[liquidity]]></category>
            <category><![CDATA[mathematics]]></category>
            <category><![CDATA[etehreum]]></category>
            <category><![CDATA[defi]]></category>
            <category><![CDATA[decentralized-finance]]></category>
            <dc:creator><![CDATA[Mellow Protocol]]></dc:creator>
            <pubDate>Wed, 11 Aug 2021 13:44:58 GMT</pubDate>
            <atom:updated>2021-11-02T07:17:51.993Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jzTbik8pIkN1ZUn-T7IXmA.png" /></figure><p>Hello there, no time for the pleasantries, let’s talk Uniswap V3 math!</p><p>We’re going to deep dive into how liquidity provision works in Uniswap v3 and how you can align the portfolio of 2 tokens so that your LP position yields the maximum fees while reducing IL to the minimum. Expect a lot of formulas and numbers.</p><h3>Uniswap v2 recap: a trader’s perspective</h3><p>Uniswap v2 is an automated market maker that allows:</p><ul><li>Traders to swap one asset for another;</li><li>Liquidity providers (LPs) to provide liquidity and earn trading fees.</li></ul><p>Each pool has 2 tokens: <em>X</em> and <em>Y. </em>If the pool holds <em>xₚ</em> tokens of <em>X </em>and <em>yₚ</em> tokens of <em>Y</em> (also called pool reserves), then pool liquidity <em>L </em>is defined by:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/141/0*LvkBNeujEqE2wmcD.png" /></figure><p>The current ratio of tokens in the pool defines the current swap price <em>p:</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/84/0*zaHX0sGhX2aszUFO.png" /></figure><p>If a trader wants to swap <em>y</em> tokens of <em>Y, </em>they deposit <em>y</em> tokens into the pool and receive <em>x</em> tokens of <em>X</em> back. <em>x</em> is defined by the pool using the following equation:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/366/0*F8pvHYXhxipe-xrT.png" /></figure><p>Here <em>ϕ</em> is a pool fee. For Uni v2, it’s 0.3%.</p><p>Now assume for a moment that <em>ϕ = 0, </em>and<em> </em>let’s see what happens if the current price <em>p = 1, </em>pool reserves<em> xₚ = 1</em>, <em>yₚ = 1, </em>and a trader wants to swap <em>y = 1 </em>units of <em>Y </em>token.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PpmL8le75-AaytI7tZ4wjA.png" /><figcaption>Figure 1: Uniswap v2 trader’s perspective</figcaption></figure><p>The trader will receive back <em>x = 0.5 </em>tokens of <em>X. </em>The pool reserves and price will update to <em>xₚ = 0.5</em>, <em>yₚ = 2, p = 4.</em></p><p>We would expect <em>x = 1 </em>at current price <em>p = 1</em> but the actual <em>x</em> amount is subject to loss known as slippage (<em>sₗ = 0.5</em>):</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/218/0*TFObYAwIK3ky9VGb.png" /></figure><p>The good news is <em>sₗ → 0</em> as pool liquidity <em>L</em> grows or swap amount decreases, i.e., for small enough swap amounts you exchange at price <em>p </em>fewer fees.</p><h3>Uniswap v2 recap: a liquidity provider’s perspective</h3><p>Now let’s see what happens if <em>p = 4, </em>pool reserves<em> xₚ = 0.5</em>, <em>yₚ = 2, L = 1 </em>and a liquidity provider wants to put <em>x = 0.25</em> tokens of <em>X</em> and <em>y = 1</em> tokens of <em>Y.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*X722hQTe_JYXqbghdcCYfw.png" /><figcaption>Figure 2: Uniswap v2 liquidity provider’s perspective</figcaption></figure><p>In this case, the new reserves for the pool will be <em>xₚ = 0.75</em>, <em>yₚ = 3 </em>and <em>L²</em> = <em>xₚ · yₚ = 2.25, </em>so <em>L = 1.5 </em>and liquidity provider receives <em>ΔL = 0.5</em> liquidity in the form of Uni V2 lp tokens. Now on each trade, a liquidity provider will receive <em>ΔL / L = 1 / 3 </em>share of fees.</p><p>In this example we purposefully used <em>x = 0.25</em> and <em>y = 1 </em>as liquidity provider’s investment so that <em>y / x = 4 = p</em>.</p><p>What happens if y / x ≠ p? In this case, some of the tokens <em>Δx or Δy </em>are<em> </em>returned to the liquidity provider so that the leftover ratio (<em>y-Δy)/ x = p </em>or <em>y / (x-Δx) = p. </em>If the liquidity provider wants to utilize their tokens to the full and receive max liquidity, they first must trade their tokens so that <em>y / x = p</em> and then put them into the pool.</p><p>For Uni v2, it’s quite straightforward to align your token portfolio to get the maximum liquidity. What about Uni v3? It turns out things are getting way more complex there.</p><h3>Uniswap v3: single position</h3><p>In May 2021 Uniswap team launched v3. On Uni v3, you can put liquidity on any price interval <em>[pᵃ, pᵇ]</em>. As long as the price is in the range <em>[pᵃ, pᵇ],</em> you have liquidity <em>L </em>and earn fees.<em> </em>When the price is out of range, you don’t earn any fees until the price is back in the range.</p><p>Let’s see how it works in action. First, let’s consider the pool with only one open position with the price interval <em>[pᵃ, pᵇ] = [0.25, 4]. </em>Current pool reserves are <em>xₚ = yₚ = 0.5</em>, the price is <em>p = 1.</em> In this case, as swaps are happening and the price is moving, we observe the following pool behavior:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*bez1ZBbTGEM8Q7_T7Jv55Q.gif" /><figcaption>Figure 3: Uniswap v3 single position</figcaption></figure><p>Here the green curve is the actual token reserves that are used for swaps (real liquidity curve), and the red curve is a virtual liquidity curve emulating as if a user is swapping on Uni v2.</p><p>As long as the price is in the range <em>[0.25, 4]</em>, the pool behavior is exactly the same as if the pool was UniV2 with a red liquidity curve. When the price is out of bounds, virtual liquidity drops to zero, real liquidity concentrates either in <em>X</em> or in <em>Y</em> token and is not used for swaps.</p><h3>Uniswap v3: multiple positions</h3><p>Let’s see now what happens if there are 2 liquidity investments <em>x₁</em>, <em>y₁</em> on <em>[pᵃ₁, pᵇ₁]</em> and <em>x₂</em>, <em>y₂</em> on <em>[pᵃ₂, pᵇ₂]</em>. Each of these investments implies (we’ll see how in the following chapters) virtual liquidities <em>L₁</em> and <em>L₂</em>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*SLB4DA9AEuxJeZwNA8nGQg.gif" /><figcaption>Figure 4: Uniswap v3 two positions</figcaption></figure><p>As can be seen, when both intervals cover the price, both real reserves are used, and pool virtual liquidity equals the sum of liquidities. When only one interval covers the price — only its liquidity is used. When the price is out of both intervals, the pool liquidity is zero (or you don’t earn any fees).</p><p>This gives Uni v3 a unique feature — a piecewise liquidity function. As the price moves along the virtual curve, the liquidity value changes by some <em>ΔL </em>at certain price points (that are bounds of liquidity positions). You can see such jumps happening at prices <em>pᵃ₁ </em>and<em> pᵇ₁ </em>in Figure 3.</p><h3>Ticks and tick spacing</h3><p>The actual life of Uniswap v3 is a bit harder than shown in the figures above. In real Uni v3, you cannot put your liquidity on an arbitrary price interval. Instead, there are so-called ticks that form a discrete grid over the price range. Ticks are defined by the formula (<em>i </em>is an integer):</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/146/0*SJiBZrlpNf6255jd.png" /></figure><p>For each pool, there’s also a notion of tick spacing. Tick spacing is yet another grid on top of ticks that limits the ticks in which you can put liquidity. E.g., for 0.3%-fee pool tick spacing is 60 so that you can put liquidity only in each 60ᵗʰ tick, e.g., 0, -60, 60, 120, -120, … The figure below shows tick spacing ticks (orange) and ticks (black)</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1005/1*xB40KRAbKVanixobCBs-QQ.png" /><figcaption>Figure 5: Ticks and tick spacing</figcaption></figure><p>Because your liquidity price interval bounds can only be the tick spacing ticks, the liquidity inside any space tick interval is constant and can only change when the price crosses the tick spacing tick.</p><p>So we have a piecewise liquidity function with possible jumps happening at tick spacing ticks (similar to Figure 2).</p><h3>Liquidity value for a position</h3><p>Let’s see how liquidity <em>L</em> is calculated, given initial tokens <em>x</em> and <em>y, </em>price interval <em>[pᵃ, pᵇ],</em> and current price <em>p</em>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/195/0*PV0k3au8pC0kq6jm.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/227/0*eKkeYgq7BGritlDt.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/193/0*boBF64p1VHZCX3l6.png" /></figure><p>As you can see from these equations, if the <em>x</em> and <em>y</em> tokens are not in the right proportion <em>(Lx≠Ly),</em> some tokens are returned to the liquidity provider. This is similar to the behavior we observed in Uni v2.</p><p>But for Uni v3, it’s more complex since we have the piecewise liquidity function with jumps at tick spacing ticks. In the following chapter, we’ll show how to put tokens in the most effective way on Uni v3.</p><h3>Effective liquidity providing</h3><p><em>If we have a portfolio of x tokens of X and y tokens of Y and we want to provide liquidity to price range [pᵃ, pᵇ] how many tokens X or Y should we swap to get the maximum liquidity out of it?</em></p><p>To answer this question, let’s denote <em>R</em> = <em>y / x — </em>the ratio of tokens in our portfolio and <em>rᵃᵇ(p) — </em>the optimal token ratio such that Lx = Ly. From the formulas for Lx and Ly we can derive:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/234/0*1P1uey8swEUU2vJ5.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/299/0*QaDEmGJIcca1skge.png" /></figure><p>So our goal is to make <em>R</em> = <em>rᵃᵇ.</em></p><p>However, the task is a bit more complex than just aligning x and y to the specified ratio <em>rᵃᵇ. </em>As we start swapping <em>x</em> for <em>y</em> or vice versa, the pool price <em>p</em> starts changing and so does <em>rᵃᵇ. </em>This behavior is shown in the figure below:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/960/1*JWN4rCfh7R4IOlDoDtrihQ.gif" /><figcaption>Figure 6: Aligning R to rᵃᵇ</figcaption></figure><p>Yet another layer of complexity is as the price <em>p</em> is changing and crossing a tick spacing tick pool liquidity L is changing as well! To solve this problem, let’s first understand how the ratio <em>R</em> evolves as we swap token <em>Y</em> for token <em>X </em>given the liquidity L is constant.</p><p>From the equations <em>L²=xy</em> and <em>p = y / x </em>it’s easy to derive:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/123/0*etJVEKaPSrmeDanX.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/107/0*s_3Xq6PYuKrMS4DY.png" /></figure><p>So if we make a swap of Y for X, subtract fees from Y and the price after swap settles at p₁ (p₁ &gt; p₀):</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/394/0*jq5R-ABLIWIGIegj.png" /></figure><p>If the direction is X for Y then p₁ &lt; p₀ and we have:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/442/0*oHRRQ8uU-nNV6Cep.png" /></figure><p>The next question is:</p><p><em>At what ratio R does the pool price cross the tick and liquidity changes?</em></p><p>If we denote R+ as the ratio at which the upper tick is crossed and <em>R- </em>the ratio for the lower tick, <em>p₀</em> is the initial price and <em>p-</em>, <em>p+</em> are respective prices at ticks, <em>L</em> — current liquidity at the tick spacing interval, then we have:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/657/0*ACRrNN2q8HaZq14d.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/599/0*NDoTM5ZFXX1TchUJ.png" /></figure><p>Finally, we are ready to solve the problem.</p><p>First, we need to answer 2 questions:</p><ol><li>Is <em>R</em> &gt; <em>rᵃᵇ(p₀)</em>? If yes, we need to swap <em>Y</em> for <em>X</em>, otherwise — <em>X</em> for <em>Y.</em></li><li>As we swap — will the pool price ever cross a tick spacing tick? If no — we can solve the problem right away. If yes — we need to adjust our values as if we swapped all the way to the tick and then repeat our algorithm on the new tick with the new liquidity.</li></ol><p>The answers to these questions bring us to 4 different cases:</p><ol><li>Swapping Y for X inside one tick interval: <em>R &gt; rᵃᵇ(p₀), R+ ≤ rᵃᵇ(p+)</em></li><li>Swapping X for Y inside one tick interval: <em>R &lt; rᵃᵇ(p₀), R- ≥ rᵃᵇ(p-)</em></li><li>Swapping Y for X in different tick intervals: <em>R &gt; rᵃᵇ(p₀), R+ &gt; rᵃᵇ(p+)</em></li><li>Swapping X for Y in different tick intervals: <em>R &lt; rᵃᵇ(p₀), R- &lt; rᵃᵇ(p-)</em></li></ol><p><strong>Case 1: Swapping Y for X inside one tick interval: <em>R &gt; rᵃᵇ(p₀), R+ ≤ rᵃᵇ(p+)</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JEXqZzD0tNMwXkurYisXow.png" /><figcaption>Figure 7: Swapping Y for X inside one tick interval. As we swap from Y to X the price is growing to p₃, R is decreasing to R+, while <em>rᵃᵇ</em> is increasing to <em>rᵃᵇ+. Since initially R &gt; rᵃᵇ and </em>R+ ≤ rᵃᵇ+ it is guaranteed that R = r is inside the tick interval.</figcaption></figure><p>If we swap <em>y</em> for <em>x </em>and the price after the swap settles at p₁ all we need is to make sure <em>Ryx(p₁) = rᵃᵇ(p₁)</em>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/712/0*f_7GSGPpXf-7EruG.png" /></figure><p>If we assume z = √p₁ and rearrange the terms of the equation we’ll get a quadratic equation:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/195/0*CRA5byRZLzY1q6kA.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/328/0*NLvtHlkI87Rrj21p.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/647/0*XZh-XgP5Y1fzFYrt.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/319/0*qVbIO5TmzXgpCV9Q.png" /></figure><p>Thus we can solve it and find p₁:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/277/0*9FKj3bAAwytsK-xM.png" /></figure><p>And the amount of token <em>Y</em> to swap is:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/295/0*DsnKKhWt5HUgbG9v.png" /></figure><p><strong>Case 2: Swapping X for Y inside one tick interval: <em>R &lt; rᵃᵇ(p₀), R- ≥ rᵃᵇ(p-)</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*3QjXQjLF0jqNW8Dh_aBXgA.png" /><figcaption>Figure 8: Swapping X for Y inside one tick interval. As we swap from X to Y the price is decreasing to p₂, R is growing to R-, while <em>rᵃᵇ</em> is decreasing to <em>rᵃᵇ-. Since initially R &lt; rᵃᵇ and </em>R- ≥ rᵃᵇ- it is guaranteed that R = r is inside the tick interval.</figcaption></figure><p>This case is very similar to case 1, except we swap <em>X</em> for <em>Y </em>and thus we need to make sure <em>Rxy(p₁) = rᵃᵇ(p₁):</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/742/0*ZI1s5X9lIhn_Awbl.png" /></figure><p>Similarly to case 1, we can find:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/277/0*9FKj3bAAwytsK-xM.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/328/0*IMXENq0g8xfBj0t4.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/661/0*k4a08zQs5t_BixoL.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/341/0*SmuZHQWLPnpCP2j-.png" /></figure><p>And the amount of token <em>X</em> to swap is:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/311/0*U5dQDLG-R11-8iRI.png" /></figure><p><strong>Case 3: Swapping Y for X in different tick intervals: <em>R &gt; rᵃᵇ(p₀), R+ &gt; rᵃᵇ(p+)</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*C1yhDA7icgq45GsSq8oanA.png" /><figcaption>Figure 9: Swapping Y for X in different tick intervals. As we swap from Y to X the price is growing to p₂ and then to p₃, R is decreasing to R+, while <em>rᵃᵇ</em> is increasing to <em>rᵃᵇ+. Since initially R &gt; rᵃᵇ and </em>R+ &gt; rᵃᵇ+ it is guaranteed that the price will cross tick spacing tick while we swap to R = <em>rᵃᵇ</em></figcaption></figure><p>In this case, we swap <em>Y</em> for <em>X</em> until R = R+ and so p = p+ and we’re in the new tick interval with the new liquidity. We remember how many tokens of <em>Y</em> we swapped to add them to the final numbers later. Then we start the algorithm all over and repeat until we hit case 1. That is we redefine:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/381/0*aB3DLyQKHprdafqh.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/102/0*EGmBA2GLg3lW3M0k.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/336/0*f-CzybNMk-FgdVaB.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/300/0*aFPCH0CjSavj05Ae.png" /></figure><p><strong>Case 4: Swapping X for Y in different tick intervals: <em>R &lt; rᵃᵇ(p₀), R- &lt; rᵃᵇ(p-)</em></strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*WZaJ-3sdaR5ZWjxUYB9qpA.png" /><figcaption>Figure 10: Swapping X for Y in different tick intervals. As we swap from X to Y the price is decreasing to p₃ and then to p₂, R is increasing to R-, while <em>rᵃᵇ</em> is decreasing to <em>rᵃᵇ-. Since initially R &lt; rᵃᵇ and </em>R- &lt; rᵃᵇ- it is guaranteed that the price will cross tick spacing tick while we swap to R = <em>rᵃᵇ</em></figcaption></figure><p>Exactly similar to case 3 except we swap X for Y until R = R- and repeat until we hit case 2. We redefine:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/397/0*CUhGchIevS8p0rNB.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/101/0*GUxM0IXKPADcBFz2.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/352/0*EopknOGZlFKP-Was.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/284/0*P1Pwvy1frLIwUVs8.png" /></figure><h3>Conclusion</h3><p>Supplying liquidity in the right proportion in Uni v3 is a very complex task. You need to consider a lot of factors like different liquidity values inside tick intervals. The algorithm above describes how you can use the pool data to calculate the number of tokens you need to swap to get the highest liquidity.</p><p>The charts for figures are available here:</p><p><a href="https://www.desmos.com/calculator/rqbrnapxbj">https://www.desmos.com/calculator/rqbrnapxbj</a></p><p><a href="https://www.desmos.com/calculator/ys7kcfgjxe">https://www.desmos.com/calculator/ys7kcfgjxe</a></p><p><a href="https://www.desmos.com/calculator/ehdwkbtu7z">https://www.desmos.com/calculator/ehdwkbtu7z</a></p><p><a href="https://www.desmos.com/calculator/huzzwffze9">https://www.desmos.com/calculator/huzzwffze9</a></p><p><a href="https://www.desmos.com/calculator/t9u9x8xgcy">https://www.desmos.com/calculator/t9u9x8xgcy</a></p><p>In future articles, we plan to discuss other interesting aspects of Uni v3 like impermanent loss, multiposition portfolios, strategy risks, etc.</p><h3>Who we are</h3><p>Mellow Protocol is exploring the space of LP-ing and market-making on AMMs. You can also check our initial research paper <a href="https://mellow.finance/research.pdf">here</a>. The goal of Mellow is to build a robust ecosystem of tools for eliminating market inefficiencies and generating outcome for users.</p><p>We don’t see this just as a product, but as an evolution of what complex math can bring to the DeFi space. Similar to how Uniswap and Curve innovated user trading experience, we believe LP optimization is also pushing forward the boundaries of what was possible in tradfi.</p><p>In the next articles, we’re going to discuss more ideas on how to implement proper rebalancing strategies and will move forward to broader topics in DeFi.</p><p>Stay tuned!</p><p><a href="https://twitter.com/Mellowprotocol">Follow Mellow on Twitter</a> to be in the loop with our research, and join the discussion in <a href="https://discord.gg/w6sJDJrV65">Discord</a>.</p><p><a href="https://twitter.com/Mellowprotocol">Twitter</a> | <a href="https://discord.gg/w6sJDJrV65">Discord</a> | <a href="https://mellow.finance/">Website</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f1db3822f16d" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>