Author: tompepinsky

  • Bailing Out Stablecoins

    This morning we are learning the details of the U.S. government’s decision to bail out depositors at Silicon Valley Bank, a failed bank that specialized in dealing with tech startups and venture capital. SVB got into trouble by going long on treasuries in a low interest rate environment. We are no longer in a low interest rate environment.

    Federal deposit insurance is, in my view, one of the true miracles of modern American capitalism. It is a remarkable tool for ensuring financial stability and it is one of the fundamental prerequisites for making fractional reserve banking possible. It protects small investors and savers at minimal cost to the American taxpayer.

    The bailout that was announced is much more than deposit insurance. The details aren’t yet fully known but if the headlines are accurate, all depositors will be made whole, regardless of whether their deposits exceeded the $250,000 FDIC limit. As it turns out, the vast majority of SVB deposits were far in excess of that. Much of that was in medium-sized business accounts used for rent, payrolls, and so forth.

    We can quibble about whether or not it is a good idea to bail out those institutions; I am skeptical that it is a good idea to do that as a blanket policy, especially given that many of those institutions have revenue streams that far exceed their cash on hand. But regardless of those cases, regulators should draw a line at bailing out one of SVB’s biggest individual depositors: the stablecoin known as USDC.

    USDC is run by Circle Internet Financial Ltd. As a stablecoin, it promises to maintain a 1:1 exchange rate with the US dollar. It has delivered on that promise during a period of economic growth, but it was forced to drop that peg when SVB collapsed.

    Why is that? Because Circle had $3.3 billion in reserves at SVB. That’s right: their holdings were 13,000 times the maximum amount ensured by the FDIC. Bailing out Circle, and with it USDC, requires serious money.

    What is the problem with bailing out this depositor? Why does it require special scrutiny? The answer is because the depositors who run stablecoins use their deposits differently than any other depositors do.

    Stablecoins are cryptocurrency. They promise to deliver all of the benefits of fiat currency without government interference or regulation. The idea is that the computer can use blockchain technology and algorithmic trading strategies to produce an alternative to the dollar without relying on the mechanism of a central bank. Stablecoins are interesting because they promise, in the best case scenario, to reproduce something that I can use already: a US dollar, which is firmly and irrevocably pegged to its own value already.* The benefit of a stablecoin like USDC over the US dollar is that it enables transactions beyond the reach of the normal payments system, which can be used for activities like buying illegal things, pretending that you’re beyond the reach of the U.S. government, and speculating about our techno-future.

    As it turns out, stablecoins are only stable if people believe that they are stable.** And people will only believe that they are stable if they are backed by something—that is, collateralized. That is what Circle’s SVB deposits were: a large pot of money that comprised some of its collateral to defend USDC’s value. When that money became uncertain, USDC had to drop its peg. It was no longer a stablecoin because its collateral was in question.

    The problem become clear when we put all of the pieces together: SVB was acting as a central bank for USDC. Ensuring Circle’s deposits means that the US government is now the central bank for USDC.

    Now, the politics that will follow from this promise to be very interesting. Crypto defenders will not want to notice that crypto got a government bailout to ensure its value. Crypto opponents might not want to acknowledge that crypto just got a big signal that it is too big to fail.

    The US government bails out financial institutions from time to time. And the Fed is our central bank, after all. But it does so in exchange for the ability to regulate those financial institutions, and to take ownership over their assets when their activities threaten systemic financial stability. That is what the US government should do now in response to USDC. Otherwise, the US government should allow USDC to try to use its algorithms to save itself, which is the whole point of stablecoins in the first place.

    Either the US government is the central bank that guarantees the value of USDC, or it is not. There is no third option.

    NOTES

    * This is a tautology, but it is on purpose.

    ** In the words of an old friend, decentralized algorithmic stablecoins are impossible. See more here. And here.

  • When AI Does Statistics For Us, Will We Know Any Better?

    There has been a lot of commentary about new and more powerful AI algorithms like ChatGPT, and how they will change how to write college essays, job applications, and so forth. I don’t think that enough people are paying attention to the fact that these AI algorithms can also write code.

    I am not a computer programmer or a coding expert. But I have noticed that ChatGPT can answer questions about statistical programming pretty effectively. I can ask it how to work with ggplot2, for example, and it helps me to avoid silly errors. I had the thought recently that it might also be able to help me write code in a programming language that I don’t actually know, like Python.

    Here is an example that I can imagine happening already. I have asked ChatGPT to write code for me. All I know is that I want to do logistic regression in Python using NumPy. I don’t know how to actually do this, but I typed the following into the prompt: Write code in Python to perform a logistic regression with a dataset named “data” and a dependent variable called “outcome” using numpy

    And here is what I got:

    import numpy as np

    from numPy import logistic

    # Split data into train and test sets

    X_train, X_test, y_train, y_test = train_test_split(data, outcome, test_size=0.2, random_state=0)

    # Fit the logistic regression model

    log_reg = logistic.LogisticRegression(C=1e5)

    log_reg.fit(X_train, y_train)

    # Make predictions on the test set

    y_pred = log_reg.predict(X_test)

    # Compute accuracy

    accuracy = log_reg.score(X_test, y_test)

    print('Accuracy: {}'.format(accuracy))

    A couple of remarks are in order. First, this code will work [EDIT: No it won’t. Needs more things to actually run. So long as you can figure out those,] if you need to do logits in Python, for whatever reason, you can just do them now. Second, this code is commented—it explains what the code is doing. (Automatic commenting is a very interesting computer science problem, one that AI is already being applied to.)

    Third and most importantly, though, this is not the only possible response to the prompt. It is a response that smuggles in a lot of implicit decisions, and even assumptions about the data that you have and the use that you imagine for them. By this I mean, not every logit model has prediction accuracy as the objective. This code, though, presumes that that is your objective.

    I came to this question as part of a conversation with some college friends about the future of the humanities, in response to the New Yorker essay that everyone is talking about. The idea is that people want marketable skills from college. But as this crowd of friends includes both professors like me and computer scientists with decades of professional coding experience, there was a deeper conversation about what sorts of marketable skills will still be marketable over a timespan of more than the next five years or so. What happens to coding-focused majors when computers can do lots of the coding themselves?*

    I’ll conclude with a reflection. On my one serious visit to Silicon Valley, I spent the day mostly drinking free club sodas and flavored kombuchas at a FAAMG headquarters and just talking to people. That was a special weekend for a lot of reasons. But what I remember most from those conversations were the hints that “the singularity” was coming: for them, that was the coding invention that put coders out of business. They used this to explain why their children were getting violin lessons and tutoring in French, which I thought was precious at the time because it reflected a level of privilege and possibility that seemed entirely out of reach for anyone who wasn’t in that part of our new tech ecosystem. Maybe they were right, though, and maybe all of us will need to wrestle with these implications.

    NOTE

    * I would be remiss if I didn’t acknowledge that in some ways, this is just the latest “get off my lawn” complaint about how technology is replacing understanding by automating what used to be done manually. I probably would know more about statistics if I had to use punchcards and code up an optimizer rather than just typing logit y x into Stata.

    I will happily concede this. But fast computers did put most people whose careers depended on punchcards out of business, so the analogy holds.