<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Noah</title>
        <link>https://paragraph.com/@noahlitvin</link>
        <description>undefined</description>
        <lastBuildDate>Mon, 20 Jul 2026 15:28:48 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Noah</title>
            <url>https://storage.googleapis.com/papyrus_images/22962c0af51c34ed70e105e0182d9225a7dc2a1228a951382fbcc943056e6faf.jpg</url>
            <link>https://paragraph.com/@noahlitvin</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Unsolicited Advice for DeFi]]></title>
            <link>https://paragraph.com/@noahlitvin/unsolicited-advice-for-defi</link>
            <guid>AkRsN2iRlbiI8uDffLSz</guid>
            <pubDate>Fri, 04 Apr 2025 15:36:33 GMT</pubDate>
            <description><![CDATA[People used to care about decentralization—or pretended to, at least. When I first started working on decentralized finance, onchain perpetual futures markets were the cutting-edge. Layer two scaling solutions were being rolled out for Ethereum so transactions could include enough compute power to process trades at a reasonable cost. Dynamic funding rate mechanisms were engineered so liquidity providers could earn trading fees without price exposure. Decentralized oracle networks were being d...]]></description>
            <content:encoded><![CDATA[<p>People used to care about decentralization—or <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/CryptoHayes/status/1904923078431293855">pretended to</a>, at least. When I first started working on decentralized finance, onchain perpetual futures markets were the cutting-edge. Layer two scaling solutions were being rolled out for Ethereum so transactions could include enough compute power to process trades at a reasonable cost. Dynamic funding rate mechanisms were engineered so liquidity providers could earn trading fees without price exposure. Decentralized oracle networks were being developed to provide prices associated with specific timestamps to prevent front-running.</p><p>The goal here was to create onchain derivatives—freely tradable tokens that track the value of any price feed. The derivatives markets that generated the most trading volume on these protocols were the most volatile crypto assets. Users willing to use cutting-edge financial products had a high risk tolerance and were seeking a way to trade long-tail assets with leverage. In other words, the early product-market fit was degenerate shitcoin casinos. If the tech could handle this, building derivatives for “real world assets” like foreign currencies, commodities, and equities (with exponentially higher liquidity and less volatility) would be a walk in the park.</p><p>At the time, the vast majority of crypto trading was happening on centralized exchanges like FTX, Binance, and Coinbase. This was a major embarrassment. The entire innovation of this technology is to be able to hold and trade digital assets without middlemen. But instead most people still send their money to private businesses and pay them fees to trade within their closed systems.</p><p>Fast forward to 2025. We’ve made virtually no progress. Here are some recommendations I have for anyone involved.</p><h2 id="h-remember-that-stablecoins-are-derivatives" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Remember that stablecoins are derivatives</h2><p>Because of the leveraged shitcoin trading, I think many shy away from perps (read: derivatives) as a use case in general. But stablecoins are just derivatives of US dollars! I think the consensus is that the global adoption of stablecoins is the biggest success story of crypto so far. It used to be that only the very wealthy could opt out of their local currency, but now anyone can.</p><p>Unfortunately, the most widely used stablecoins are unapologetically centralized. Like banks, they use deposits to earn yield (which they keep), are trusted to handle issuance/redemption, and can freeze funds arbitrarily. Everyone seems to have lost interest in making scalable decentralized stablecoins. Ethena became the name brand for a promising approach that could be built on decentralized perps exchanges, but implemented it with centralized perps exchanges. Meanwhile, the standards for <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.bloomberg.com/news/newsletters/2025-04-01/crypto-market-s-latest-drama-shows-decentralization-is-harder-than-it-sounds">what constitutes decentralized perps</a> have rapidly regressed in the name of “user experience”.</p><h2 id="h-keep-building-decentralized-perps" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Keep building decentralized perps</h2><p>Reject that <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/gakonst/status/1885055823086575841">big suites of upgradeable contracts are an anti-pattern</a>. [1] How many lines of code is Binance’s trade execution engine? I assume they’re regularly shipping improvements. Practically, it’s reasonable for protocol engineers to retain upgradeability for now, especially as dependencies like sequencers and oracles are under active development. This is just a much more difficult engineering challenge than something like Uniswap; you can’t build it in a “lab setting” effectively. The north star is renouncing upgradeability on the whole stack for these systems—we’re just not there yet.</p><p>In addition to decentralized stablecoins built on perps, I would love to see more flavors of tokenized perps positions. [2] No one wants to learn about margin accounts. Everyone already understands how tokens work. (Tokens also make accounting straightforward.) Make every wallet application a perps interface.</p><h2 id="h-build-more-oracles" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Build more oracles</h2><p>You might dislike that oracles introduce new trust assumptions, but otherwise you’re just trusting multisigs. Designing decentralized oracle networks is an interesting problem space and it’d be great to see more startups working on this instead of Ethereum knock-offs. The world computer could use more fun and weird peripherals.</p><p>UMA works but <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.web3isgoinggreat.com/?id=polymarket-governance-attack">isn’t perfect</a>. Most of DeFi still relies on prices pushed by oracle networks, which are useless for trade execution and have no mechanism for price consumers to compensate providers. (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://erc7412.github.io/">This is fixable.</a>) Liquidity providers for decentralized perps continue to get wrecked for having stale data on asset risk. There have been some attempts at specialized risk oracles, but it should just be standard to have liquidity-related metrics available with prices to use in functions for parameters like maximum open interest.</p><h2 id="h-make-peace-with-suboptimal-capital-allocation" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Make peace with suboptimal capital allocation</h2><p>I’ve never met venture capitalists more cynical—or just willing to say the quiet part out loud—than those in crypto. (I prefer it to the stereotypical smarmy tech VC, for what it’s worth.) Figuring out how to capture value while investing in systems that are made to remove middlemen is a challenging job! It should be unsurprising that so much capital finds its way into strange projects.</p><p>Meanwhile, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c">retroactive public goods funding</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://gov.optimism.io/t/experimenting-with-futarchy-for-optimism-grant-allocation-decisions/9678">futarchy</a>, and other experiments around philanthropy are neat, but I’d like to get a better sense of what’s being learned from them. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://vitalik.eth.limo/general/2025/03/29/pubos.html">Open source should be a prerequisite for digital public goods</a>, but let’s not be afraid to stay opinionated about what projects should receive donations. [3]</p><h2 id="h-stop-with-the-complicated-tokenomics" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Stop with the complicated tokenomics</h2><p>Governance power isn’t a perk—it’s a job with responsibilities. Cultural value is real (see memecoins and NFTs) but all the relevant tech is downstream of derivatives anyway.</p><p>Buybacks and dividends give tokens value. If a protocol performs a function that users will pay a fee to execute, some or all of that fee can benefit tokenholders. It’s confusing to me that <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/lex_node/status/1903057765234364572">this seems debatable</a>.</p><h2 id="h-figure-out-privacy" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Figure out privacy</h2><p>There won’t be any mainstream adoption of this in its current form because people don’t want their coffeeshop to know their net worth after buying a latte. At the same time, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/NeerajKA/status/1346836020927619077">the financial system is a critical tool for law enforcement</a> (whether you like it or not).</p><p>It looks like some form of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.veil.cash/#verified-users">onchain KYC</a> is going to be the short-term solution, but I’m not sure moving your financial freedom into Brian Armstrong’s hands from Jaime Dimon’s is what we’re here for. [4] The <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://home.treasury.gov/news/press-releases/sb0057">Tornado Cash case</a> was interesting, but I’m not convinced society will accept money laundering while replacing the status quo. (Though perhaps it’s inevitable? I’d be surprised by every possible outcome here.)</p><h2 id="h-dont-worry-about-uis" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Don’t worry about UIs</h2><p>For a while, I thought the creation of a truly meritocratic and free market for consumer financial apps would drive mass adoption. I was wrong. Being able to use any block explorer, any wallet application, any custom script, etc. is inarguably better than being at the mercy of my bank’s dashboard. But it’s not so much better that I’d expect people to move over all of their finances, even if privacy were allowed.</p><p>Also, how is there no wildly popular open source crypto tax software yet? This should be a quintessential public good.</p><h2 id="h-build-mcp-servers" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Build MCP servers</h2><p>Add a thin offchain layer to your protocol with functions including descriptions that an open-weights large language model can understand. If you can get an LLM to successfully interface with your protocol, LLMs will be able to generate GUIs on demand—if not just take care of users’ needs directly.</p><p>Wealthy people rely on other people to manage their finances by chatting with them, never touching GUIs. This will soon become available to everyone. I believe this is the 10x improvement for end users that will drive mainstream adoption. Everyone has the ability to do things on DeFi rails that they can’t with TradFi and AI agents will make this obvious.</p><h2 id="h-be-conscious-of-brand" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Be conscious of brand</h2><p>Even with LLMs objectively assessing financial infrastructure options and managing money on behalf of users, the brands surrounding the technology will remain important. There are dimensions of identity and reputation that come with deciding how you handle your money. This isn’t going away.</p><p>At this point, I think “crypto” is unsalvageable as a brand, associated with crime and presidential memecoin pump-and-dump schemes. “Web3” is lame. (“Decentralized compute” is the best I’ve got.) The brand for the runner-up world computer <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://zora.co/coin/base:0x4b61096f1bd8bf0a669f1f3d8188c0d7cb1106d6">is trash</a>. [5] Ethereum is the real deal. It’s not a business. It’s Linux. It’s weird. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://vitalik.eth.limo/general/2023/12/28/cypherpunk.html">It’s cypherpunk</a>. Let’s keep it that way.</p><h2 id="h-have-some-conviction" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Have some conviction</h2><p>Ethereum is only ten years old. When the world wide web was this age, Pets.com was collapsing, and the idea that the internet could replace cable television was fringe. If this is really going to secure the world’s financial system, it’ll take a little while to get right. It starts with global access to Wall Street via centralized stablecoins. Replacing Wall Street is the end game.</p><p>The recent breakthroughs with large language models is serendipitous. They’ll cut through all the bullshit. This is bad news for traditional finance and crypto grifters alike.</p><p>So go put your energy into building financial infrastructure that’s appealing to my future superintelligent money manager. Thanks!</p><hr><p>[1] You might think that you can progressively make a perps dex immutable, but this is a mirage. Either the contract holding the collateral is upgradeable or it isn’t. If integrated subsystems are immutable, that’s nice but you can just change them out on the contract that’s holding the funds.</p><p>[2] I would’ve guessed tokens would be the “primitive” that you’d build perps on, but it turns out it’s the other way around. Go figure.</p><p>[3] I say this with love. Development continues on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com">Cannon</a> (an open source dev tools project I contribute to which supports multiple teams building decentralized perps) largely thanks to the generosity of Optimism.</p><p>[4] I’ve seen “compliance-friendly” used as a buzzword here. This would’ve been parody just a few years ago.</p><p>[5] Yes, they retracted the ad. But was anyone that surprised they shipped it in the first place?</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[The Internet]]></title>
            <link>https://paragraph.com/@noahlitvin/the-internet</link>
            <guid>03fmTIIwdZUiQgouyEP2</guid>
            <pubDate>Sat, 08 Jun 2024 19:10:52 GMT</pubDate>
            <description><![CDATA[I’m just old enough to remember when the internet was fucking awesome. It was open and lawless. Using it was an experiment. You could ask “asl” in an AOL chatroom. You could play pretend. The invention of MP3 compression and file sharing apps was life-changing. As a middle school boy learning to play bass guitar, I suddenly had access to practically every song in the world. Incredibly, it was even cooler than that—using it was breaking the rules! At one point, an ISP threatened my dad that th...]]></description>
            <content:encoded><![CDATA[<p>I’m just old enough to remember when the internet was fucking awesome. It was open and lawless. Using it was an experiment. You could ask “asl” in an AOL chatroom. You could play pretend.</p><p>The invention of MP3 compression and file sharing apps was life-changing. As a middle school boy learning to play bass guitar, I suddenly had access to practically every song in the world. Incredibly, it was even cooler than that—using it was breaking the rules!</p><p>At one point, an ISP threatened my dad that they’d shut down our service because they had evidence of our IP address, as I saw it, just downloading files. This was around the same time there were stories of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.theguardian.com/technology/2012/sep/11/minnesota-woman-songs-illegally-downloaded">random people getting slammed with huge fines</a> for downloading files (with at least <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.mtv.com/news/oh09zu/riaa-drops-piracy-suit-against-66-year-old-grandmother">one innocent grandma harassed</a> in the process).</p><p>The moral justification for this was that it protected artists. There was an ill-fated effort around “digital rights management”. Pay $1 per song on iTunes and then you—and only you—own it. Price aside, there was a big issue: this tech is inherently circumventable. You can just record the output of your audio card.</p><p>Then we got Spotify. Artists get a share of a flat monthly fee that’s (I guess) the market rate for the convenience of the app over finding the files online. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.youtube.com/watch?v=LB1sTH7bUQ4">“There are a hundred pities in a penny.”</a> Where did those guys go that said they cared about protecting artists?!</p><p>Anyway, sure, copy-pasting an MP3 file might have a couple similarities to putting a CD-ROM of Jay-Z’s Black Album in your backpack and running out of a Tower Records without paying for it. But in most ways, I’d argue, it’s not like that at all! Maybe our conception of intellectual property is based on a strained metaphor with physical property and we could stand to gain from reevaluating all of this.</p><p>In any case, we ended up with an internet where <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://spotifydown.com/">music piracy is technically trivial</a> and humans are generally unable to make a living creating art. We moved on.</p><p>But there was more to the internet than just replacing radio. You could play games and you could make them. You could explore websites and you could make them. You could make a MySpace profile and customize your HTML. We got Facebook, Instagram, Snapchat, TikTok, and now the average person just uses the internet to connect to a small handful of apps and websites operated by massive corporations.</p><p>These apps are optimized to keep people hooked, generating ad revenue. They sell your data. They invented doomscrolling. This is the internet middle schoolers are growing up with today and it’s the only internet they’ve ever known. Now, they get to witness the internet transition towards an archive of AI-generated content, increasingly indistinguishable from human communications.</p><hr><p>Enter blockchain technology. Internet-native money (which can be used to purchase decentralized computing power) becomes a major asset class as open and permissionless financial systems mature.</p><p>Before, we had little choice but to incentivize and, ultimately, trust middlemen like banks to hold and transfer money. They’re profit-seeking and operate privately. Now, there’s an alternative powered by free (as in ”free speech”) open source software. It’s an amazing development.</p><p>In just the few years since I got involved in the space, this tech has developed at an astonishing rate. (The Optimistic Virtual Machine feels like just yesterday.) Scaling solutions have enabled lower transaction fees; they’re now reliably below the ~3% (plus flat fee) common among traditional payment processors. Many small businesses operate on single-digit margins and already prefer cash to avoid this. The demand here is obvious, assuming we’re able to adopt socially-acceptable privacy solutions.</p><p>There are even signs that Wall Street and the American political establishment are aware of the inevitability here. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/nic__carter/status/1790540747466223921">Paul Ryan suggested pro-stablecoin legislation</a> as a method to help the national debt. (Centralized stablecoin issuers are already a major buyer of treasuries.) Interestingly, he goes out of his way to clarify “it’s not crypto because it’s tethered to the US dollar.” This is a branding exercise, I suppose.</p><p>Onchain derivatives markets built with immutable smart contracts can integrate with oracle networks to generate decentralized stablecoins and then trade them into tokens that track the value of any asset—including those that have nothing to do with crypto at all. At this point, decentralized finance is safely past the proof of concept phase. The utility is undeniable.</p><p>The most reliable, fast, scalable, and inexpensive financial infrastructure will ultimately win, simply as a function of capitalism. A more interesting debate surrounds the value of decentralized computation in general. This is a political and cultural concern, less a financial or economic one.</p><hr><p>A major appeal of music piracy in the ‘00s was meeting all the interesting characters in chatrooms and message boards along the way. This magic really crystallized in MMORPGs. The internet was <em>social</em> in a sense of the word that existed before social media.</p><p>I poured countless hours into Everquest—and even more into Dark Age of Camelot—because it was wildly fun building a character. In role-playing games, you not only accrued experience points and items to wear on raids through Darkness Falls, but you also built a reputation. There wasn’t really a difference between your character being unreliable and <em>you</em> being unreliable. If you say you’ll meet a group at Druim Ligen at 6PM GMT on Thursday to complete a quest, people would be disappointed if you didn’t show up.</p><p>These expectations weren’t set on NPCs. Of course they weren’t. Throughout Hibernia and into the frontier, it was always obvious which characters had humans behind them.</p><p>This is no longer the case. It’s clear that ‘proof of personhood’ tech will need to do better than CAPTCHA codes going forward. It’s no coincidence that the leader of the most successful AI project also founded <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://worldcoin.org">a blockchain project that associates eyeballs with accounts</a>.</p><p>Imagine growing up with an internet full of bots that essentially pass the Turing Test. Imagine competing in a high school Battle of the Bands and wondering if the winning song was inspired by an interesting life experience or just talented prompt engineering. It will be completely intuitive to new generations that the value isn’t really in the ones and zeros of “digital content”. That never made sense in the first place.</p><p>Serious value stems from authenticity, provenance, identity, and reputation. This echos steelman arguments for NFTs. They had a hype cycle driven by the emergence of markets for them that mirror those of luxury art. There’s an important lesson in this analogy: the value of a painting was never just about who can look at it. It’s about whose name sits on the placard next to it.</p><p>The non-fungibility of NFTs is just an implementation detail. The real breakthrough here is in the payment rails and the receipts for them. Now that digital micropayments without intermediaries are becoming a reality, I can throw a few bucks in a digital tip jar and get credit for it. For me, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://zora.co/collect/base:0xaaf6f699f1136c41dcf81735d483122683d69a64/1">cheap and plenty NFTs</a> are far more exciting than expensive ones. Patronage is how the rich have always supported the arts. Now everyone can play.</p><p>The democratization that comes with decentralized technologies is exactly what has inspired so much disdain for crypto. It lays capitalism bare by creating a level playing field—for the good parts and the bad. Still, morally, a more free and open system is a net positive. Under the current system, sports betting and state-issued lottery tickets are fine for everyone, but we need to leave venture capital investing to the ‘accredited’.</p><p>With everyone able to create, store, and exchange value as they wish, we’re primed for a major sociological shift. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://vitalik.eth.limo/general/2024/05/29/l2culture.html">Distinct cultures are growing around different blockchains.</a> More chains will be created and the aggregate demand for their decentralized computing power will expand. You can run everything else on local hardware and retain your privacy. You can rent processors from Amazon as a last resort.</p><p>Social progress is ultimately in the hands of kids. I’m optimistic that—without asking permission from adults—they’ll just revolt against today’s internet, which is pretty fucking awful.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[ERC-7412 Library Batching Implementation Proposal]]></title>
            <link>https://paragraph.com/@noahlitvin/erc-7412-library-batching-implementation-proposal</link>
            <guid>ej0gobphVQrTznMbj3Hd</guid>
            <pubDate>Sun, 31 Dec 2023 14:51:20 GMT</pubDate>
            <description><![CDATA[ERC-7412 is a standard that allows smart contract engineers to incorporate off-chain data by simply calling functions on oracle contracts. It preserves composability across smart contracts and also aligns economic incentives between data consumers and oracle networks. This standard relies on transaction batching (i.e. atomic multi-operations, multicalls) to automatically prepend the verification of data from decentralized oracle networks when necessary to execute a transaction. Synthetix’s Co...]]></description>
            <content:encoded><![CDATA[<p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-7412">ERC-7412</a> is a standard that allows smart contract engineers to incorporate off-chain data by simply calling functions on oracle contracts. It preserves composability across smart contracts and also aligns economic incentives between data consumers and oracle networks. This standard relies on transaction batching (i.e. atomic multi-operations, multicalls) to automatically prepend the verification of data from decentralized oracle networks when necessary to execute a transaction.</p><p>Synthetix’s Core Contributors developed the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/auxiliary/TrustedMulticallForwarder">trusted multicall forwarder</a> for use with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://v3.synthetix.io/">Synthetix V3</a>. It’s a trusted forwarder (per <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-2771">ERC-2771</a>) that includes <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/mds1/multicall">Multicall3</a> functionality. This is necessary to enable transaction batching for externally-owned accounts, which are currently used by the majority of people interacting with Ethereum.</p><p>This is intended to become obsolete as account abstraction solutions (per <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4337">ERC-4337</a>) become more widely adopted, since they allow for transaction batching without requiring protocol-level changes. Long-term, it would be ideal for ERC-7412 support to be added to wallet applications. Decentralized oracle networks could feel more like “first-class citizens” in their user experience. Just as you currently configure your wallet to use RPC URLs for blockchains that correspond to chain IDs, you could also manage RPC URLs for a variety of oracle IDs. The proliferation of oracles will ultimately enable more real-world applications for Ethereum outside of finance.</p><p>In the meantime, I was thinking it’d be worthwhile to add a system for batching adapters to the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/erc7412">ERC-7412 library</a>. There are already a few <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/usecannon/cannon/blob/main/packages/website/src/helpers/ethereum.ts">redundant</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/v3ui/blob/master/liquidity/lib/withERC7412/withERC7412.ts#L7">implementations</a> out there for batching with the trusted multicall forwarder.</p><p>I’m also excited that integrators in the Synthetix ecosystem are being very forward-thinking with account abstraction and the possibilities it unlocks for user experience. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://kwenta.io/">Kwenta</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.polynomial.fi/">Polynomial</a>, and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://infinex.io/">Infinex</a> are building features like social sign-in/account recovery, one-click transactions, auto-bridging, delegated trading, and more. The trusted multicall forwarder might become obsolete sooner than I thought. I started looking into how best to create batching adapters for the leading account abstraction solutions as well.</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/erc7412/pull/10">Here’s a rough draft pull request</a> with an adapter for the trusted multicall forwarder and another for <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.biconomy.io/">Biconomy</a>. It automatically determines a valid approach for batching a given list of transactions and implements some caching to reduce RPC calls. This pull request also adds a function to return a list of transactions (not only a generated batch transaction) such that the list can be sent to a paymaster.</p><p>I feel like I’m still getting caught up on recent developments around account abstraction, so I’m very interested in feedback. Conversation can happen in the pull request on GitHub. Happy New Year!</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[Synthetix 2023: What We’ve Built]]></title>
            <link>https://paragraph.com/@noahlitvin/synthetix-2023-what-we-ve-built</link>
            <guid>09YNBNKjJg7Qb18y6bwp</guid>
            <pubDate>Mon, 20 Nov 2023 16:29:39 GMT</pubDate>
            <description><![CDATA[As we enter the holiday season, I wanted to share an overview of the work completed by Synthetix’s Core Contributors so far this year. We built a lot of awesome shit. This is a long post. The year kicked off with the launch of Perps V2. Despite relatively low volatility in the crypto markets, this has facilitated over $30 billion in trading volume. With no incentives, Synthetix’s liquidity providers have experienced the most profitable days in the protocol’s history over the last month. This ...]]></description>
            <content:encoded><![CDATA[<p>As we enter the holiday season, I wanted to share an overview of the work completed by Synthetix’s Core Contributors so far this year. We built <em>a lot</em> of awesome shit. This is a long post.</p><p>The year kicked off with the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.synthetix.io/synthetix-perps-v2-is-now-live/">launch of Perps V2</a>. Despite relatively low volatility in the crypto markets, this has facilitated over $30 billion in trading volume. With no incentives, Synthetix’s liquidity providers have experienced the most profitable days in the protocol’s history over the last month.</p><p>This post outlines the work on Synthetix V3, which was accomplished on top of monitoring, configuring, and upgrading the V2 system. The core system and spot markets are on mainnets, with perpetual futures markets and the cross-chain elections system around the corner. Our investment in developer tooling is paying off, keeping up the Core Contributors’ engineering velocity and that of our integrators.</p><h2 id="h-core" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Core</h2><p>At <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/protocol/synthetix">its core</a>, Synthetix performs two functions: it issues a decentralized stablecoin and it allows liquidity providers to back derivatives markets that exchange that stablecoin into other assets. It’s something like a combination of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://uniswap.org/">Uniswap</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.liquity.org/">Liquity</a>. The protocol can be deployed on any blockchain that implements the Ethereum Virtual Machine. It integrates with decentralized oracle networks like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/">Chainlink</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://pyth.network/">Pyth</a>.</p><p>Synthetix V3 is modular and permissionless in its design. The protocol’s governance decides what collateral is acceptable and sets risk parameters for each type. Liquidity providers can take out an over-collateralized loan of dollar-denominated stablecoins against this collateral. Pools can be created which consist of vaults for each collateral type. Pool owners can distribute rewards to liquidity providers delegating collateral to these vaults (helping bootstrap initial liquidity) and then configure the pool such that it backs derivatives markets of their choosing.</p><p>When traders open and close positions in markets, they deposit and withdraw the stablecoins generated by the protocol. This reduces or increases the debt of liquidity providers that are delegating their collateral to the pools that back these markets. If the market implementations are sound and collect fees, this incentivizes liquidity providers by paying off their loans.</p><p>Synthetix V3 allows for a many-to-many relationship between pools and markets. This creates a “marketplace of liquidity,” but could lead to scaling constraints from the added complexity. Because traders are highly active and cost sensitive—while liquidity providers are generally passive and, ideally, profitable—the distribution of changes to debt are executed with lazy evaluation. This means gas costs can stay low for traders, regardless of the core system’s configuration.</p><p>Imagine a Plinko machine. Traders move stablecoins in and out of the top of the system with a simple, cheap transaction. Then, anytime someone pokes a relevant part of the core system, the distribution occurs on-chain. A consequence is that functions which might otherwise be read functions are instead write functions. (Apps displaying values to users can always simulate the result of the function call to read the value without spending gas.)</p><p>A more crucial aspect of the protocol’s engineering is its integration with decentralized oracle networks. Determining the current price of an asset is already a non-trivial problem in traditional finance. (Is a quote from one minute ago acceptable? One millisecond? How big of an order are you trying to fill? What if exchange venues provide different quotes?) Then add the complexities stemming from latency in block production, miner extractable value, cryptographic verification of price data, and the implementation specifics of decentralized oracle networks.</p><p>Synthetix V3 has the logic relevant to this encapsulated in a stand-alone system, the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/protocol/oracle-manager">oracle manager</a>. This is a stateless system which allows users to register nodes that can be connected in a tree structure. For example, you might need a price for ETH that is no older than 5 seconds. You might want to use the price from Chainlink if it’s fresh enough, or otherwise use a price from Pyth. Then, you might want to average this price with the price available from Uniswap in the ETH/USDC pool. It could also revert if these prices are more than 20% apart. All of this can be specified with a single node ID, used as a configuration setting in the core system and market implementations.</p><p>Another important consideration is price data availability. If a price is needed that’s no older than 5 seconds and it isn’t already available on-chain, we need a way for users to provide it. Rather than relying on decentralized oracle networks to push prices on-chain themselves, Pyth enables price data to be <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.pyth.network/documentation/pythnet-price-feeds/on-demand">pulled on-demand</a>. We’ve developed <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-7412">ERC-7412</a>, a standard by which clients can recognize the need for off-chain data, like fresh prices, and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/noahlitvin.eth/9Y76pCcce7-7DrAWhj_MxhB-rSLcqFuy9ZhbY35_Yks">automatically re-stage the transaction as a multicall</a> that prepends the cryptographic verification of the data to the desired transaction.</p><p>The core system has been <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/noahlitvin.eth/ZkqFOBsJP4WX-pDmVVWEJhB2dPoWED_6QqcriKULcME">deployed to Ethereum and Optimism Mainnet</a>, along with the new implementation for spot markets. It has been configured to match the Synthetix V2 system. These deployments are alpha releases; integrators should anticipate the potential for (pre-announced) interface breaking changes if approved by governance. Certain functions, such as the creation of new pools and the registration of new markets, require governance approval on this deployment for now as a risk mitigation measure. Integrators have started building front-ends, markets, and vaults for automated liquidity provisioning strategies around these deployments.</p><p>The core system includes functionality for cross-chain stablecoin transfers, powered by <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/cross-chain">Chainlink’s CCIP</a>. Synthetix V3 exceeds feature parity with V2, with the exception of perpetual futures markets (which are imminent, described below) and cross-chain pool synthesis. We’ve built a functional prototype of cross-chain pool synthesis with Wormhole’s forthcoming <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-349/">Cross-Chain Queries</a>. Cross-Chain Queries would also enable the creation of caching functionality, increasing protocol scalability without increasing gas cost for users. (This integration could be transparent for end-users <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/erc7412-wormhole">by leveraging ERC-7412</a>.)</p><p>The <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-306/">migration plan</a> entails a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/markets/legacy-market">legacy market</a>, which will allow the V3 protocol to provide liquidity to the V2 protocol, liquidity providers to seamlessly migrate their positions from V2 to V3, and the exchange of stablecoins issued by V2 to that of V3. Given the success of Perps V2 (and to avoid adding unnecessary smart contract risk), the current thinking is that the legacy market can be rolled out after the V3 markets are clearly constrained by a lack of liquidity.</p><h2 id="h-markets" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Markets</h2><p>The most notable improvement of the market implementations in Synthetix V3 is the order settlement logic, which is perhaps the most critical function of this code. Perps V2 introduced the use of pull-based oracles, where a trader makes a commitment to trade on an initial transaction and then a bot can pull in a price to settle the order on a subsequent block. This eliminates the possibility of traders front-running the latest prices made available by the oracle manager.</p><p>Both spot and perps markets in V3 now implement this pattern and make a further improvement which leverages Pyth’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.pyth.network/documentation/benchmarks">Benchmarks</a>. Rather than settling orders with prices available in a window following the commitment, orders can only be settled with a price specific to a timestamp associated with the order. This eliminates the possibility of price optionality.</p><p>Though perpetual futures markets are generally preferred by active traders, Synthetix V3’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/markets/spot-market">spot market</a> provides a large amount of utility to the protocol. Fundamentally, the spot markets generate a token (a “synth”) which tracks the value of an asset as an ERC-20 token. This means synths are compatible with virtually every existing wallet application for Ethereum.</p><p>In Synthetix V3, governance can allow specific market implementations to deposit collateral into the core system, not only stablecoins. This allows spot markets to also serve the role of “wrappers” in V2, which increase stablecoin scalability. Rather than requiring users to take out an over-collateralized loan to generate stablecoins, they can wrap assets into their synthetic equivalents and sell them for the stablecoin. Better still, a new skew fee incentivizes arbitragers to reduce the protocol’s exposure to price fluctuations of wrapped assets.</p><p>The spot market is also integrated with the V3 <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/markets/perps-market">perpetual futures markets</a>. The new perps implementation can accept synths as collateral, not only stablecoins. Traders can also use the same collateral to margin multiple positions in a single account. This, plus improved logic around liquidations, enables the functionality users would expect from a centralized exchange while also improving risk management for liquidity providers.</p><p>Perps V3 can integrate with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://community.optimism.io/docs/useful-tools/oracles/#gas-oracle">Optimism’s Gas Price Oracle</a> through the oracle manager to dynamically set incentives for bots to settle trades. Traders just submit an order and receive a notification when their order has been settled. As a fallback, traders can use any ERC-7412 compatible client to settle orders themselves. (The function is completely permissionless.)</p><p>The <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.synthetix.io/perps-v3-testnet-competition-a-wrap-up-rewards-breakdown/">Perps V3 Testnet Competition</a> was conducted last month which generated valuable feedback from traders and integrators. Updates based on this feedback are currently in audit. Synthetix is tracking for a mainnet alpha launch on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://base.org/">Base</a> (referred to as the <em>Andromeda Release</em>) before the end of the year.</p><p>In parallel, Synthetix Core Contributors have been developing an alternative implementation of perpetual futures markets optimized for the Ethereum Mainnet deployment, codename BFP (Big Fuckin’ Perps). While the main perps implementation aims to enable an end-user experience that rivals that of centralized exchanges, this implementation is designed to facilitate large, gas-optimized <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://youtu.be/pYZqAix1nS0?t=690&amp;si=hIRb0OFhZzYiI23U">wrapped basis trades</a> that consist of a short ETH position margined with wrapped staked ETH. This will allow protocols like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.ethena.fi/">Ethena</a> to integrate with Synthetix to generate scalable decentralized stablecoins.</p><h2 id="h-governance" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Governance</h2><p>Synthetix’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/protocol/governance">current elections system</a> was built with the initial iteration of the new framework and developer tools created by the Core Contributors. The latest iteration of the election system, currently in audit, uses the current version of the architecture employed elsewhere in the codebase and adds greater flexibility to the system.</p><p>Similar to how the Synthetix V3 core protocol and markets are effectively a superset of V2 (i.e. V2 could be replicated as one of V3’s many possible configurations), the new elections system allows voting power to be calculated based on participation in the V3 system as well as V2. It also leverages Chainlink’s CCIP to allow voting power to be calculated based on participation in multiple deployments on various chains.</p><p>As before, each epoch consists of a nomination, voting, and evaluation period, after which NFTs are distributed to the winners for the following administration period. The NFTs can be integrated into other smart contracts, like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.safe.global/safe-smart-account/modules">Safe Modules</a>, to allow for the signing of transactions related to any aspect of the protocol.</p><h2 id="h-front-ends" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Front-ends</h2><p>Synthetix V3 has no centralized front-end dependencies. Users generally interact with the protocol using ecosystem projects. There’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://v3.synthetix.io/">an informational page</a> hosted on GitHub Pages and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.synthetix.io/v/v3/">documentation</a>, but <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/synthetixio/v3ui">the apps</a> developed by Core Contributors are only made available on IPFS via ENS domains.</p><p>Anyone can run an <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/synthetixio/synthetix-node">IPFS node</a> to access and host these apps (as well as some developed by ecosystem projects). In addition to the web apps, a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/python-sdk/tree/main#readme">Python SDK</a> and a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/data/tree/main#readme">data analytics pipeline</a> are under development.</p><h2 id="h-developer-tools" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Developer Tools</h2><p>It simply would not have been possible for a team this small to build so much without next-gen dev tooling. To overcome the contract size limit, the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-router">Synthetix Router</a> was developed to automatically generate code that routes calls to an arbitrary number of contracts. Library contracts <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/blob/main/protocol/synthetix/contracts/storage/CollateralConfiguration.sol">like this</a> include getter and setter functions, as would be in model code from an MVC framework. Add a standard UUPS proxy contract and we can <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/learn/guides/router">build an upgradeable protocol of any size</a>. For Web2 developers, this is like going from individual webpages generated with php—each consisting of a maximum of around a thousand lines of code that can’t be changed—to building with Ruby on Rails (including a package management system, described below).</p><p>Even with a solution to the contract size limit, running upgrades and configurations of complex protocols can be painful and unforgiving. Maintaining Synthetix V2 involves significant overhead with just two interconnected mainnet deployments (each with subtly different implementations and configurations). RPC endpoints used to submit the transactions for deployments can fail randomly. Also keep in mind that, unlike Web2 infrastructure, blockchains are immutable. On top of this, deployments entail coordinating transaction verification and signatures from governance.</p><p>When we built the prototype of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/">Cannon</a>—our DevOps tool—at the ETHDenver hackathon in 2022, the utility was more ambiguous. Not many teams had faced the same challenges as Synthetix’s Core Contributors. Although “Infrastructure as Code” is generally accepted as a strong pattern in Web2, there wasn’t any mature DevOps tooling in Web3. Since then, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.chugsplash.io/">alternatives</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/NomicFoundation/hardhat-ignition">have</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.openzeppelin.com/defender">appeared</a>. I believe there’s absolutely space for multiple flavors of tools, though I’m more confident than ever with our approach. The generous grants we’ve received from <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.optimism.io/">Optimism</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://safe.global/">Safe</a> to accelerate its development have reaffirmed this.</p><p>Cannon replaces deploy scripts with cannonfiles, which describe a desired state of a blockchain (rather than a list of transactions to execute). Users can “build” a chain into the desired state using <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/learn/cli">the CLI</a>, resulting in a package of data related to the deployment. If an RPC endpoint fails, the deployment finishes as best it can and then the build can be re-run to automatically pick up where it left off (based on the ‘partial build’ package). If signatures are required to complete a deployment, a ‘partial build’ package can be used to stage the remaining transactions to a Safe using <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/deploy">the web deployer</a>. Packages can be published to the registry on Ethereum.</p><p>Packages can be used by developers building integrations (like front-ends and bots) for local development and continuous integration scripts for testing. Packages include addresses and ABIs, which are leveraged by the interact tools in Cannon’s <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/packages/synthetix-omnibus/latest/10-main/interact/">web app</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/learn/cli#run">CLI</a> so users can execute transactions on deployed protocols. (This is especially useful for Synthetix, as Etherscan doesn’t have support for interacting with protocols using a router yet.)</p><p>Perhaps the most powerful feature of Cannon is its ability to use packages in cannonfiles, allowing for composability. A cannonfile can automatically import deployment data related to the protocols it integrates with. They can even provision entirely new instances of smart contracts and protocols.</p><p>This enables a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/synthetixio/synthetix-deployments">GitOps workflow</a>, where an unlimited number of deployments can be maintained without accruing additional overhead. Developers ship an upgraded version of code as a package. Then, a cannonfile for a deployment is updated to specify the new version, along with any configuration updates. Partial deployment data is generated after putting the new code on-chain. Then, signatures are collected to have the protocol use the new code (by having the proxy point at the new router) and enact any configuration changes. Finally, the completed package is published to the registry.</p><p>This creates a new paradigm for builders. Rather than just writing simple, immutable smart contracts that require a single transaction to deploy and no maintenance, we can build at a level of abstraction that involves an orchestration of many complex protocols across multiple chains. In my view, the industry has already built all of the “primitives”. Now, we need tooling on par with Web2 to create more sophisticated systems. Once proven out, these protocols can be made immutable. This will provide more protection for users than the traditional financial system ever could.</p><h2 id="h-zooming-out" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Zooming Out</h2><p>It’s been a weird year for crypto. “The bear is for builders,” they say.</p><p>Layer 2 blockchains and decentralized oracle networks made huge progress increasing their performance and technical decentralization. Web3 user experience has made huge strides as well. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://kwenta.io/">Kwenta</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.polynomial.fi/">Polynomial</a> feel smoother than the user interfaces offered by my bank. During the testnet competition, they seemed on par with centralized crypto exchanges to me.</p><p>But most people wouldn’t know. The media remained fixated on Sam Bankman-Fried. His indictment was—paradoxically—painted as an indictment of crypto.</p><p>It’s as if reporters don’t understand that FTX was a centralized exchange. The code behind its fraudulent liquidations mechanism was only made public long after users’ funds were lost. If there are concerns with how Synthetix processes liquidations, you can <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/edit/main/protocol/synthetix/contracts/modules/core/LiquidationModule.sol">make a pull request</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/">present a SIP</a>.</p><p>Plus, there’s no need to have a government make sure Synthetix didn’t send users’ funds to its ex-girlfriend’s venture capital fund. Anyone can just check what tokens are held by <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://optimistic.etherscan.io/address/0xffffffaEff0B96Ea8e4f94b2253f31abdD875847">a deployment’s core proxy contract</a>.</p><p>In a better world, regulators would shift more resources towards education as a tool to protect consumers. Whether or not we’re “out of the bear market,” it’s clear that decentralized finance isn’t going away. I hope more people learn about it.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[Intro to Oracle Multicalls]]></title>
            <link>https://paragraph.com/@noahlitvin/intro-to-oracle-multicalls</link>
            <guid>K5FPm36jlydcczKAwawK</guid>
            <pubDate>Tue, 03 Oct 2023 13:56:34 GMT</pubDate>
            <description><![CDATA[Synthetix’s Perps V3 Testnet Competition is underway. In addition to testing the new functionality in the perpetual futures market implementation, the use of spot synthetic assets as collateral, and multiple liquidity pools backing different combinations of markets, this deployment is also testing a new pattern for consuming oracle data: ERC-7412. This is implemented with an external node for the oracle manager, requires a client library for front-ends/integrations (that could ideally be buil...]]></description>
            <content:encoded><![CDATA[<p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.synthetix.io/the-perps-v3-testnet-trading-competition-on-base-is-live/">Synthetix’s Perps V3 Testnet Competition is underway.</a> In addition to testing the new functionality in the perpetual futures market implementation, the use of spot synthetic assets as collateral, and multiple liquidity pools backing different combinations of markets, this deployment is also testing a new pattern for consuming oracle data: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-7412">ERC-7412</a>.</p><p>This is implemented with an <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/external-nodes/blob/main/src/PythERC7412Node.sol">external node</a> for the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/protocol/oracle-manager">oracle manager</a>, requires <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/erc7412">a client library</a> for front-ends/integrations (that could ideally be built into wallet applications), and a minor <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-340/">protocol upgrade</a>. The Synthetix V3 system can still operate with the existing oracle nodes as before.</p><p>Though this should be transparent to end users, it may cause some confusion for integrators. I thought it would be beneficial to provide some context on the problem this is solving, some technical details, and where this fits into the broader context of what decentralized finance is aiming to accomplish.</p><h2 id="h-price-oracles" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Price Oracles</h2><p>DeFi has historically relied on <em>push oracles</em>. Decentralized oracle networks consist of nodes that come to consensus around the current price of an asset and execute a transaction to write this price on-chain. This may occur at a regular interval (a “heartbeat”) or when the price moves more than a certain amount (crossing a “deviation threshold”).</p><p>These prices can be useful for specific applications—like processing liquidations—but aren’t viable for very time-sensitive operations like quoting trade prices. Even if prices were written to every block, blocks aren’t generated fast enough to prevent latency arbitrage. This model is also problematic because consumers of the price data effectively can’t be charged for their use and oracle providers inevitably pay for unused price updates.</p><p>An alternative pattern involves <em>pull oracles</em>. Rather than only allowing the decentralized oracle network to write prices to a contract, cryptographically signed price data can be made available by the decentralized oracle network off-chain. Then, whoever needs a price to execute a transaction can retrieve it, have it cryptographically verified on-chain, and stored. Here, the consumer pays the gas cost to execute the verification and storage in addition to a fee when the data is verified. This is essentially a superset of the push oracle pattern; anyone can run an automated price pusher with a heartbeat, deviation threshold, or any other logic.</p><p>With pull oracles, Synthetix has been able to implement asynchronous order settlement to prevent front-running. Under this pattern, a trader commits an amount of assets to trade in an initial transaction and the timestamp of the order commitment is recorded. Then, anyone can provide cryptographically-signed price data associated with the timestamp of the commitment and the order is settled at the exchange rate determined by that price.</p><p>So how do we implement this?</p><h2 id="h-erc-3668" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">ERC-3668</h2><p>When using Ethereum, users have a public wallet address and a private key associated with it. When submitting a transaction (like a transfer of assets or a trade), users cryptographically “sign” the transaction request with the private key associated with the wallet and send it to a node in the Ethereum network for execution.</p><p>Rather than actually submitting the transaction to the network for execution, users can also have the node simulate what would happen if they were to submit it. This allows users to see how much ETH would need to be spent to execute a transaction (the “gas cost”) and also whether it seems like it may run into an error during an actual execution attempt.</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-3668">ERC-3668</a> is a standard in which a special error is emitted by a smart contract indicating that it needs off-chain data from an oracle to complete the transaction: <code>OffchainLookup(address sender, string[] urls, bytes callData, bytes4 callbackFunction, bytes extraData)</code>.</p><p>For example, if someone simulates the <code>settleOrder</code> function on the Synthetix V3 Spot Market, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/blob/b6082b2f56382ab50c7d8c475de73f692b4efd0b/markets/spot-market/contracts/modules/AsyncOrderSettlementModule.sol#L296">the smart contract can say</a>, “To settle this order, instead, go to one of these <code>urls</code>, and provide the price data there to this <code>callbackFunction</code> for verification and execution.”</p><p>For functions that require a single piece of off-chain data—like a simple order settlement or liquidation—this pattern works well. A problem arises if protocols are attempting to execute more complex operations, which may rely on a dynamic set of off-chain data. For example, a position may have multiple types of collateral margining positions across many markets. And we may want the collateral backing this market to be held on different chains.</p><p>Although theoretically it might be possible to build protocols that handle these situations with ERC-3668, it would prevent composability and add complexity to the code. You could find yourself in what JavaScript developers have dubbed <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://en.wiktionary.org/wiki/callback_hell">“Callback Hell”</a>.</p><h2 id="h-erc-7412" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">ERC-7412</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-7412">ERC-7412</a> is a draft standard inspired by ERC-3668. Here, rather than having the error include a callback function, it indicates the contract address where its seeking off-chain data along with a query which specifies the data it’s seeking: <code>OracleDataRequired(address oracleContract, bytes oracleQuery)</code>. The structure of the oracle query depends on the oracle contract. For example, the error could communicate “I need to be able to retrieve a fresh price for ETH at <code>oracleContract</code>“.</p><p>The oracle contract provides an <code>oracleId</code>, analogous to a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chainlist.org/">Chain ID</a> in Ethereum. Rather than needing the smart contract to provide a URL, the client can determine a gateway for accessing the signed off-chain data specified in the oracle query. (This could be an HTTP URL, a node in a decentralized network, or anything else.) It can construct a call to a <code>fulfillOracleQuery</code> function on the oracle contract with this data.</p><p>Then, it takes the <code>fulfillOracleQuery</code> call and prepends it to a multicall. A multicall is a transaction that concatenates multiple transactions together. It can then simulate the multicall to see whether the error is resolved or if another <code>fulfillOracleQuery</code> call needs to be added to the multicall. This process can be repeated until the simulation succeeds (or reaches an unrelated error).</p><p>Now, instead of specifying callbacks, developers can just call functions on oracle contracts to retrieve off-chain data like any other smart contract function. Need four different prices to process an order in a perpetuals futures market? Not a problem—just call a function four times.</p><h2 id="h-technical-considerations" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Technical Considerations</h2><p>We need to employ some novel engineering methods to achieve this due to design decisions in Ethereum. Over time, this could become a standard adopted throughout the Ethereum ecosystem, streamlining developer and user experience.</p><p>The main issue is that it currently isn’t trivial to generate multicalls that preserve the original caller of the transaction (referred to as <code>msg.sender</code> in Solidity). Luckily, this is something that can be solved by account abstraction (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4337">ERC-4337</a>), which is a major focus in the Ethereum community but not yet widely adopted in practice.</p><p>To support externally owned accounts (most commonly used by wallet applications currently), one relatively straightforward method involves adding a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/packages/trusted-multicall-forwarder/latest/13370-main">trusted multicall forwarder</a> that includes standard Multicall3 functions. These functions are adapted to append <code>msg.sender</code> to <code>msg.data</code> (as in <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-2771">ERC-2771</a>) and fix error message bubbling.</p><p>Another concern is that it may take many simulations to build desired transactions. This could take too long for time-sensitive use cases, like trading applications. In these cases, we recommend purpose-built clients which anticipate the oracle data required by a transaction and provide it on the first attempt. For instance, if an order involves a specific asset, the transaction can be initially prepared as a multicall which includes price data for that asset.</p><p>This pattern also means that end users will need to pay the gas cost for the verification and storage of off-chain data. Although this may be a short-term user experience concern, this ultimately makes the use of decentralized oracles networks economically sustainable. Further, adoption of this standard and the development of oracles that can query data from other chains (not only price data) will allow developers to create protocols that operate seamlessly across multiple layer two and layer three scaling solutions. By allowing transactions to be executed across an arbitrary number of chains, congestion can be avoided. This should bring gas costs down as much as possible for end users.</p><h2 id="h-why-are-we-doing-this" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Why are we doing this?</h2><p>Undeniably, the most proven use case for blockchain technology is permissionless, open financial infrastructure. Synthetix V2, which has processed over $20 billion of volume this year, proves that it’s possible to write open source code which allows anyone with an internet connection to take a position on derivatives of any asset with a price feed. It’s pretty incredible.</p><p>Ethereum has already demonstrated more consistent uptime than traditional financial infrastructure. Plus, the ability to maintain full control of owned assets and having transparency across the system is obviously superior to relying on opaque, privately-owned services (for both developers and end users).</p><p>Now we need to scale these systems, making them faster and cheaper. As the quality of order execution becomes competitive with rent-extractive, centralized services, the global financial system will become a more even playing field. Similar to how the internet reshaped the media industry, decentralized finance will disrupt the financial industry. Avoiding “Callback Hell” is part of how we get there.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[A Tale of Two Financial Systems]]></title>
            <link>https://paragraph.com/@noahlitvin/a-tale-of-two-financial-systems</link>
            <guid>MgzI0zo8HQgKyysUOYZV</guid>
            <pubDate>Tue, 25 Apr 2023 14:06:23 GMT</pubDate>
            <description><![CDATA[It was the best of times, it was the worst of times… I’m not saying that software engineers working on decentralized finance are the modern day Jacobins, but it does feel as if crypto has become completely politicized. (”Elizabeth Warren is Building an Anti-crypto Army”, whatever that means.) I believe there are good faith debates to be had on the merits of open source, decentralized financial systems versus traditional, centralized systems. But it seems that those loudest in the anti-crypto ...]]></description>
            <content:encoded><![CDATA[<p>It was the best of times, it was the worst of times… I’m not saying that software engineers working on decentralized finance are the modern day Jacobins, but it does feel as if crypto has become completely politicized. (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/ewarren/status/1641138829162577928">”Elizabeth Warren is Building an Anti-crypto Army”</a>, whatever that means.)</p><p>I believe there are good faith debates to be had on the merits of open source, decentralized financial systems versus traditional, centralized systems. But it seems that those loudest in the anti-crypto faction (including policymakers and journalists with huge amounts of influence) remain confused about the basic use cases of DeFi, crypto, and financial technology in general.</p><p>I felt compelled to share a couple of recent anecdotes to help illustrate the current reality of financial products and services.</p><hr><p>In a ‘Spring Cleaning’ mindset, I wanted to take a closer look at my personal finances. My initial goal was to build a database/spreadsheet of my account balances and transactions across TradFi and DeFi. There is absolutely no good reason why I should have to pull these numbers manually.</p><p>Setting up automation for DeFi was trivial. There are excellent, free APIs and applications that retrieve this data. For my TradFi accounts, I reluctantly signed up for <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://plaid.com/">Plaid</a>. Ideally, I wouldn’t need to pay Plaid and provide them with my information, but there seemed to be no viable alternative for programmatically retrieving my own data.</p><p>After spending a while setting up Plaid’s authorization flow in a custom app I built, I attempted to connect a Vanguard brokerage account. Apparently, my brokerage account is not eligible for use with Plaid. In search of (seemingly non-existent) documentation of this limitation, I discovered that Plaid does have a “known issue” with Vanguard, though I believe it’s unrelated:</p><blockquote><p>To maintain system stability, Vanguard currently limits access during high-volume windows. As a result, please expect unavailability between 9-11am &amp; 3-4:30pm ET, and limited availability between 8-9am &amp; 4:30-8pm ET. We recommend end users link Vanguard accounts between 5pm - 9am ET.</p></blockquote><p>Seriously?</p><p>The transactions related to my credit card, which I opened through my bank, were also inaccessible via Plaid. It became apparent that just moving all of my TradFi accounts to a different bank would be a more expedient path.</p><p>Following lengthy in-person meetings, navigating complicated credit card product comparison charts, and signing hundreds of pages of PDFs on DocuSign (which I didn’t thoroughly review), I appeared to have an arrangement suited to my needs. I used the bank’s web app to initiate a transaction moving in some funds.</p><p>The transaction failed. I missed a call from an unknown number to authorize the transaction (which I wasn’t notified I should expect). It’s still unclear to me if the sending or receiving institution cancelled it. Ultimately, I brought a paper check to the bank and waited a few days for the transaction to complete.</p><p>Also, the application for the credit card that I was upsold on was denied. Then it was approved the following week. I’m not entirely sure what of my information these decisions were based on—or why the sudden change of heart—but, frankly, I’ve lost all interest in finding out.</p><p>To be extra explicit here: in my experience, the most basic use cases for financial technology (including account creation, retrieval of account balances, and transfer of funds) were far from smooth while using what is supposedly the best that the traditional system has to offer.</p><hr><p>By contrast, I’m part of a team that recently received a grant for open source software we’re developing. I was notified that we could retrieve the funds on-chain and transferred them to my wallet. We created a new wallet to be used for the project and I transferred the funds there. We exchanged the tokens into ETH using <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.uniswap.org/">Uniswap</a>, bridged it to a different blockchain using <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.hop.exchange/">Hop</a>, exchanged some of the ETH into USD-denominated stablecoins on Uniswap, and used <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.liquity.org/">Liquity</a> to leverage the remaining ETH as collateral for a loan of stablecoins.</p><p>We completed all of this in under an hour while eating lunch. We paid fees at each step in the process and we were happy to do so. We can see where all of the fees went and what financial services were being provided.</p><p>Account creation was free and instantaneous, thanks to cryptography. Transaction fees for Ethereum went to node operators who are securing our balances, processing transfers, and executing the code for the protocols mentioned. Liquidity providers on Hop and Uniswap received fees for allowing us to bridge the assets across blockchains and exchange the tokens in seconds with little slippage. Liquity charges no interest on the loan. There’s just a one-time borrowing fee provided to LQTY token stakers. (LQTY tokens are earned by those who provide LUSD to the Stability Pool, which helps maintain system solvency.)</p><p>I also didn’t need to take any notes throughout the process because all of the transactions were recorded on-chain. I just looked at <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://etherscan.io/">Etherscan</a> to confirm my memory of everything in the previous paragraphs.</p><p>The only reasonable criticism of this that I can imagine—from a systemic standpoint—was that our decisions were so risky that we should’ve been protected from ourselves. I don’t buy it.</p><p>Our decision to keep all of the funds denominated in dollars initially (rather than holding the original tokens and exchanging for dollars as needed) could ultimately result in a significant haircut on the project’s resources depending on future price action. We were comfortable with this because having more certainty around resources in the present is very valuable for decision-making.</p><p>Also, our loan risks liquidation. We felt that the liquidation price offered by Liquity was sufficiently low given historical price action and current market conditions. The software we’re building helps developers use Ethereum, so it seems sensible to have some alignment in the financial interests of the project.</p><p>Every decision involves some risk, including inaction. There was nothing amoral about any of the services provided by this open source software.</p><hr><p>There’s a legitimate argument to be made that centralized services will be inherently more efficient, as trust could serve as some sort of shortcut. It seems to me that there’s actually a tremendous amount of rent extraction occurring in centralized systems and the perceived efficiencies are due to displaced costs. But, in any case, it’s an interesting point to discuss!</p><p>I also could imagine an objection: you don’t need a blockchain to solve these problems! This is fair, but who is <em>you</em> in this case? I personally can’t update Vanguard or Plaid’s APIs.</p><p>And of course I don’t mean to suggest these two anecdotes are representative of the vast array of interactions people can have with financial systems. Considerations around money, finance, and the economy touch all of our lives in infinite, complex ways.</p><p>I’m only illustrating here that the “political” debate needs to focus on the competitiveness of this new technology, while keeping in mind that it’s still nascent. There is no doubt that DeFi has a long way to go. But at the current pace of development, it really feels like it’ll be sufficiently robust and scalable for most use cases before the bureaucracy of large banks are able to ship a simple, open API. (This is assuming there’s even any motivation for them to accomplish this.)</p><p>The outcome here seems fairly simple to me. DeFi will continue to improve. As it begins to work better than alternatives, people will use it instead. I strongly hope that Americans will be encouraged to shape its development, despite some regulators’ and media outlets’ best efforts to force it abroad.</p><p>I understand that expecting critics to have ever executed a transaction on a blockchain is unrealistic. Though I also can’t help but wonder if they’ve ever been customers of a bank before.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[ETHDenver 2023]]></title>
            <link>https://paragraph.com/@noahlitvin/ethdenver-2023</link>
            <guid>wgkPoAaJTezdd2JPsmER</guid>
            <pubDate>Tue, 07 Mar 2023 18:46:51 GMT</pubDate>
            <description><![CDATA[This year, ETHDenver moved to a larger venue. Despite the crypto market’s downturn, the attendance for the conference hit an all-time high. My coworker and I participated in their hackathon last year and this year he offered to volunteer as a mentor. We arrived towards the end of its first day and proceeded downstairs into the nearly empty #BUIDL Floor. (The misspelling is intentional.) A small sign was propped up under the Wi-Fi password that read: THE INTERNET IS TERRIBLE… NOT MUCH WE CAN D...]]></description>
            <content:encoded><![CDATA[<p>This year, ETHDenver moved to a larger venue. Despite the crypto market’s downturn, the attendance for the conference hit an all-time high. My coworker and I participated in their hackathon last year and this year he offered to volunteer as a mentor.</p><p>We arrived towards the end of its first day and proceeded downstairs into the nearly empty <em>#BUIDL Floor</em>. (The misspelling is intentional.) A small sign was propped up under the Wi-Fi password that read: THE INTERNET IS TERRIBLE… NOT MUCH WE CAN DO. Presumably most of the hackathon participants had cleared out, unable to work without a reliable internet connection. My coworker took a seat, determined to fulfill his mentorship duty despite the lack of in-person turn out.</p><p>Feeling a bit hungry, I went foraging for snacks in the adjoining <em>#BUIDL Bodega</em>. Hi-Chews, Red Vines, a bag of apples, and a few other snacks were scattered under a sign that read: Free for now. 2-3 items maximum.</p><p>This “bodega” also included a <em>Web3 Vending Machine</em> full of Liquid Death (expensive seltzer in craft beer cans) and Yerba Mate. The touch screen indicated these drinks could be purchased for either $3.99 or $0.00. Naturally, I tapped the free option, only to be informed that there was actually a minimum charge of $0.50. I was presented with a QR code to complete the transaction using Google Pay.</p><p>I went upstairs to track down the booth for Optimism, a Layer 2 scaling solution for Ethereum. They were giving away some awesome neon red socks. Unfortunately, their booth had a small handwritten sign posted that they were gone for the day.</p><p>But I only realized this after chatting with the people at the neighboring booth, confused by their neon red tablecloth. They were building a meta-aggregator. Aggregators automatically route orders to buy and sell tokens through exchanges that provide the best price for the user. A meta-aggregator aggregates the aggregators.</p><p>Still hungry, I purchased a hot dog for $7.95 using my credit card and ate it while watching a parody of a pop song performed on the main stage. The lyrics were replaced with rhymes about how Layer 2 scaling solutions reduce gas fees. “Saving on, saving on, saving on gas!”</p><p>After playing Dance Dance Revolution in the very well-curated arcade, I escalated my support request at a booth (related to IPFS, a decentralized file storage protocol) and went outside to smoke a joint in the parking lot.</p><p>Ready to leave, I found my coworker in a sea of empty seats, surrounded by a small group eagerly hanging on his words as he explained some of the nuances involved with creating derivatives using smart contracts.</p><p>While I heard many lament long lines and a lack of diversity at the conference, the developers that stuck around this late were mostly focused on whether the Wi-Fi had recovered so they could get back to work.</p><p>Pushing the bounds of what’s possible with applied cryptography is truly exciting. Though if you’re asked to explain why it’s so exciting at a cocktail party, it generally doesn’t go over well.</p><hr><p>Crypto is in an awkward adolescent phase.</p><p>So far, the main use case is financial infrastructure but the vast majority of people don’t understand how existing financial infrastructure works. Capitalism—and the financial industry that keeps it running—isn’t pretty. Technology that democratizes finance isn’t going to be particularly pretty either. Many who are “in it for the tech” aren’t comfortable with this.</p><p>It also just doesn’t work that well yet. To buy that hot dog, for example, I’d need to use Layer 2 blockchains to avoid high gas costs when processing the transaction. Otherwise, the system is effectively broken if the cost to send money is more than the money I’m trying to send.</p><p>Even still, there are many “L2s” so users need to know which chain they are transferring to and from. Decentralized solutions for cross-chain transfers and systems for abstracting balances across chains exist, but are still fairly primitive.</p><p>Also, on-chain transactions reveal the sender and recipients’ account balances and previous transactions to one another. There are privacy solutions that rely on innovations in cryptography to avoid this, but they’re heavily stigmatized and strangely seen as only useful for criminals.</p><p>This technology will inevitably mature thanks to contributions from universities, corporations, venture-backed start-ups, and anonymous teenagers using NFT profile pictures on Discord servers. And the use cases extend well beyond purchasing hot dogs into the arcane, rent-seeking aspects of the heavily centralized, global financial system we’re all dependent on.</p><p>Horrible consumer products and services from banks and unenforceable pre-internet rules will fade into irrelevance as freely available, open source options begin to really compete. The early adopters of this technology are mainly trading and investment firms. (They’re the ”power users”, in start-up parlance.) But even just thinking of the typical international traveller, why would they use a traditional foreign currency exchange if a meta-aggregator could consistently provide a better rate?</p><p>Especially compared to the polished, big budget crypto conferences that were put on a year ago at the height of the bull market, ETHDenver’s grit has stayed consistent. That’s part of its charm. Though of course the internet has become more reliable and efficient over the last few decades, there’s a persistent nostalgia for early internet <em>culture</em>.</p><p>ETHDenver has kept a similar magic about it, staying numb to changes in popularity and prices. No one can say for sure whether the “support public goods” ethos that feels embedded in its culture will ultimately make it into the technology that becomes commonplace, but it’s certainly not going away.</p><p>As the scammers on Twitter trying to pump the price of their shitcoins would say, we’re still early.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[Synthetix V3 is on Mainnet]]></title>
            <link>https://paragraph.com/@noahlitvin/synthetix-v3-is-on-mainnet</link>
            <guid>6vXzvK4rOhvEzW0kO7Zu</guid>
            <pubDate>Wed, 22 Feb 2023 21:20:50 GMT</pubDate>
            <description><![CDATA[Synthetix V3 has been successfully deployed on Ethereum Mainnet and Optimism after a thorough security audit from Open Zeppelin, Iosiro, and Macro. Though this is certainly a big milestone for Synthetix, it should be considered a beginning and not a conclusion. We’ll be progressively enabling functionality and rolling out upgrades from here, as Synthetix has too many real-world considerations that can’t be anticipated in a laboratory setting. First off, I want to to acknowledge the amazing wo...]]></description>
            <content:encoded><![CDATA[<p>Synthetix V3 has been successfully deployed on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://etherscan.io/address/0xefaca6fc316b3b2aa6c55ff5e02a62a85d4391e8">Ethereum Mainnet</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://optimistic.etherscan.io/address/0xefaca6fc316b3b2aa6c55ff5e02a62a85d4391e8">Optimism</a> after a thorough security audit from <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.openzeppelin.com/">Open Zeppelin</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://iosiro.com/">Iosiro</a>, and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://0xmacro.com/">Macro</a>. Though this is certainly a big milestone for Synthetix, it should be considered a beginning and not a conclusion. We’ll be progressively enabling functionality and rolling out upgrades from here, as Synthetix has too many real-world considerations that can’t be anticipated in a laboratory setting.</p><p>First off, I want to to acknowledge the amazing work of all the Core Contributors. Ensuring that Synthetix remained secure through the unprecedented market conditions of 2022, rolling out a new implementation of perpetual futures markets earlier this year (which has already seen <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dune.com/queries/1848603/3041536">over $300 million in volume</a> while averaging practically delta-neutral for liquidity providers), and getting Synthetix V3 to this point have all been major accomplishments. I’m constantly humbled by the talent of everyone contributing.</p><p>So, what is it exactly? Synthetix is a protocol (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3">a suite of open source smart contracts</a>) that can be deployed on blockchains and integrated with decentralized oracle networks to create an “API for liquidity”. This liquidity can be used by markets, implemented with smart contracts, to create derivatives collateralized by <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ethereum.org/en/developers/docs/standards/tokens/erc-20/">ERC-20 tokens</a>.</p><p>While use cases for crypto-native assets are still in relatively early stages of development, the utility of derivatives is undeniable. (The size of the market for derivatives is estimated in orders of magnitude upwards of the trillions.) The question is whether it’s possible to create derivatives that are more secure and scalable through engineering greater decentralization into the systems that power them—similar to the internet—rather than less.</p><p>This diagram provides a high-level overview of the Synthetix V3 architecture:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/da3eb830e514d7d904c2ff4bdb2bb33192bbf8bb2c97765ac9285593ff507fc7.jpg" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Zooming out, the migration plan entails the ability for the Synthetix V3 system to back the Synthetix V2 system via the “legacy market”. Liquidity providers in the V2 system will be able to drop their position into the V3 system with a single transaction and continue to collateralize the existing spot synths and perpetual futures markets.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/717aab3e971f3fe820e4a585522bccb557b10c71460dfe9cb2bdbcdd0f656104.jpg" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>The V3 deployment does not have any markets attached to it yet, so currently its primary functionality is generating a collateralized debt position as a dollar-denominated stablecoin that will be used in integrated markets. We can begin to deploy tooling and analytics related to debt positions immediately. The legacy market has completed audit and our spot market implementation will enter audit tomorrow. Since Perps V2 has shipped, development will begin on perpetual futures markets integrated directly with V3. Synthetix’s governance, Core Contributors, and broader community are considering the best sequencing and timeline for the roll out of these markets.</p><p>In addition to markets, cross-chain functionality and scaling will become a focus of the Core Contributors in future upgrades of the V3 core system. We’re prepared to integrate with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/cross-chain">Chainlink’s CCIP</a> for cross-chain stablecoin transfers and have already completed some successful transfers across testnets. Ideally, we will be able to implement a solution for cross-chain pool synthesis (like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-165/">that of V2</a>) by relying on an <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-3668">ERC-3668</a> compliant solution for cross-chain reads. This, paired with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com/">our deployment tooling</a>, will allow us to create a layer of liquidity that spans across an arbitrary number of chains (including L1s, L2s, L3s, and appchains).</p><p>As we prepare to open up the system for integrators, you can start building right away. Use the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-sandbox">Synthetix Sandbox</a> to spin up a local development environment for front-end or smart contract development. You can build an integration with our <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/Synthetixio/synthetix-v3/tree/main/markets/spot-market">spot market implementation</a> or build your own market implementation for spot synths, perpetual futures, insurance, sports betting, options, or anything else. You can also build integrations with the <code>setPoolConfiguration()</code> function to automate how a pool should distribute its liquidity across markets. Liquidity provisioning among pools can be automated with the <code>delegateCollateral()</code> function. See <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://snx-v3-docs.vercel.app/">the documentation</a> for more information.</p><p>If you’re building on Synthetix V3, tag me in the #dev-portal channel on the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discord.com/invite/AEdUHzt">Synthetix Discord server</a> or find me at ETHDenver. I’m excited to see what creativity will come from the DeFi community.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[Synthetix Update]]></title>
            <link>https://paragraph.com/@noahlitvin/synthetix-update</link>
            <guid>Lf4tarvRXjdGno2WdV8n</guid>
            <pubDate>Fri, 18 Nov 2022 16:34:41 GMT</pubDate>
            <description><![CDATA[With the holiday season upon us, chaos ripping through the crypto industry, and Synthetix V3 entering audit, I thought it might be beneficial to summarize my perspective on where Synthetix is right now and where it could be going. Everything included here is my personal opinion. I don’t represent other Core Contributors or any of the DAOs that govern the protocol. Developments in DeFi and my opinions are rapidly evolving, so this should be treated as a snapshot. Currently, most efforts among ...]]></description>
            <content:encoded><![CDATA[<p>With the holiday season upon us, chaos ripping through the crypto industry, and Synthetix V3 entering audit, I thought it might be beneficial to summarize my perspective on where <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://synthetix.io">Synthetix</a> is right now and where it could be going. Everything included here is my personal opinion. I don’t represent other Core Contributors or any of the DAOs that govern the protocol. Developments in DeFi and my opinions are rapidly evolving, so this should be treated as a snapshot.</p><p>Currently, most efforts among the Core Contributors are focused on the upcoming launch of Synthetix V3. We’re on track to kick off the migration process in January. Outside of this, we’re rolling out improvements to the spot markets (optimized for cross-asset swaps) and perpetual futures markets, as these are both proven revenue drivers for the protocol.</p><p>For the uninitiated, Synthetix can be confusing. I’ve attempted to explain this “derivatives liquidity protocol” in <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mirror.xyz/noahlitvin.eth/g4wfHTI0go6I71WZo7MX53p21zZ5dn6zVUbG2Ua0uBA">a previous post</a>. In short, Synthetix is decentralized infrastructure that allows for the creation of crypto assets that track the value of other assets (like dollars, other currencies, commodities, and anything else with a price feed). This is a more ambitious project than most “DeFi primitives” and it involves many components.</p><h2 id="h-stablecoins" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Stablecoins</h2><p>Crypto assets which track the price of dollars are referred to as stablecoins. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://makerdao.com/">MakerDAO</a> is one of the first attempts at the creation of a decentralized stablecoin where a collateralized debt position can be created with ETH, represented with the DAI token. To address scalability issues, DAI is now partially collateralized by wrapping USDC, a centralized stablecoin.</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.liquity.org/">Liquity</a> is a protocol that issues the LUSD stablecoin and operates on a similar principle as MakerDAO. With an efficient liquidation mechanism, governance minimization, and issuance fees rather than interest, this was a significant innovation over MakerDAO, though it suffers from some scalability issues as well.</p><p>Synthetix’s sUSD stablecoin is partially collateralized with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-190/">wrapped LUSD</a> to support its own scalability. Synthetix’s governance <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-210/">rejected a proposal to wrap DAI</a> due to its lack of decentralization. This was hotly debated. Many who rejected the DAI proposal subsequently felt vindicated during the events surrounding OFAC’s sanction of the Tornado Cash smart contracts, where the possibility of DAI’s censorship suddenly went from a concern for conspiracy theorists to a serious consideration.</p><p>A crucial feature of Synthetix V3 is that it’s collateral agnostic. Governance will be able to set risk parameters tuned to various collateral types. With a liquidations mechanism as efficient as Liquity’s, the protocol should be able to offer stablecoins backed by ETH with similar collateralization requirements, but without an issuance fee. (Liquidity providers in Synthetix are instead incentivized with market performance, like exchange fees.) Synthetix is also able to leverage markets that are more tightly coupled to the core system to increase stablecoin scalability in ways that Liquity cannot.</p><p>Put simply, building a scalable decentralized stablecoin is a core challenge that Synthetix is addressing. We can’t really have decentralized finance without one.</p><h2 id="h-derivatives-markets" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Derivatives Markets</h2><p>Similar to how Synthetix can be understood in comparison to decentralized stablecoin projects, it is also often compared to various protocols focused specifically on building perpetual futures markets. A key differentiator is that Synthetix is primarily focused on building a robust liquidity provisioning protocol that can be used with any type of market (including spot, options, insurance, and anything else that can be implemented with smart contracts). The Synthetix community has also traditionally put a much greater emphasis on decentralization and censorship-resistance than other protocols.</p><p>For instance, some perpetual futures market implementations rely on their own off-chain oracles, but are announcing plans to use <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.chain.link/low-latency-oracle-solution/">a new oracle system</a> we designed with Chainlink. Many are also dependent on USDC. If Synthetix V3 is successful, it should be an obvious choice to use Synthetix for liquidity provisioning and remove this dependence on a centralized stablecoin.</p><p>Synthetix’s Core Contributors plan to continue iterating on perpetual futures markets built on our infrastructure. Our roadmap includes more innovative and robust financial mechanisms than implementations currently in use. But, perhaps more importantly, we can leverage markets more tightly coupled with the core system to solve scalability and cross-chain challenges. For example, an ETH perpetual futures market could <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-256/">accept ETH and issue an equivalent value of stablecoins</a>. We might also leverage synthetic assets to distribute collateral from socialized liquidations across chains.</p><p>In addition to collateral agnosticism, a crucial feature of Synthetix V3 is greater composability and permissionless functionality. A goal of the architecture is to allow anyone to build a custom market implementation, register it with the system, and then have pools of liquidity in the Synthetix protocol opt into providing it with credit. Our market implementations are being constructed as “factories”, where end users (even through a simple web UI) will be able to deploy new assets by specifying a price feed, fee structure, and other configurable parameters.</p><p>Ultimately, the creation of markets will become trivial. The valuable, difficult problem that needs a solution is scalable decentralized liquidity provisioning.</p><h2 id="h-scaling-cross-chain" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Scaling Cross-chain</h2><p>The roadmap for Ethereum involves end users interacting with a variety of layer two scaling solutions (L2s) like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.optimism.io/">Optimism</a> instead of mainnet. Unfortunately, this introduces various complexities pertaining not only to user experience and security, but also liquidity provisioning.</p><p>Synthetix is deployed to Ethereum’s mainnet and Optimism. The protocol currently solves the problem of fractured liquidity with the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-165/">debt pool synthesis</a>, an oracle that that effectively reports the aggregated credit and debt from both networks to both networks, such that collateral on one network can back the debt on another. This is the only major DeFi protocol with such a solution as far as I know.</p><p>Cross-chain plans are under development for Synthetix V3, which will become a top priority after the migration is underway. The current draft proposal entails a system that will rely on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/cross-chain">Chainlink’s CCIP</a> (which is really “CCIP Write”) to synchronize configuration across chains. It also proposes a system that heavily relies on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-3668">EIP-3668</a> (CCIP Read) to read cross-chain data on-demand, similar to the oracle system referenced above. This will not only allow different sets of pools to be synthesized across chains, but also resolve some scalability issues pertaining to gas usage.</p><p>For end users, this will unlock a new paradigm for UX. Dashboards can display aggregated values across chains to users, completely abstracting cross-chain considerations. When a user decides to take an action (e.g. provisioning liquidity to a pool), a separate dialog can queue the necessary transactions on various chains to achieve the desired outcome, similar to an order router.</p><p>Further, the ability to scale the protocol is closely coupled with the ability to rapidly iterate. Synthetix was a very early DeFi protocol which has been highly innovative. While leading the way with some aspects of smart contract development (e.g. many consider the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://solidity-by-example.org/defi/staking-rewards/">Staking Rewards contract</a> to be one of the most forked smart contracts in existence), the complexity of the project and infancy of existing tooling early on has led to some non-trivial technical debt.</p><p>The Core Contributors are taking V3 as an opportunity to start fresh. The <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://youtu.be/URxPvAaT7vE">proxy architecture</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://usecannon.com">deployment tool</a> we’ve developed should allow iteration orders of magnitude faster than before and make it seamless for ecosystem partners to develop integrations as well. Between the difficult work involved with improving the existing V2 codebase and the innovation occurring in the V3 codebase, I’m constantly impressed by the quality and pace of the engineering work being completed by fellow Core Contributors (especially given how decentralized the organization is itself).</p><h2 id="h-looking-forward" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Looking Forward</h2><p>In light of recent events, it has become apparent that the only serious path forward for consumer protection—in a world where financial institutions can simply operate under the most permissive political jurisdictions—is to build truly decentralized and transparent financial infrastructure. Adoption will be driven by solutions to the engineering problems that enable a user experience rivaling that of centralized services. This won’t happen overnight, but it will happen.</p><p>Wallet and trading apps are largely there. The most critical layer of the stack is a scalable, truly decentralized derivatives liquidity protocol that enables exposure to off-chain assets. This will allow DeFi to have real utility.</p><p>Check out the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://v3.synthetix.io">Synthetix V3 prototype</a> and provide feedback in the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discord.gg/FxCPK24zBT">#synthetix-v3 channel on Discord</a>. For more details, check out this <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/i/spaces/1OyKAVRwDlNGb">Twitter Space</a> and review the (frequently updated) <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/all-sip/">draft 300-series SIPs</a>.</p><p>Onwards. ✌️</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
        <item>
            <title><![CDATA[What is Synthetix?]]></title>
            <link>https://paragraph.com/@noahlitvin/what-is-synthetix</link>
            <guid>lf0T1apZny0yQ4Mj0lCV</guid>
            <pubDate>Thu, 07 Jul 2022 19:23:43 GMT</pubDate>
            <description><![CDATA[Since joining Synthetix as a core contributor, I’ve been asked to explain the protocol many times by people with varying understandings of finance, software engineering, crypto, and DeFi. Synthetix is addressing a fairly specific challenge: the creation of derivative financial assets on Ethereum (and compatible blockchains). This is my best attempt to outline some of the protocol’s history, current challenges, and long-term goals without assuming the reader has any context. It’s not comprehen...]]></description>
            <content:encoded><![CDATA[<p>Since joining <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://synthetix.io/">Synthetix</a> as a core contributor, I’ve been asked to explain the protocol many times by people with varying understandings of finance, software engineering, crypto, and DeFi. Synthetix is addressing a fairly specific challenge: the creation of derivative financial assets on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ethereum.org/">Ethereum</a> (and compatible blockchains). This is my best attempt to outline some of the protocol’s history, current challenges, and long-term goals without assuming the reader has any context. It’s not comprehensive and things are rapidly evolving, so I’d recommend doing your own research if you find any of this interesting.</p><h3 id="h-creating-synthetic-assets" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Creating Synthetic Assets</h3><p>The story of cryptocurrency typically starts with Bitcoin, a decentralized blockchain which tracks a ledger of bitcoin balances. (This is an alternative to a centralized server owned by an entity with the power to manipulate it.) Ethereum is similar to Bitcoin, but rather than only tracking a ledger, it tracks the state of an entire computer. This computer can store and run code called smart contracts. Smart contracts can implement tokens, exchanges, lending agreements, and more. Suites of smart contracts that perform financial tasks are referred to as Decentralized Finance (or “DeFi”) Protocols. Find statistics for popular DeFi protocols on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://defillama.com/">Defi Llama</a> and example code in the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://solidity-by-example.org/">DeFi section of Solidity By Example</a>.</p><p>Put simply, Synthetix is a DeFi protocol for derivatives. A main function of the protocol is to create tokens that track the value of price feeds. This is exciting, as this provides all of the benefits of crypto (transparency, trustlessness, composability, permissionlessness, self-custody, etc.) to any financial asset, not just crypto-native assets. Similar to how the internet democratized access to information and publishing, DeFi—with a robust derivatives protocol—could do the same for the financial system.</p><p>To understand how Synthetix works, you can start by understanding <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.liquity.org/">Liquity</a>, a protocol similar to the more popular <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://makerdao.com/en/">MakerDAO</a>. Anyone can use this protocol by providing ETH as collateral for a loan of LUSD stablecoins (i.e. tokens that represent one dollar of value). For example, you might deposit $150 worth of ETH into Liquity and receive 100 LUSD. If the value of the ETH you deposited drops below $110, your ETH is seized (i.e. liquidated) and you keep the LUSD. Otherwise, you can return 100 LUSD to the smart contract and withdraw the ETH that you deposited.</p><p>At this point, it might seem like a minor update to allow these tokens to be traded into denominations other than a dollar. You could just add an exchange function that trades the stablecoin into another token (e.g. synthetic euros) at an exchange rate determined by a price feed reported by an oracle service like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/">Chainlink</a>. If only it were that simple!</p><h3 id="h-combatting-front-running" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Combatting Front-running</h3><p>The first main challenge that faces the protocol is front-running. With multi-second block times on Ethereum, it’s possible for bots to anticipate upcoming price changes before they’re reported on chain and trade accordingly. This effectively generates risk-free yield at the expense of stakers. (Stakers are users who provide collateral to the system and earn fees when synths are exchanged.)</p><p>The first major, successful solution to this was <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-37/">fee reclamation</a>. This is a system where a user can execute a trade, but they must settle the trade minutes later, at which point a fee or rebate is applied. Though this solves the issue, it breaks composability. In other words, with fee reclamation, a smart contract cannot execute an exchange and then immediately move the received assets elsewhere (as a transfer, deposit, sale, etc.).</p><p>Another solution for front-running is a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-184/">dynamic exchange fee</a>. This adds a fee that increases during times of high market volatility. With dynamic exchange fees, the yield opportunity for front-runners is drastically decreased as a significant percentage of their profit is lost to this fee (which is paid out to stakers). A drawback to this solution is that traders who are not front-running are also exposed to the fee during moments of high volatility.</p><p>Exchanges without fee reclamation (referred to as atomic swaps) were <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-120/">introduced</a> and later <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-198/">improved</a> to take into account the exchange rate of like-assets on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://uniswap.org/">Uniswap</a> when possible and otherwise ensure a large enough base fee is set for assets with relatively low volatility, like foreign currencies.</p><p>Thanks to atomic swaps, Synthetix was able to regain composability. It has since been integrated into order routers, like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://1inch.io/">1inch</a>, which find the cheapest path for executing trades. Because Synthetix can fill orders without slippage (unlike Uniswap and similar exchanges), the routers often select Synthetix for large orders where slippage would otherwise be very large. For instance, a large trade of ETH to USDC may be routed first from ETH to sETH via <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://curve.fi/">Curve</a> (an exchange similar to Uniswap, but optimized for like-assets), then exchanged from sETH to sUSD on Synthetix, and finally exchanged from sUSD to USDC on Curve. Recently, stakers have been earning hundreds of thousands of dollars in daily fees largely due trades like these, referred to as cross-asset swaps.</p><h3 id="h-maintaining-the-peg" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Maintaining the Peg</h3><p>It is crucial for the protocol that synthetic assets continue to trade 1:1 with like-assets. For example, 1 sUSD should always be tradable for 1 USDC, 1 ETH should always be tradable for 1 sETH, etc. This is called maintaining the peg.</p><p>This is typically solved with arbitrage. For example, if sUSD were trading below the peg (meaning that 0.97 sUSD were trading for 1 USDC), an arbitrageur could use USDC to buy the discounted sUSD, and then use this sUSD to exchange for other synthetic assets because the Synthetix protocol always treats sUSD as worth $1. This increases demand for sUSD relative to USDC, which restores the peg, and the arbitrageur was incentivized with profit.</p><p>If sUSD trades above the peg, that means there’s essentially a shortage of sUSD. This would incentivize users to stake additional collateral into the system to mint sUSD and sell it for USDC. In practice, this isn’t always sufficient, as providing the collateral to properly back the newly minted sUSD may not be worth the arbitrage opportunity.</p><p>To improve the situation, Synthetix introduced wrappers for <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-112/">ETH</a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-182/">ERC-20 tokens</a>. This allows users to provide the protocol with like-assets to back and mint an equivalent amount of a synthetic version of those assets. For example, you can “wrap” 1 ETH for 1 sETH directly. This has helped prevent synthetic assets from drifting over the peg, but complicated the process for stakers to hedge their position.</p><p>When stakers provide collateral to Synthetix, they assume <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-185/">shares of the total network’s debt</a>. In other words, they are responsible for backing the value of a percentage of all the synths that have been issued, not just those they mint or exchange. If the value of all the issued synths increases, stakers’ collateralization ratios (i.e. “c-ratios”) decrease and they may risk liquidation. To hedge against this, stakers can hold assets that mirror the composition of all the issued synths. In the past, the ETH wrapper has skewed the debt pool such that hedging would require taking a short position on ETH. Managing this can be difficult, so some stakers now use the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.synthetix.io/dhedge-debt-mirror-index-token/">dHEDGE Debt Mirror Index Token</a> to automate hedging. But even still, there are concerns around capital efficiency, as hedging increases the amount of capital required to provide the same amount of liquidity to the protocol, effectively decreasing the rate of return earned from exchange fees.</p><h3 id="h-perpetual-futures" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Perpetual Futures</h3><p>Ideally, there would be a way to create an on-chain derivative that is market neutral for stakers. (In other words, stakers could earn yield and hedging would be unnecessary.) Not only can perpetual futures achieve this, but they also allow traders to take long and short positions with leverage.</p><p>In a perpetual futures market, the aggregate amount of long and short positions are referred to as open interest. This open interest skews long or short relative to price reported by the oracle. A funding rate is applied, where the “heavier” side of the market pays a fee to the other. For example, if the market is skewed long, traders in a long position have to pay a fee to those in a short position. This creates an arbitrage opportunity that reduces the skew, meaning the stakers can become market neutral.</p><p>Synthetix successfully launched a beta of perpetual futures markets with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://kwenta.io/">Kwenta</a> which has since seen millions of dollars in average daily trading volume. An improved version of perpetual futures is already in development.</p><p>One downside to perpetual futures is that the positions are non-fungible, as there is a margin associated with each position and the funding rate must be applied to them. They can still be composable when represented as NFTs (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-721">ERC-721</a> tokens), but many protocols are only compatible with fungible (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-20">ERC-20</a>) tokens. It might be possible to build an ERC-20 token that represents a share of a fund that holds 1x long positions on a given perpetual futures market. The futures market may provide a special case for this, or it may be built as rebase token that effectively absorbs the funding rate. (Balances for all token holders would automatically grow when the market is skewed short and shrink when the market is skewed long.) With code optimizations, faster block times, and more liquidity, it is possible to decrease the funding rate (which could ideally make the adjustments to balances negligible).</p><h3 id="h-cross-chain" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Cross-Chain</h3><p>Meanwhile, the Ethereum ecosystem has made great progress with layer two scaling solutions (L2s), which allow for significantly faster block times and cheaper transactions while still relying on Ethereum’s base layer for security. (Ultimately, the plan for the Ethereum ecosystem is for all users to interact with L2s and have the L2s settle on L1.) For Synthetix, this means a reduced risk of front-running and the ability to build more elaborate financial instruments, like perpetual futures.</p><p>Synthetix was one of the first protocols to deploy on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.optimism.io/">Optimism</a>, an L2. A major challenge for DeFi protocols on new chains is limited liquidity. This is because the amount of staked collateral limits the amount of synthetic assets that can be created. To solve this, Synthetix implemented the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/sips/sip-165/">debt pool synthesis</a>. This allows collateral on L1 to back synths on L2 (and collateral on L2 to back synths on L1) by relying on a custom oracle provided by Chainlink.</p><p>With the debt pool synthesized and a cross-chain messaging solution, such as Chainlink’s forthcoming <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chain.link/cross-chain">Cross-Chain Interoperability Protocol</a> (CCIP), Synthetix will be able to implement synth teleporters. This will allow users to quickly transfer synths between any two chains that have a Synthetix deployment. Because sUSD, for example, is backed by the collateral collectively across all chains, the protocol could destroy the sUSD on the source chain, send a cross-chain message with CCIP, and create an equivalent amount of sUSD on the destination chain. Because the protocol is already dependent on Chainlink’s oracle network, this would allow for fast bridging of digital assets across chains with no additional trust assumptions.</p><h3 id="h-version-3" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Version 3</h3><p>Synthetix is currently working on a rewrite of the protocol for a new major version release. Given that Synthetix was founded in 2017 (long before “DeFi summer”), there’s a big opportunity for the protocol to be rebuilt with new abstractions on an ultra-modern tech stack. This will entail improved sub-systems for managing different types of collateral, parsing price feeds, fine-grained control over the delegation of credit provided by stakers, and more. This means greater composability, more robust cross-chain support, and the ability to more easily deploy new synthetic assets.</p><p>Also, Synthetix is a much more complex protocol than other “DeFi primitives” (at minimum, due to having critical off-chain dependencies) and it operates in a highly adversarial environment (given the strong incentives to develop bots and find exploits). Accordingly, Synthetix has relied on upgradeability proxies to strengthen the protocol over time. A large part of the V3 effort has involved building best-in-class tooling for managing upgrades and systems for governance to better control these upgrades.</p><p>Ultimately, Synthetix should be deployable on any EVM-compatible chain that has sufficient security and decentralization, as determined by governance. Market contracts could be deployed on these chains based on oracle availability, generating synthetic assets backed by collateral held across all Synthetix deployments. And, with the ability to teleport assets across chains, these synthetic assets would become fungible regardless of the chain being used. This will make Synthetix the backbone of DeFi across the entire Ethereum ecosystem.</p><h3 id="h-synthetix-ecosystem" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Synthetix Ecosystem</h3><p>Synthetix is already a crucial primitive in DeFi, serving as a back-end for trading platforms and as critical infrastructure that powers other protocols:</p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://kwenta.io/"><strong>Kwenta</strong></a> supports trading perpetual futures on all of the markets deployed by Synthetix. Cross-margin functionality, limit orders, and stop market orders are currently in active development.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.lyra.finance/"><strong>Lyra</strong></a> is an options trading platform which recently rolled out major improvements with their <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.lyra.finance/avalon-upgrade-primer/">Avalon upgrade</a>. Other protocols are being built on Lyra, like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.polynomial.fi/">Polynomial</a> which automates various derivatives strategies.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://thalesmarket.io/"><strong>Thales</strong></a> is a protocol for parimutuel markets. In addition to supporting markets for price action, it also powers prediction markets on protocols like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://exoticmarkets.xyz">Exotic Markets</a>.</p></li><li><p>A wide array of other protocols and products rely on various aspects of Synthetix’s smart contracts and synthetic assets including <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://1inch.io/">1inch</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://curve.fi/">Curve</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.paraswap.io/">Paraswap</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://yearn.finance/">Yearn</a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://aelin.xyz/">Aelin</a>, and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.dhedge.org/">dHedge</a>.</p></li></ul><h3 id="h-other-derivatives-in-defi" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Other Derivatives in DeFi</h3><p>While Synthetix is the largest derivatives protocol of its kind in the Ethereum ecosystem, there are many others working in this space:</p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dydx.exchange/"><strong>dydx</strong></a> is currently running on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://starkware.co/starknet/">StarkNet</a>, an Ethereum L2, and relies on an off-chain orderbook. This has limited its composability and decentralization. In an effort to decentralize further, it is moving to its own <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dydx.exchange/blog/dydx-chain">Cosmos-based L1 chain</a>, further limiting its composability with DeFi protocols in the Ethereum ecosystem.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.mirror.finance/"><strong>Mirror</strong></a> ran on Terra. It suffered <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://rekt.news/mirror-rekt/">a $92 million hack</a> prior to the collapse of the Terra/Luna ecosystem.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://perp.com/"><strong>Perpetual Protocol</strong></a> is a protocol specifically for perpetual futures markets, built on top of Uniswap. The protocol is currently deployed to Optimism.</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.dopex.io/"><strong>Dopex</strong></a> is focused on options and is deployed to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arbitrum.io/">Arbitrum</a>, an L2, as well as a few other chains.</p></li></ul><h3 id="h-synthetix-governance-and-community" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">Synthetix Governance &amp; Community</h3><p>Synthetix operates as a decentralized autonomous organization (i.e. DAO) with no legal entity which builds open source software to address the challenges outlined above.</p><p>The Spartan Council is elected by stakers of the SNX token. Spartan Council members vote on changes to the protocol, Synthetix Improvement Proposals (SIPs) and Synthetix Configuration Change Proposals (SCCPs). Core Contributors elect the Core Contributor Committee, which receives funding from the Treasury Council and oversees development of the protocol. Learn more about these organizations and Synthetix’s other governing bodies on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://synthetix.io/governance">Synthetix’s website</a>.</p><p>Synthetix is also supported by a very vibrant community of stakers, traders, software engineers, designers, DeFi researchers, risk analysts, and more. Governance meetings are held publicly on Discord and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://sips.synthetix.io/">anyone can propose a SIP or SCCP</a>.</p><p>If you’d like to contribute to Synthetix (or just find this interesting), join the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discord.com/invite/AEdUHzt">Synthetix Discord server</a>. Thanks to dbeal.eth, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/0xafif">0xAfif</a>, and others for reviewing earlier drafts of this post.</p>]]></content:encoded>
            <author>noahlitvin@newsletter.paragraph.com (Noah)</author>
        </item>
    </channel>
</rss>