Beware of scams impersonating Jump Trading Group. We only communicate through our official accounts.
- Firedancer
- Thinking
- Connect
Dual Flow Batch Auction
Jeff Bezaire
Aug 21 2025 _ 18 min read

Continuous Limit Order Books (CLOBs), while cornerstone market structures in traditional finance, face significant challenges on blockchains. Their reliance on continuous matching and time-priority opens the door to latency arbitrage, MEV exploitation, and adverse flow, driving up costs for market makers and natural-flow traders alike. We propose a better alternative, Dual Flow Batch Auction (DFBA), that offers a compelling alternative by eliminating speed-based competition and focusing instead on fair pricing, robust MEV protection, and efficient liquidity provision.
- For market makers, it reduces exposure to toxic flow and levels the playing field through uniform pricing.
- For natural-flow traders, it provides tighter spreads and deeper liquidity by addressing the structural inefficiencies that CLOBs bring to decentralized markets.
The architecture of DeFi exchanges has largely evolved in parallel with that of underlying layer 1 blockchains. New designs have emerged to better utilize the benefits of an underlying chain while seeking to address the constraints of existing designs:
- Automated Market Makers (AMMs): Uniswap proved that constant-function liquidity pools could serve in place of a traditional order book on-chain given the latter was not feasible. They unlocked 24/7 trading and permissionless, virtually limitless scaling of new asset listings yet paid for that breakthrough with high slippage at size, impermanent loss for LPs, and a proliferation of sandwich attacks and other aggressive MEV exploits.
- Batch Auctions: Protocols such as CoW Swap aimed to answer the MEV problem directly by settling trades in discrete auctions. Batching can help neutralize most sandwich attacks, but it introduces its own compromises: execution depends on external solvers, liquidity is fragmented across auction rounds and the single uniform clearing price blurs the true supply-and-demand curve. Its slow speed and user experience, however, made it less effective for more active traders.
- On-chain CLOB DEXs: Projects like dYdX and Serum tried to replicate the familiar central-limit order book on a blockchain. Price discovery improved, spreads tightened and professional market-maker flow arrived. Unfortunately, the features that make a CLOB efficient in traditional asset classes due to continuous matching and time priority translate into an on-chain latency arms race and continued proliferation of aggressive MEV such as frontrunning.
- Request For Quote (RFQ): Protocols like 0X(Matcha) and Hashflow, use competing off-chain quotes from designated market makers to help mitigate MEV and reduce order-flow toxicity. Price discovery is pushed off chain and market liquidity is opaque.
- Vault / Hybrid Models: More recent “vault-style” exchanges have pushed features off-chain, leaned on more centralized designs (or both) to take advantage of high performant chains (in many cases their own app-chains with a limited set of validators). They gain speed and deeper books, yet lean on centralized sequencers, preserve continuous matching and remain vulnerable to order-flow toxicity and MEV at the settlement layer though this is often less common than in previous generations.
- Prop-AMM/Dark-AMM: Private liquidity pools combining direct integration with aggregators, closed source smart contracts and oracle-based pricing to avoid adverse flow and provide tighter spreads. Integration with aggregators requires permissioning, liquidity is further fragmented, true market depth is dark because the pricing curves are closed source.
Each generation has been fit for purpose in its day, but none simultaneously delivers:
- robust MEV protection.
- price discovery and price improvement.
- a level playing field where all participants including liquidity providers compete on price and size rather than raw latency.
Enter the Dual Flow Batch Auction (DFBA). We propose a design that separates orders into maker and taker groups, matching them in two independent auctions every ~100 ms, with each auction filling everyone at a single fair clearing price. DFBA removes arrival-time privilege, blocks liquidity providers trading against each other and shifts competition away from nanoseconds to basis-points. Makers quote tighter because adverse selection is curtailed; takers receive fair, uniform pricing without paying the hidden tax of latency arbitrage or MEV reordering.
In this piece, we argue that an appropriately implemented DFBA inherits the best ideas of its predecessors including continuous liquidity, auction-based fairness and granular price expression while avoiding their worst trade-offs. Taken together, these design choices yield a market structure built not for bots or block producers, but for the “natural-flow” trader who is the reason any market exists at all.
Why Do Exchanges Exist and Who Do They Serve?
Before discussing the advantages offered by DFBA in detail, it is worth considering why exchanges even exist and who their customers are.
In every market, participants can be categorized into a variety of roles:
- “Natural flow” – traders coming to the market to trade for external economic reasons. This can include hedgers, investors, speculators, etc. Basically, anyone who has an external reason to come to the market and trade.
- Market Makers (aka Liquidity Providers) – Their trading is solely (or predominantly) done for the purpose of providing two-sided liquidity to the natural flow, without having external business reasons for the trading. Liquidity providers act as intermediaries between the natural flow buyers and natural flow sellers. They post buy orders at a slightly lower price than they post sell orders (the so-called bid-ask spread) and are looking to earn a portion of that spread by buying from natural flow sellers, holding the position for some time, and then selling to natural flow buyers.
- Scalpers – like market makers, scalpers do not have external economic reasons for their trading. Their trading is done by identifying orders resting in the market that are mispriced (according to their valuation model) and aggressively trading against them. Scalpers are a major source of “toxic” or “adverse” flow to market makers, as they only trade when market makers orders are mispriced.
These are broad generalizations, and many individual traders or strategies may be a combination of these types of trading. For example, a market maker’s strategy may involve scalping a competitor market maker’s quote if their pricing model updates and crosses the competitor’s old quote. Similarly, “arbitrage trades” could fall into either market making or scalping, depending on how they are implemented. A passive arbitrage strategy quoting on a secondary market based on what prices it could immediately aggressively hedge on the primary market would be considered market making, while a similar strategy that only trades aggressively on the secondary market when it could immediately hedge on the primary market would be considered scalping.
The market exists to serve the needs of the natural-flow traders. They are the only ones who have external economic purposes for trading, and they are willing to pay to get those trades done. Market makers compete to service this natural flow, providing a liquid market for the natural-flow traders to trade against without having to wait for a countering natural-flow trader to arrive. Scalpers trade against the market makers’ quotes when they are mispriced, ensuring the market price is in line with other markets.
For natural-flow traders, market quality is defined by three factors: the size of the market makers’ quotes, the bid-ask spread, and the accuracy of the midpoint price relative to the primary market. An accurate midpoint represents fair pricing; the bid-ask spread (plus fees) represents the cost of execution; and quote size determines how much volume can be traded at that cost.
Maker vs Taker
We will inherit the terms “maker order” and “taker order” from CLOBs but will generalize their meaning somewhat. A CLOB is actually a pair of continuous auctions (buy side and sell side), though it is not often thought of in this manner. When a “taker” buy order arrives at the exchange, it is auctioned against all the “maker” sell orders currently in the order book. If it is not fully filled, it is converted into a maker buy order and added to the buy side of the order book to be included in the next auction (conducted when the next taker order arrives). Taker buy orders are only matched against maker sell orders, and taker sell orders are only matched against maker buys. Which side is the taker and which is the maker is purely a function of arrival time. Whichever order arrived last is considered the taker. Market makers will typically want their orders to be the maker order in a CLOB match. Most CLOB exchanges even allow orders to be sent with “post-only” flags set, ensuring the order CAN ONLY be filled as the maker order. Natural-flow traders wanting prompt execution will typically want their orders to be taker orders. Exchanges provide additional order flags (IOC – Immediate or Cancel) to allow orders to ONLY fill as taker orders.
DFBAs will also adopt the terms “maker” and “taker” order, but with a more explicit distinction based on intent: maker orders are submitted by market makers aiming to provide liquidity, while taker orders come from traders willing to pay for prompt execution, usually natural-flow traders. Order flow is segregated by side and intent. Simultaneous dual auctions are conducted: taker buy orders match against maker sell orders and taker sell orders match against maker buy orders. Instead of maker/taker designation being assigned based on arrival time at the exchange, it is set based on the role and intent of the order sender as either providing liquidity or taking liquidity and seeking prompt execution.
Mechanics of a Dual Flow Batch Auction
- Collect buy and sell orders with limit prices for a fixed period of time. Unfilled orders from previous auctions are included
- Separate orders into two groups – maker orders and taker orders (multiple design choices exist for maker/taker assignment)
- Conduct two separate and simultaneous independent auctions:
- “bid auction” between maker-buy orders and taker-sell orders
- “ask auction” between maker-sell orders and taker-buy orders
- Within each auction, find clearing price that maximizes matched volume in the auction leaving no unmatched orders at better prices
- All orders that match in one auction fill at the same price – so there is a bid-auction fill price and fill quantity and a separate ask-auction fill price and fill quantity.
- If there is more order quantity on one side of the auction than the other, the orders on that side are allocated fills based on order price priority, and then pro-rata based on order-size if at same order price
- Repeat
Example: A Dual Flow Batch Auction with 100ms period
Suppose the following orders were submitted at the following times with the auction happening at time t=100ms:
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
|
|
10ms |
1 |
maker |
buy |
10 |
100 |
|
|
14ms |
2 |
maker |
sell |
10.01 |
100 |
|
|
34ms |
3 |
taker |
buy |
10.05 |
300 |
|
|
57ms |
4 |
taker |
buy |
10.03 |
100 |
|
|
70ms |
5 |
taker |
sell |
10.01 |
100 |
|
|
75ms |
6 |
maker |
buy |
9.97 |
1000 |
|
|
76ms |
7 |
maker |
sell |
10.03 |
1000 |
|
|
90ms |
8 |
taker |
sell |
9.9 |
500 |
|
|
95ms |
9 |
maker |
sell |
10.03 |
200 |
|
At the auction time (t=100ms) these orders would be matched as follows. First consider the bid auction, matching the maker buys with the taker sells (grouped by maker/taker and then sort by price):
|
time |
order # |
maker/taker |
side |
price |
quantity |
|
|
10ms |
1 |
maker |
buy |
10 |
100 |
|
|
75ms |
6 |
maker |
buy |
9.97 |
1000 |
|
|
time |
order # |
maker/taker |
side |
price |
quantity |
|
|
70ms |
5 |
taker |
sell |
10.01 |
100 |
|
|
90ms |
8 |
taker |
sell |
9.9 |
500 |
|
A bid clearing price of 9.97 matches the maximum volume with a fill quantity of 500. Fills are distributed like:
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
fill price |
fill quantity |
|
|
10ms |
1 |
maker |
buy |
10 |
100 |
9.97 |
100 |
|
|
75ms |
6 |
maker |
buy |
9.97 |
1000 |
9.97 |
400 |
|
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
fill price |
fill quantity |
|
|
70ms |
5 |
taker |
sell |
10.01 |
100 |
0 |
|
|
|
90ms |
8 |
taker |
sell |
9.9 |
500 |
9.97 |
500 |
|
For the ask auction, matching maker sells with taker buys:
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
|
|
76ms |
7 |
maker |
sell |
10.03 |
1000 |
|
|
95ms |
9 |
maker |
sell |
10.03 |
200 |
|
|
14ms |
2 |
maker |
sell |
10.01 |
100 |
|
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
|
|
34ms |
3 |
taker |
buy |
10.05 |
300 |
|
|
57ms |
4 |
taker |
buy |
10.03 |
100 |
|
An ask clearing price of 10.03 matches the maximum volume with a fill quantity of 400. Fills are distributed like this:
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
fill price |
fill quantity |
|
|
76ms |
7 |
maker |
sell |
10.03 |
1000 |
10.03 |
250 |
|
|
95ms |
9 |
maker |
sell |
10.03 |
200 |
10.03 |
50 |
|
|
14ms |
2 |
maker |
sell |
10.01 |
100 |
10.03 |
100 |
|
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
fill price |
fill quantity |
|
|
34ms |
3 |
taker |
buy |
10.05 |
300 |
10.03 |
300 |
|
|
57ms |
4 |
taker |
buy |
10.03 |
100 |
10.03 |
100 |
|
The outcome of this auction is a bid-fill price of 9.97 and bid-fill quantity of 500, an ask-fill price of 10.03 and ask-fill quantity of 400, with the following orders left in the book to participate in the next auction:
|
time |
order # |
maker/taker |
side |
order price |
order quantity |
|
|
70ms |
5 |
taker |
sell |
10.01 |
100 |
|
|
75ms |
6 |
maker |
buy |
9.97 |
600 |
|
|
76ms |
7 |
maker |
sell |
10.03 |
750 |
|
|
95ms |
9 |
maker |
sell |
10.03 |
150 |
|
New orders begin accumulating again from time=100ms to time=200ms, and then the next auction is held.
Note some of the differences between Dual Flow Batch Auction and a continuous matching CLOB:
- The arrival time of orders has no role in matching. There is zero priority given to speed/time within an auction.
- Since the clearing price is between the best maker order price and worst taker order price (inclusive), both makers and takers can get price improvement on their orders. In a CLOB, only taker orders get price improvement on their orders.
- In a CLOB, taker/maker designation is based solely on arrival time of orders (orders arriving before the match are maker orders, the order that is triggering the match event is the taker order). In the DFBA, maker/taker designation is independent of arrival time, and is determined by other factors (more on this later). In the example above, order #5 would continue to be a taker order in the next period’s batch auction even though it is resting in the book after the current auction.
- Makers can’t trade against other makers, and takers can’t trade against other takers.
- Fair pricing – everyone gets the same fill price in each auction
Why Batch Instead of Continuous?
The continuous matching and time priority features of the CLOB lead to latency arbitrage. When prices change on a remote venue (or in a highly correlated different product on the same venue), market makers attempt to cancel their existing orders and submit new ones at updated prices, while scalpers attempt to trade against those stale mispriced orders (so called “toxic” or “adverse” flow). As shown in (Budish et al https://doi.org/10.1093/qje/qjv027 ) the resulting latency arms race competition doesn’t ever reduce the amount of profit available through latency arbitrage, it only changes who makes that profit. In a well-designed economic market, competition between participants tends to drive their profits towards zero, while simultaneously increasing the quality of the product they are supplying. That is the virtuous circle of competitive markets. The continuous matching with time priority of the CLOB breaks that virtuous circle and the arbitrage profits earned by scalpers are unavoidably borne as losses by market makers. To compensate for this loss, market makers widen their spreads and reduce the size they are quoting. This directly results in a higher cost of trading for the natural-flow traders.
Continuous-matching time priority CLOBS face additional problems when implemented on blockchains. Unlike traditional markets, most blockchains allow the block producer to specify the ordering of transactions within the block (sequence priority rather than time priority, the same principle with the same economic consequences). This block producer capability leads to MEV, which then ultimately leads to wider spreads and higher costs of trading for natural-flow traders.
The structure of a market should be analyzed primarily regarding how it will impact natural-flow traders. If there is no natural flow in a market, market makers and scalpers trading against each other is a zero-sum game (negative sum after fees). The market makers and scalpers are NOT the market’s true customers, even though they may trade much of the exchange volume among and between themselves.
Why Dual Auctions?
A dual auction mechanism, where market maker bids are matched with market taker sell orders in one auction and market maker offers are matched with market taker buy orders in another, provides a more refined framework that explicitly respects the distinct roles of market makers and takers. This structure ensures that market makers compete with one another strictly based on price to interact with market-taker orders. By concentrating competition on pricing for taker flow, the system reinforces the market maker’s role as a focused liquidity provider, while takers benefit from clear and competitive execution. This setup enhances price discovery by creating a direct, efficient interaction between liquidity providers (market makers) and liquidity demanders (takers). A single-auction approach can fail to fully separate these roles, leading to less effective competition, diluted incentives for market makers, and less efficient pricing for the market overall.
Designating Maker and Taker
To conduct the Dual Flow Batch Auction, all orders must be designated either maker or taker orders. We have purposefully not prescribed the method for determining which orders are maker orders and which orders are taker orders. For the purposes of this paper the exact method used is unimportant and is an implementation detail that will depend on the circumstances of the exchange in question. Some examples of methods and where they might be used are:
- Designated market makers – the exchange explicitly whitelists one or more participants as designated market makers. This is a common structure in wholesale retail markets, where a broker arranges separate trading facilities with multiple liquidity providers and then routes customer orders to the LP with the best price on an order-by-order basis or on an aggregate statistical basis.
- Designated takers – exchange allows anyone to submit maker orders, but takers are whitelisted/blacklisted based on their historical trading volume, toxicity, etc.
- User designated – users are free to designate their orders as either maker or taker, with the default being taker. Assuming there is more maker order liquidity in each auction than taker order liquidity, then the choice of using maker vs taker on your order (if you are a natural-flow trader) entails the usual tradeoff between immediacy of filling (taker order) or better pricing but risk of not getting filled immediately. Fees being paid by one side or the other can also impact maker/taker preference, but exchange should generally be set up so that natural-flow traders should prefer taker orders.
Thoughts About Latency and Batch Auction Frequency
How fast SHOULD markets be?
In traditional markets, latency arbitrage enabled by continuous matching, time-priority CLOBs has led to a low latency arms race among market makers and scalpers. To provide fair access to all participants, exchanges have also pushed to make their platforms lower latency and hyper deterministic, providing colocation services and network cross connects that are length normalized between all customers to within a few feet of fiber. The result is exchange round trip times often measured in the 10s of microseconds and competition on latency sensitive trades demanding single digit nanosecond response times on the part of traders.
The same latency arbitrage enabled by the continuous matching, time-priority CLOB has also led to a hugely expensive low latency network arms race between HFT participants (both market makers and scalpers) to connect geographically separated markets. Private microwave wireless networks built to be as close as possible to a straight line between market centers chase single digit microseconds of latency reduction in moving pricing information around the world.
Competition over latency arbitrage never reduces the total profits available – it only changes who captures them (see Budish et al paper). The reduced latency DOES result in prices adjusting to external information faster (which has some value), but the adverse flow associated with the latency arbitrage results in wider spreads and higher trading costs for natural-flow traders. The key question then isn’t “How fast CAN we make trading?” but rather “How fast SHOULD we make trading?”. There is a point beyond which further latency reduction stops producing meaningful benefits for natural-flow traders (the true customers of the market).
One approach to answering that question is to ask, for a given latency, what fraction of the time the market is mispriced compared to what it would be if latencies were 0 (or as close to 0 as speed of light and other physics constraints allow) and how big that mispricing would be.
As a rough estimate, consider the Binance BTCUSDT perpetual swap. During a 24-hour period around 6/15/2025 (an arbitrary date), there were 35,242 buy trades executed at different prices from the previous buy. Assuming, as a worst-case scenario, that each price change reflects a permanent market move, this corresponds to an average of 2.45 seconds between buy-side price changes. The average size of these price changes was approximately 0.2 basis points. For a natural-flow trader, these changes are just price volatility, equally likely to work in their favor as against them, with an expected cost of zero. With 1-second latency, the market would be mispriced approximately 40% of the time, with an average mispricing of 0.08 basis points. Reducing latency to 100 milliseconds would lower this to just 4% of the time and 0.008 basis points—essentially negligible for natural-flow traders. Notably, the Binance BTCUSDT perpetual is a volatile, heavily traded product, seeing $3.9 billion in buy trades during that 24-hour period, with an extremely small tick size of $0.10 on a $104,000 product (less than 0.01 basis points). This makes this a very conservative estimate of the impact of latency on natural-flow traders.
A more theoretical way to estimate the impact of latency for an arbitrary product is to consider the market's latency as exposing natural-flow traders to the product’s price volatility over that time frame. This assumes that price movements during the latency period are uncorrelated to the direction of the natural-flow trader’s order. Given a latency L, the expected price volatility X of the product over that time period can be calculated as:

where V is the annualized volatility of the product. For example, on 6/15/2025, Bitcoin had an implied volatility of ~50%. Using L=1second, this formula yields X=0.9bps. For L=100ms, the volatility drops further to X=0.28bps.
For either one of these estimates, the average price slippage to the natural-flow trader is zero, and the price volatility associated with these latencies is tiny compared to their expected holding price return distribution. In short, for purposes of execution quality, reduction in exchange latencies significantly below ~1s hold little to no value for the natural-flow trader.
In addition to execution quality, user experience (UX) is another consideration when valuing exchange latency. When a natural-flow trader decides to make a trade on an exchange, it is clearly a better experience if they get the results of that trade sooner rather than later, even if the execution quality (in terms of price) is the same in both cases. How to value that timely response is perhaps difficult, but there is a very natural lower bound to where further reduction in latency will not have significant impact on user experience. The average human reaction time is ~250ms, with elite athletes potentially in the range of 120-200ms. Further latency reductions have no impact on perceived interactive user experience. 10s latency feels very slow. 1s latency isn’t bad but is noticeable. 100ms latency feels instantaneous. 10ms latency feels no different than 100ms…
Dual Flow Batch Auctions with an auction period of somewhere in the 100ms – 1s range satisfy all the latency/UX experience needs of natural-flow traders. From the perspective of an end user trading on a GUI, the trading experience will feel (and could even look) continuous.
Competing on Price and Size, Not Latency
There are several key features of the Dual Flow Batch Auction that we believe make it superior to a continuous time CLOB or other on-chain market designs.
- It is NOT an all-to-all market. Maker and taker designations are made independently of the matching algorithm. “Takers” here should be predominantly natural-flow traders, with makers competing to provide liquidity to the takers.
- Makers compete to service taker orders based on price and quantity, and NOT on latency. No race to get queue position on a newly formed price level. No getting picked off by scalpers when prices move. Makers with the best prices and showing the most size get the most fills against the natural flow orders.
- Dramatic reduction in adverse (toxic) flow against makers allows them to quote tighter spreads. Adverse flow is mitigated in multiple ways:
- Makers can’t match with each other
- Matching can only happen at the batch interval – not every time external prices change
- Even if a maker order does get left inside when prices move close to a batch interval, their stale priced order can get price improvement if the auction clears at a worse price than their order price. All maker orders fill at the same price and they aren’t penalized by getting an inferior fill price compared to the other makers orders
- If a very large taker order causes the auction clearing price to punch deeply into the book of maker orders (another potential form of adverse flow to the best priced maker orders), the inside maker orders will again get price improvement and fill at the auction clearing price rather than their order price.
- Makers are incentivized to show large size. Maker orders at the clearing price are filled pro rata based on maker order size. Coupled with price improvement for maker orders inside of the clearing price, this incentivizes makers to quote larger sizes even at their best inside price to compete with other makers for access to the taker orders.
- Volume matched on the exchange is mainly natural flow driven and represents the real economic activity being supported. Continuous CLOB volumes include lots of maker vs maker and scalper vs maker volume which can mask and distort the true size of the market and amount of natural interest and activity.
- Exchange fees can be structured in ways that more cleanly align with value brought to the natural flow. CLOB volume-based fee tiers are an imperfect recognition that maker-maker and scalper-maker volume on a continuous CLOB are a substantial part of the volume and must be “taxed” at a lower rate than natural flow to keep the market fluid and efficient. Volume is used as a proxy for segregating natural flow (where ALL exchange, market maker, and scalper revenue is ultimately sourced) from the maker-maker and scalper-maker volume which is a by-product of the continuous matching CLOB market structure. In the Dual Flow Batch Auction, all the volume is natural flow filling against market makers, so the exchange fees can be much more uniformly and fairly applied. Some examples of potential exchange fee approaches:
- Takers pay a fixed bps fee; makers pay no fees – yields tightest apparent spreads
- Takers pay no fees; makers pay fee and bake them into their spreads – retail friendly “no fee trading” – prices you see are prices you get
- Makers pay fees but instead of being fixed bps, is a fixed fraction of how far their order price is from midpoint. This incentivizes makers to quote better prices (their fill price is the auction clearing price, but their fees are based on their order price, so the best priced maker orders in the auction pay lower fees). Exchange captures fees proportional to both volume and spread (much like market makers do), which allows exchange revenue from even lower volume symbols in a natural and organic way.
The Dual Flow Batch Auction (DFBA) introduces a novel market structure designed to address the unique challenges of decentralized trading. By moving away from time-priority and continuous matching, DFBA encourages fair pricing, mitigates MEV, and fosters deeper, more efficient liquidity. This design benefits both market makers, who can confidently quote tighter spreads without fear of constant adverse flow, and natural-flow traders, who gain access to transparent, low-cost execution. With its focus on fairness and efficiency, the DFBA offers a compelling alternative for building blockchain-based markets that better serve their participants.
Share
Stay up to date with the latest from Jump_
More articles
Disclaimer
The information on this website and on the Brick by Brick podcast or Ship Show Twitter spaces is provided for informational, educational, and entertainment purposes only. This information is not intended to be and does not constitute financial advice, investment advice, trading advice, or any other type of advice. You should not make any decision – financial, investment, trading or otherwise – based on any of the information presented here without undertaking your own due diligence and consulting with a financial adviser. Trading, including that of digital assets or cryptocurrency, has potential rewards as well as potential risks involved. Trading may not be suitable for all individuals. Recordings of podcast episodes or Twitter spaces events may be used in the future.