Doom scrolling?
Level up instead - new game drop on https://Arcade.Gov 🎮
10/100·CNeutral
n
news10h agonews
BAM vs. kcompactd: how we fixed small blocks with two sysctls
How we traced BAM small blocks from the leader window down to a memory-compaction daemon on the Linux host Authors: BAM Performance Team Summary In late September, about one in every 800 blocks built by BAM (Block Assembly Marketplace) came in under 7 million compute units. We call these small blocks (this is not a Solana-wide definition). The small block rate was low, but every small block is revenue a validator didn’t earn and blockspace the network didn’t use. Over two weeks we found and fixed time losses in five layers: block replay in the BAM node, the BAM scheduler, the memory allocator, Linux TCP congestion control, and the Linux kernel on the physical hosts that run our TEE VMs. All of these changes made a measurable difference. One change explains most of the drop in small blocks, and it was a kernel scan on the Linux host that slowed our TEE VMs for about 48 seconds out of every 80. This technical post covers the leads we chased, what each fix did and didn’t change, and the unexpected culprit. We want to give a special thanks to Alessandro Decina (@alessandrod) from Anza. Slowlana was a critical observability tool to identify where a small block lost useful leader time (replay/bank readiness, scheduling, or Turbine propagation) and validate fixes against normal slots to deliver the results presented in this post. Background: How Jito BAM builds a block Jito BAM runs inside an AMD SEV-SNP [1] confidential Trusted Execution Environment (TEE) Virtual Machine (VM), which we call the TEE VM. Each TEE VM has about 736 GiB of RAM and 119 vCPUs, and runs alone on a dedicated physical Linux machine, the host. The BAM node follows the chain itself: it replays every block to keep its own bank current, and it stays connected to each validator it serves. A leader gets four consecutive slots. During this investigation each slot was 250 ms long [2, 11]. For each slot, BAM works through three steps:
Bank handoff. The parent block’s shreds arrive, BAM’s replay executes and freezes the block, the next bank is created, and the bank for the leader’s slot becomes usable. Build. BAM runs an auction over pending transactions and bundles, then simulates the winners against speculative banks. Forward. BAM streams batches to the leader validator, which executes them while its slot is still open. All three steps share the same 250 ms. Time lost before the handoff and time lost during the build look identical from outside: a light block, or batches the validator rejects as OUTSIDE_LEADER_SLOT because they arrived after the targeted slot finished. A small block tells you that time ran out, but not where it went. Problem deep dive: late banks So we started at the bank handoff. We joined BAM’s build and forward logs, validator feedback, replay metrics and leader schedules into a per-slot timeline, and reconstructed the first four small blocks one by one. All four had the same shape. BAM made its first build 3.8–6.5 ms after the bank became usable and forwarded 5.1–14.1 ms after that. Building was fast in every case. The bank had arrived late.
Slow replay of the parent bank explained the delay. On our Frankfurt BAM node, we saw slot replay times of 415–602 ms, more than a full slot. In Singapore, one 5.9-second replay (4.8 s of it in program-cache work) created a backlog. The next leader rotation began while BAM was still catching up, so its first two slots were lost and the last two recovered. One fix we tried was more replay parallelism. Raising replay worker threads from 8 to 16 to 24 gave no improvement; the mainnet transaction load was long dependency chains. Replay had enough threads, but each one was running slow. That raised the question the rest of this post answers: what was slowing them down? Time Stealing Leads Profiling the BAM node turned up four types of stall. The first slowed replay directly. The other three cost time after the handoff. Each was a real cost worth fixing, so we’ll cover them briefly. 1. False sharing that slowed replay We questioned why replay inside the BAM node was slower than it should have been, even on capable hardware. Something else in the node was getting in its way. We found it in BAM's scheduling thread. While waiting for its leader slot, this thread checked the working bank about 3.1 million times a second, taking two read locks each time. A read lock looks harmless, but taking one still writes to memory, because it updates a counter inside the lock. Checking the bank's memory layout showed that those counters sat on the same cache lines as bank data replay reads constantly. Every time the scheduling thread took a lock, the CPU had to pull those cache lines away from the replay cores, often from a different CCX (a group of AMD EPYC cores that share an L3 cache). Replay then had to wait to pull them back. This is called false sharing: the two threads never touched the same data, but sharing cache lines was enough to slow replay down. We moved the lock reads to only the ticks that need them, and the slowdown went away.
2. Bank destruction on the hot path Our speculative banks store the speculative account state for the leader’s block. On slot transitions, we retire the speculative bank, freeing up tens of megabytes. Jemalloc, the memory allocated used by BAM, then returned those pages to the kernel with madvise, synchronously, on the main state machine thread. Inside a TEE VM, every discard can trigger TLB shootdowns across all vCPUs. One capture showed 366 MADV_DONTNEED calls costing 38.6 ms. We moved destruction to a bounded reaper thread, upgraded to jemalloc 5.3.1, and enabled background_thread:true [6] so allocator threads do the purging. 3. Auction teardown and pacing Wavefront, our Directed Acyclic Graph (DAG) based simulator, could wait on a straggling simulation long after its round stopped being useful. This could cause auction rounds to extend more than the intended time period and reduce the throughput. Teardown is now fenced and bounded to 5ms. Separately, a pacing latch checked only the input queue and not work already admitted to the DAG, so bundle work could resume while ordinary transactions were still unfinished. In one slot, 179 transactions sat in the DAG with only 9 executed, and the latch still reported that the round was on pace. 4. Linux BBR at the start of the leader window BAM streams batches to the validator over a TCP connection that uses Linux BBR (Bottleneck Bandwidth and Round-trip propagation time) congestion control [3, 4]. BBR paces sending from its own estimates of bandwidth and minimum round-trip time instead of reacting to packet loss. The connection is nearly idle between leader windows, and we found two kernel paths that could start the next window throttled: A sub-MSS ACK after idle could push BBR into PROBE_RTT, capping the congestion window at four packets for about 200 ms. A sub-MSS sent into an empty pipe could make BBR conclude that bandwidth had collapsed. We shipped a userspace workaround (padding the first batch to 3,000 bytes) and two patches to net/ipv4/tcp_bbr.c [5] in our TEE VM’s kernel. The first keeps BBR’s idle-restart guard in place until a fresh min-RTT sample arrives:
The second treats a send of less than one MSS into an empty pipe as app-limited, so the small first write isn’t mistaken for a bandwidth sample:
What fixing all four changed Every one of the four stall types was real, and every fix worked. When the scheduler fixes reached production on October 2, the longest Wavefront cleanup dropped from 65.7 ms to 5.9 ms, and main loop gaps over 5 ms went from 54 to zero.
But the fleet’s small-block rate barely moved. We had removed real stalls, and something else was still slowing every thread. The mysterious TEE VM slow hash rate Having followed the other leads to the end, we came across a pattern in a metric we couldn’t explain. TEE VMs emit Agave’s poh-service metric, the time the Proof of History (PoH) hash loop takes per hash. This metric, being CPU-bound, is expected to be flat. On the contrary, every TEE VM showed a square wave, alternating between a fast mode and a mode 7–17% slower. The slow mode typically lasted 45–55 seconds, then the fast mode about 32 seconds, and the cycle repeated around the clock. Nothing in the TEE VM’s workload ran on that cycle.
That surprised us. Our hosts pin every CPU to the performance frequency governor specifically to avoid throughput swings from frequency changes, so a 7–17% swing in vCPU speed shouldn’t have been there. Turns out the answer was outside the TEE VM, in the Linux kernel on the host side. QEMU backs the TEE VM’s RAM with a memfd, and the host kernel’s kcompactd daemon periodically tries to build contiguous free memory by isolating and migrating pages [7]. We had locked the TEE VM’s memory, and locked pages land on the unevictable LRU [8]. But unevictable doesn’t mean unmovable: with the default vm.compact_unevictable_allowed=1, the host kernel still tries to migrate them. So on every pass, the host’s kcompactd scanned about 191 million pages, essentially the whole 736 GiB TEE VM. It worked through them for 45–55 seconds, never completed a successful compaction, and backed off for 500 ms << 6 = 32 s before starting again. Each attempt went through the KVM MMU notifier and invalidated the TEE VM’s memory mappings. The TEE VM paid the full cost every cycle, and the host never got any contiguous memory out of it. The numbers lined up closely. We compared each host’s page-isolation rate with its own TEE VM’s slow-mode fraction over October 2–5, in 30-second intervals. On all ten hosts with PoH data, the two correlated at r = 0.94–0.99. Pairing a host with a different host’s TEE VM gave r ≤ 0.11. TEE VM memory size divided by the host’s average scan rate also predicted the cycle period on 28 of 30 hosts, with an average error of 1.8% and a worst case of 4.4%.
TEE VM memory was already locked with QEMU -overcommit mem-lock=on-fault [9], so the fix was two runtime sysctls on the host side [10]: vm.compact_unevictable_allowed=0, so locked pages are never isolated for compaction vm.compaction_proactiveness=0, so there is no background compaction pass On October 5, between 21:44 and 21:52 UTC, we applied the fix to all 15 warm-spare hosts. The 15 serving hosts stayed unfixed, which gave us a control group.
This canary proved the host’s scan was throttling the TEE VM’s vCPUs. The fixed hosts were spares, though, and weren’t producing blocks, so the canary couldn’t show that the throttling caused small blocks. For that we needed a different experiment. Results Proving causation on hosts that were producing blocks The slow mode is periodic, so it works as a natural experiment. On any unfixed host that was serving traffic, each block was produced during either a slow phase or a fast phase. Everything else is the same between the two: the host, the build, the validators connected to it, the time of day. If the slow mode causes small blocks, small blocks should pile up in the slow phase. We took the six unfixed hosts that served the most traffic from October 2 to 5. For each 5-second window, we classified the TEE VM as slow or fast using the midpoint between that host’s 10th and 90th percentile hash time. Then we placed each of 293,000 produced BAM blocks on that timeline.
The slow phase covered about 62% of the time and 63% of all blocks. It also held 89% of the small blocks.
A block built during a compaction pass was 4.8 times as likely to be small (95% CI: 3.4–6.9×). The effect showed up on every host individually, ranging from 2.3× on the mildest to 17× on the most affected. Fleet impact On October 6 we moved serving traffic to the warm spares, which had received the host-side fix the day before. Before the fix, their TEE VMs had run in the slow mode with a 9–12% PoH spread. After the fix that spread was about 1.2%, and hashing was about 9% faster overall.
The small-block rate fell by about 77%, from about one block in 800 to one in 3,600. The phase analysis predicts almost exactly that. Before the fix, fast-phase blocks were small 0.031% of the time. After the fix, everything runs in what used to be the fast phase, and the fleet came in at 0.028%. Removing the slow mode accounts for nearly the whole drop. What the other fixes did: Scheduler and allocator fixes: removed real tail latency and stopped BAM from slowing replay. They may have lowered small blocks too, but they shipped alongside host changes, so we can’t measure their share. Linux BBR fixes: closed a real throttling path, confirmed by a reproducer, with no visible change in the fleet small-block rate. Late-forward rejections (OUTSIDE_LEADER_SLOT): fell from 6.3–7.9% of validator responses to 4.4–4.6% from October 7, so more of each leader window is now usable. We started out hunting for a scheduler bug, and the largest single win turned out to be two sysctls on the host kernel. Comparison across clients With these improvements in place, we compared BAM’s block-packing performance against other clients, measured by the share of small blocks (under 7M CU) produced. We looked at the period before the initial fixes (Sep 16–29) and after they were finalized (Oct 9–20). In aggregate, the share of small blocks produced by BAM leaders fell from 0.1044% to 0.0325%, a 69% improvement. Over the same period, the rest of the cluster moved in the opposite direction: the non-BAM small-block share rose 73.7%, from 0.2911% to 0.5056%. As a result, the gap widened significantly. In September, non-BAM leaders produced small blocks at about 2.8x the rate of BAM leaders; by October, that rate was 15.6x.
Conclusion Every fix in this post started the same way: a per-slot timeline or a profile, a controlled test, then a before-and-after measurement in production. Four of those fixes removed real stalls inside BAM, but we couldn’t tie any of them to a measurable drop in small blocks. The change that mattered most was two lines of host config, outside the TEE VM entirely. We found it only because we kept measuring after fixing the obvious suspects, when the small-block rate still hadn’t moved much. There is still more work to do. About one BAM block in 3,600 still comes in small. Since writing this, we’ve been working on faster ingress, simulation, bundle filtering, and other performance improvements. What do you want us to write about next? Let us know by tagging @buffalu__ on x or in #validator-general in Discord. References AMD, “AMD SEV-SNP: Strengthening VM Isolation with Integrity Protection and More,� white paper. https://www.amd.com/content/dam/amd/en/documents/epyc-business-docs/white-papers/SEV-SNP-strengthening-vm-isolation-with-integrity-protection-and-more.pdf Anza, “Leader Rotation,� Agave validator documentation. https://docs.anza.xyz/consensus/leader-rotation N. Cardwell, Y. Cheng, C. S. Gunn, S. Hassas Yeganeh and V. Jacobson, “BBR: Congestion-Based Congestion Control,� ACM Queue 14(5), 2016. https://queue.acm.org/doi/full/10.1145/3012426.3022184 IETF CCWG, “BBR Congestion Control,� Internet-Draft draft-ietf-ccwg-bbr. https://datatracker.ietf.org/doc/draft-ietf-ccwg-bbr/ Linux kernel source, net/ipv4/tcp_bbr.c. https://github.com/torvalds/linux/blob/master/net/ipv4/tcp_bbr.c jemalloc manual, background_thread option. https://jemalloc.net/jemalloc.3.html Linux kernel documentation, “Page migration.� https://docs.kernel.org/mm/page_migration.html Linux kernel documentation, “Unevictable LRU Infrastructure.� https://docs.kernel.org/mm/unevictable-lru.html QEMU documentation, -overcommit mem-lock=on|off|on-fault. https://www.qemu.org/docs/master/system/invocation.html Linux kernel documentation, /proc/sys/vm: compact_unevictable_allowed and compaction_proactiveness. https://docs.kernel.org/admin-guide/sysctl/vm.html Solana, “Reduced Slot Times� (SIMD-0525). https://solana.com/upgrades/reduced-slot-times
Methodology: small block = heartbeat-attributed, BAM-produced block below 7,000,000 cost units, from bam.enriched_block_stats. Phase classification uses poh-service total_hash_time_us / hashes in 5-second windows. One validator that produced only small blocks (68 of 68) from October 2 to 5 is excluded as a validator-side outlier. Confidence intervals are Poisson.(Historical earnings: For 2026Q2 (period ended 2026-06-27), AMD reported basic EPS of 2.26, diluted EPS of 2.22, net income of USD 3.680 billion, and revenue of USD 21.789 billion.
Consensus expectations: For 2026Q3, consensus expects EPS of 1.9346 and revenue of USD 13.078 billion.)
10/100·CNeutral+23
n
news11h agonews
Eyes on the Market: At Cost Basis
BTC dropped below $80K on Saturday. BTC fell 1.98% to $80,386 after a low of $79,107, and ETH fell 2.64% to $2,344. Thursday’s selloff erased Wednesday’s run to $84,856.
Oil hit a six-month high. Brent closed Friday at $116.72, its highest close since April 29, as Gulf attacks reached Saudi energy infrastructure. Gold fell 4.31% to $4,004.
The Fed is priced to hold on Wednesday. Polymarket puts a hold on October 28 at 95%. October hike odds peaked at 48% after CPI on October 14 and now sit at 6%.
Treasury companies slowed down. Strategy bought 267 BTC and spent $193.1M buying back STRC ahead of its October 28 shareholder vote and MSCI’s November 11 list.
Liquidations hit both sides. Shorts lost $498.1M as BTC rallied into Wednesday, then longs lost $1.23B from Thursday to Saturday.
IBIT carried BTC ETF flows. BTC ETFs took in $301.2M. IBIT drew $565.7M while every other fund combined lost $264.5M. In October so far, IBIT sits at +$755.2M and the rest at -$1,068.7M.
ETH ETFs posted a fourth straight outflow week. They lost $220.7M this week and $1.22B since September 28, erasing 75% of the year’s inflows.
Oil Up, Everything Else Down
BTC opened Monday at $82,007 and closed Sunday at $80,386, down 1.98%. ETH fell 2.64% to $2,344. Total crypto market cap fell 2.73% to $2.77T.
BTC peaked at $84,856 on Wednesday and closed the day at $84,613, up 3.18% on the week, with ETH up 3.45% to $2,491. Thursday erased both gains as tanker attacks near Hormuz sent Brent higher and Big Tech sold off. From Wednesday’s close, BTC fell 4.08% and ETH 4.45%, while the Nasdaq Composite dropped 2.60%, its worst session since June. BTC fell 1.6 times as far as the Nasdaq that day. BTC broke below $80K on Saturday to a low of $79,107, under Glassnode’s estimated $80.2K average cost basis for ETF and treasury-company holders. It lost 1.14% from Friday to Sunday, and ETH lost 2.28% over the same stretch.
Equities fell with crypto, but by less. The S&P 500 was down 0.71% and the Nasdaq Composite 1.34% by Sunday on weekend futures, after closing Friday’s cash session down 0.97% and 1.67%. Brent peaked at $116.72 on Friday and finished the week up 4.93%. Gold fell 4.31% to $4,004.
Events of the Week
Oil hits a six-month high
Houthi attacks hit Saudi targets, including energy infrastructure, and about seven tankers were reported damaged near Hormuz by Thursday. On Wednesday the State Department ordered staff out of Saudi Arabia and cut staffing in Jordan, Lebanon, Qatar and the UAE. Brent closed Friday at $116.72, its highest close since April 29.
The 10-year fell from 5.13% to 4.96% on Thursday, its largest one-day drop since March 2023, then closed Friday back at 5.00%. The 20-year auction cleared at 5.469%, up from 5.420% at the prior auction.
A hold is expected
Polymarket puts a hold at the October 28 FOMC at 95%, with hike odds at 6%. They spent most of the month higher. September payrolls set a low starting point, at 29,000 against 90,000 expected, with unemployment up to 4.2%.
The October 14 CPI print then took hike odds from 22% to 48%, and they settled near 30% within a day. On October 15, PPI beat forecasts and odds still slipped, as New York Fed President John Williams said he had no reason yet to believe the Fed would need to do more. They fell to 13% after Warsh spoke at the IMF and World Bank meetings in Bangkok, where he declined to comment on the October 27–28 meeting and said only that the Fed will deliver price stability. December remains the most likely meeting for a hike, with odds sitting at 77%.
Treasury companies slow down
Strategy bought 267 BTC for $22.1M, spent $193.1M buying back STRC preferred shares, and raised its buyback authorization from $2B to $3B. The STRC shareholder vote is on October 28, and MSCI publishes its index decision on November 11. Strive bought 1,223 BTC for about $100M.
Elsewhere:
BlackRock filed for a buffered BTC ETF.
Franklin Templeton’s BTC dividend-reinvestment ETFs take effect October 27.
Standard Chartered agreed to acquire Zodia Custody.
Germany’s Sparkassen opened crypto trading.
Comment periods closed for the Fed’s GENIUS Act rules on October 19 and the SEC’s Regulation Crypto proposal on October 20.
Polymarket gives Democrats a 92% chance of winning the House and 66% for the Senate ahead of the November 3 midterms, which open the lame-duck window for any second attempt at CLARITY.
Volatility, Positioning and Leverage
BVIV fell 4.8% from 40.76 to 38.82 by Tuesday’s close as BTC rallied, the weekly low. It then rose with the selloff, and closed higher on every day - but Friday - adding about 2% on Thursday and finishing Sunday at 41.13, up 0.9% on the week and 6.0% off the low. That close is within a tenth of the October 14 high, the highest daily close of the past month. Over the month, BVIV is up 10.8% from about 36.9.
Aggregate futures open interest is $138.3B, against $140B last issue, down 1.2%. Coin-denominated BTC open interest has climbed from a low of 619K BTC on October 12 to 671K, still below its average for the year.
Liquidations hit both sides. As BTC rallied to Wednesday’s high, $498.1M of shorts were liquidated from Monday to Wednesday. The selloff then flushed longs. Daily liquidations doubled to an average of $504.2M from Thursday to Saturday, $1.51B in total, with longs taking $1.23B of it, 82%. Saturday’s break below $80K was the largest day at $547.2M.
BTC ETF Inflows Return as ETH Outflows Persist
BTC and ETH ETFs took in $80.5M combined. BTC carried the week, and ETH lost money for a fourth straight week.
BTC: +$301.2M. This week broke the outflow streak of the prior two weeks, but the net figure hides how volatile flows were. Monday to Wednesday brought $1.07B of inflows, then Thursday and Friday lost $774M. Thursday’s -$635.6M was the largest single-day outflow since June 25 (-$691.7M).
IBIT drove the inflow days. It took in $665.2M on Monday, its largest day of 2026 and its biggest since October 7, 2025, and finished the week at +$565.7M. Every other fund combined lost $264.5M. For October to date, IBIT has drawn +$755.2M while the rest of the complex has lost $1,068.7M. Year-to-date flows sit at +$656.3M, down from +$1,021M on September 25.
Our research on ETF flows found that IBIT’s flows predict price no better than the rest of the complex. On the 15 days IBIT took in big money while other funds sold - as it did Monday - BTC fell 0.86% on average over the next five days. Wednesday’s inflow landed on the week’s high and Thursday’s outflow on the same session as the selloff, which fits the broader finding that flows follow price.
The level to watch is about $79.6K, 7% below October 6’s close of $85.5K, the highest close of the past 20 days. Once BTC closes 7% below its 20-day high, ETF flows have historically flipped from +$74M a day to -$72M within a week. Saturday’s $79,107 low broke through that line intraday, but BTC closed Sunday about 0.7% above it. From Monday’s close, the line drops to about $78.1K as early October’s highs leave the window.
ETH: -$220.7M. This is the fourth consecutive outflow week. Since September 28, ETH ETFs have lost $1.22B, taking year-to-date flows from +$1,622M to +$400.5M. ETHA has not posted an inflow in 19 sessions: 15 outflow days, four flat, and -$1.04B in total. Across October, 14 of 17 sessions were outflows.
Key Events for the Week Ahead
Tuesday, October 27
US: FOMC convenes. Durable goods and Conference Board consumer confidence.
Israel: Knesset election.
Wednesday, October 28
US: FOMC decision, 2pm ET. A hold is priced at 95%, so the dissents matter more than the decision.
Canada: BoC decision, 9:45am ET. About 80% priced for a hike.
New Zealand: RBNZ decision.
UK: Autumn Budget.
Australia: Q3 CPI.
Strategy: STRC shareholder vote, 10am ET.
Thursday, October 29
US: Q3 GDP advance estimate and September PCE, 8:30am ET. Consensus is about 3.0% for GDP, 3.6% y/y for headline PCE and 3.1% y/y for core.
Euro area: ECB decision.
Coinbase and Strategy earnings, after the close.
Friday, October 30
Japan: BoJ decision.
Euro area: Q3 GDP, plus flash October CPI for Germany, France, Italy and Spain.(Historical earnings: For fiscal 2026Q2 (period ended 2026-06-30), Coinbase reported basic and diluted EPS of -2.85, net income of USD -0.754 billion, and revenue of USD 2.633 billion.
Consensus expectations: For the upcoming 2026Q3 event on 2026-10-29, consensus EPS estimate is -0.2169 and revenue estimate is USD 1.203 billion.)
78/100·ALong+23
m
meme11h agomeme
Premarket movers:
Mag 7 stocks are mostly higher: Meta Platforms (META) up +2.4% after announcing sale of up to $95 billion in common and preferred stock; Tesla (TSLA) gains 1.8% as Barclays upgrades to overweight from equal-weight, citing M&A opportunity with SpaceX; Alphabet (GOOGL) +0.5%, Amazon (AMZN) +0.2%, Microsoft (MSFT) +0.4%, Nvidia (NVDA) +0.4%, Apple (AAPL) -1.7%.
US-listed shares of Brazilian companies, and those exposed to the country, slump after President Luiz Inácio Lula da Silva surprised the markets to come from behind to win a runoff election. Among movers: PagSeguro (PAGS) -32%, NU Holdings (NU) -25%, MercadoLibre (MELI) -14%
ArriVent Biopharma (AVBP) is trading higher by 4.5% after early-stage data for the company’s ARR-217 product candidate was presented at ESMO, a key cancer conference.
Booz Allen Hamilton Holding Corp. (BAH) rises 0.9% as it is being upgraded to buy from hold at TD Cowen, which writes that shares of the IT services company look attractively valued in the wake of long-term share-price weakness.
Borr Drilling shares (BORR) drop 8.2% after the company said search and rescue operations are ongoing for five individuals who remain unaccounted for after its Prospector 5 drilling rig sank during jacking operations offshore Gabon on Oct. 24.
Coinbase Global Inc. shares (COIN) are down 1.7% as Bernstein cut its price target on the exchange to $250 from $330 on lower expected crypto volumes.
Equifax Inc. (EFX) falls 3.5% after it was cut to sector perform from outperform with RBC saying the the recent stock rally “off the lows has left risk/reward more balanced” given concerns on higher rates, regulatory overhand and consumer lending pressure.
Fair Isaac Corp. (FICO) falls 9.2% after it was cut to equal-weight from overweight at Wells Fargo, citing its lower-than-expected 2027 pricing announcement.
FirstEnergy Corp. shares (FE) rise 0.5% after BMO Capital Markets initiated coverage of the utilities company with a recommendation of outperform as it sees an attractive valuation.
Lockheed Martin Corp. shares (LMT) are up 1.4% after Morgan Stanley upgraded the defense company to overweight from equal-weight, writing that a recent deal for F-35 fighter jets “takes significant risk out of the stock.”
Moderna (MRNA) slumps 8.2%, set to extend their decline for a third session, after the drugmaker gave results from a trial of its experimental vaccine used in the treatment of pancreatic cancer.
Nutanix Inc. shares (NTNX) are up 5.3% after Guggenheim Securities started coverage on the infrastructure software company with a buy rating and $100 price target, seeing an ability for it to take market share.
Range Resources (RRC) rises 8.9% after EQT (EQT -8.1%) agreed to buy the energy firm in an all-stock transaction to create a combined natural gas company with a pro forma enterprise value over $50 billion.
Spotify Technology SA shares (SPOT) are down 1.4% after Phillip Securities downgraded the audio-streaming company to accumulate from buy, a move that comes in the wake of its recent results.
Xencor (XNCR) climbs 31% after the drug developer gave updated results from an early-stage trial of its experimental drug for kidney cancer that impressed Wall Street.
72/100·B+Long+27
m
meme12h agomeme
Looks like I’ll have to pull an all-nighter tonight. https://x.com/LizClaman/status/2114679108781380048
Quoted @LizClaman: ALERT: my sources tell me @anthropic will drop its S-1 at 9amET and that while market conditions have shifted, the plan for a mid Nov. IPO, possibly Nov. 19th or 20th is, for the moment, still on track. Developing.. I'll have more 3pET @FoxBusiness
72/100·B+Long
m
meme17h agomeme
ZEROBASE WEEKLY 10.19–10.25
ZBT traded in a narrow band after opening the week near $0.068 on October 19. It pushed toward $0.071–$0.072 midweek on lighter volume, then gave back the gains and settled near $0.068 by the weekend. Spreads stayed tight and liquidity remained orderly, with no sharp liquidity gaps on the pullback from the local highs.
Crypto spent the week consolidating after the early-month slide. Total market capitalization hovered between roughly $2.73T and $2.86T, peaking midweek before settling near $2.70T–$2.73T by Sunday. Bitcoin dominance held in the 59%–60% range.
Bitcoin opened October 19 near $81,800–$82,000 after the prior weekend close around $82,000. It rallied as much as 3%–4% to a weekly high near $84,500–$84,800 on October 21–22, then reversed sharply. Price spent the remainder of the week sliding through the $81,300 area and closed near $80,400 on October 25.
From the October 18 close that is a net decline of roughly 1.5%–2%, with the bulk of the damage coming after the midweek rejection. Ethereum followed the same path. ETH opened near $2,400–$2,410, printed a weekly high around $2,500–$2,525, then faded and finished near $2,340–$2,350. That left ETH roughly flat to slightly lower on the week.
Derivatives and ETF flows told a clear two-phase story. U.S. spot Bitcoin ETFs drew roughly $1.07 billion from Monday through Wednesday ($527 million on October 19, $23 million on October 20, and $525 million on October 21), the strongest three-day run in nearly a month.
The move reversed on Thursday and Friday with outflows of about $636 million and $138 million respectively, leaving the week with a net inflow of roughly $301 million and ending a two-week streak of outflows. Ether ETFs finished the week with approximately $221 million in net outflows. The late-week redemptions coincided with the price rejection above $84,000 and helped explain why the bounce failed to hold.
Macro and geopolitics remained the dominant backdrop. The Federal Reserve stayed in its blackout period ahead of the October 28 decision, with markets pricing only a low single-digit probability of a hike. The 10-year Treasury yield began the week near 5.15% and finished near 4.95%–4.99%, with a sharp drop of nearly 20 basis points on Thursday—the largest one-day decline in years—as equities sold off and oil volatility rose.
Oil itself stayed elevated amid the ongoing U.S.–Iran conflict, Houthi attacks, and Strait of Hormuz risks. Brent settled the week near $116–$117 after touching six-month highs, while WTI ended around $103. A temporary Russia sanctions waiver and mediation signals early in the week briefly eased prices, but renewed escalation talk later reversed the move. Falling yields and the equity rotation provided some offset for risk assets, yet the oil premium kept financial conditions from easing cleanly.
U.S. equities finished mixed after a volatile week. From the October 16 close, the S&P 500 fell about 0.5% to 7,623.68. The Nasdaq Composite declined roughly 0.7% to 25,955, while the Dow rose about 0.4% to 52,215 and the Russell 2000 gained 2%.
Monday and Wednesday posted modest gains; Thursday saw the largest decline of the week (S&P −1.2%, Nasdaq −2.6%) as Meta and semiconductor names sold off on AI spending concerns. The tape then stabilized on Friday. Leadership rotated away from mega-cap tech toward healthcare, consumer staples, and smaller caps, leaving the equal-weight S&P higher even as the headline index finished lower.
Crypto Fear & Greed began the week in the high-50s (Greed), reached the mid-to-high 60s on the midweek bounce, and then cooled into Neutral territory in the low-to-mid 50s by the weekend. The shift matched the price action: early optimism around ETF inflows and the equity bid faded once the $84,000 rejection and Thursday equity selloff arrived.
On-chain data showed elevated whale activity without a decisive accumulation or distribution signal. Several sessions recorded net exchange inflows in the low thousands of BTC, consistent with supply testing during the midweek rally and subsequent fade.
One of the largest single-day bursts of large-UTXO spending in 2026 occurred around October 23, with more than 230,000 BTC (roughly $21 billion) moving on-chain; most of the coins had been dormant for one to six months and the transfers appeared to be between wallets rather than to exchanges. Mid-tier and whale cohorts remained mixed, with some wallets flipping to distribution while others continued to accumulate.
In summary, October 19–25 was a failed bounce followed by consolidation. Spot prices briefly reclaimed the $84,000 area on the back of the strongest ETF inflow streak in weeks, then surrendered the gains as equities rotated out of AI names and oil remained elevated.
10/100·CNeutral+21
m
meme20h agomeme
🚨 DAILY ALPHA DROP: October 26, 2026
Cross-chain security, sub-second finality, and a delayed testnet fork. 👇
🔐 near:native : Chain Signatures now run in TEEs with onchain verification.
⚡ solana:So11111111111111111111111111111111111111112 : Alpenglow is live, taking…
72/100·B+Long
m
meme10/25meme
MAYC.
Otherside.
Dookey Dash.
Mudwater TCG.
These made me realize one thing:
Nobody can drop a new NFT collection + mechanic and put the entire CT on a frenzy like how Bored Ape Yacht Club does it.
Retweeted by @apecoin from @jbondwagon
15/100·CNeutral+1
m
meme10/25meme
BeamBlitz Weekend is LIVE 🐾
Ready for a Halloween purrty?
Captain Whiskers is ready to snag yer treats.
Scan the Beam QR with the Enjin Wallet app or claim it here: https://enj.in/Ltf93
'Til the next drop everyone!
ℹ️ https://enj.in/beamblitz
#FreeNFT #BeamBlitz
15/100·CNeutral
m
meme10/25meme
Top five stats:
$39.2 billion – Tokenized real-world assets held onchain as of October 16.
20,338 – Bitcoin wallets holding 10 to 10,000 BTC, an all-time high.
$117 – Brent crude’s price registered a five-month high.
85% – Drop in long-term Bitcoin holders’ realized losses since August 12.
$4,002 – Gold’s price on October 23 after dipping below $4,000, down 7.4% this year.
35/100·CLong+2
t
twitter10/25meme
Joined Binance Pick yet?
How many Scores have you collected? Drop your total below.
Earn Scores through eligible dusk-network:native trading, use them for virtual predictions and compete for a share of 1,000,000 USDC. https://x.com/DuskFoundation/status/2113628461868957765
Retweeted by @DuskFoundation from @DuskFoundation
35/100·CLong
n
news10/25news
This Week in Virtuals: Native Pearl, Private Payments, and Derive Options for Agents
px402 keeps an agent’s address off every x402 @USDC payment. Butler hedges BTC and ETH on @DeriveXYZ, buys native Pearl on @prlnet, copies traders and reprices farms on rule changes.
Here’s what shipped:
VIRTUALS
🟩 Native Pearl, served on a silver platter: tell Butler how much you want, and it handles every step to deliver native Pearl to your own wallet after one approval. No exchange account, no bridge to run.
🟩 Derive options on autopilot: your BTC and ETH, covered on @DeriveXYZ before every Fed, CPI and jobs release. Tell Butler the drop you can take, and it does the rest after one approval. No calendar, no options math.
🟩 Cross-chain copy trading: tell Butler which traders to follow on X, @fomo, @pumpfun and more. It pulls their wallets together, tracks every move and keeps copying their trades across chains, all inside the limit you set.
🟩 Rule-aware trading: when a protocol changes its rules, Butler reads the change, the team behind it and the conversation on X, checks it against what’s onchain and reprices your position within minutes, without being asked. Starting with Papertrade’s PAPER.
🟩 @eastworlds_io, Virtuals’ robotics data and deployment lab, took part in the global stress test behind @dreamlabs_ai’s Dream-1 launch
ECOSYSTEM
🟩 @PRXVTai made private agent payments live on Virtuals Protocol with px402, a privacy layer for x402 that keeps an agent’s address off every
payment while merchants still get paid in USDC.
🟩 @Mute_swap added new features that let you get Monero or Zcash instantly on its platform, as it builds the privacy layer for the Virtuals agent ecosystem.
🟩 @itsovercall launched mainnet on Robinhood Chain, with 2,422 positions from 109 players in its first 4 days. Stakers now earn 25% of platform fees paid in its token, and Overcall is listed on @DefiLlama.
🟩 @LighthouseWeb3 raised more strategic funding for a $1.58M total and made Lighthouse Memory payable in its token, with one memory shared across Claude Code, Codex and Cursor.
🟩 @reppo launched Loop in public beta, updating Eval API scores every few seconds instead of a one-off check, and added x402 so any agent can pay for evals on demand.
🟩 @ProjectVEXai put VEX on Cloud into internal testing with off-chain trading and up to 60 days of autonomy, as its agents passed $3.5M in real trading volume.
🟩 @ethy_agent previewed Strategy Lab, the core of its V3 upgrade, for building, backtesting and deploying strategies through chat, coming in Q4.
🟩 @sibyl_labs_ made Sibyl Memory Pro team billing live, so admins can add or remove users with billing adjusting automatically, and its self-learning keeps entities like companies and people up to date.
🟩 @RatehopperAI now supports @aeroxyz, so agents can provide liquidity to Aerodrome pools, automatically choosing the protocol with the highest earning potential.
🟩 @wardenprotocol raised Token Terminal agent limits to $25,000 a day, lets hands-free trading run up to 30 days, and marks agent trades more clearly in your trade history.
🟩 @myrad_hq added Sports as its fourth image category after 300+ users uploaded images in a week, with 4,000+ new users joining in the past month.
🟩 @grid_arena now offers 81 markets with up to 40x leverage, all in one place, with many more markets coming soon.
🟩 @WizzHQ opened the waitlist for @velocityosxyz, its agent that trades for you based on charts, social sentiment and market trends.
🟩 @xmaquina’s DAO passed BOT-15 with 88% approval and 34M+ votes for a strategic allocation in @SkildAI, and portfolio company @NEURARobotics unveiled 4NE1 Gen 4, built for series production.(Historical earnings: For 2026Q1 (period ended 2026-03-31), Robinhood reported basic EPS of 0.39, diluted EPS of 0.38, net income of USD 0.350 billion, and revenue of USD 1.067 billion, versus basic EPS 0.38, diluted EPS 0.37, net income USD 0.336 billion, and revenue USD 0.927 billion in the prior-year period. For full-year 2025 (period ended 2025-12-31), basic EPS was 2.12, diluted EPS 2.05, net income USD 1.883 billion, and revenue USD 4.473 billion.
Consensus expectations: Consensus for 2026Q3 (event date 2026-10-27) expects EPS of 0.5548 and revenue of USD 1.431 billion.)
15/100·CNeutral+25
n
news10/25news
Will the Fed drop any hints on rate rises?
10/100·CNeutral
m
meme10/25meme
Joined Binance Pick yet?
How many Scores have you collected? Drop your total below.
Earn Scores through eligible dusk-network:native trading, use them for virtual predictions and compete for a share of 1,000,000 USDC. https://x.com/DuskFoundation/status/2113628461868957765
Quoted @DuskFoundation: Dusk is sponsoring @binance Pick, powered by @predictdotfun.
→ Earn Scores through eligible dusk-network:native trading
→ Use them to make virtual predictions
→ Compete for a share of 1,000,000 USDC
Explore the campaign ↓ https://x.com/BinanceWallet/status/2113577198024339620
35/100·CLong
m
meme10/24meme
🚨 Something new is cooking in Dungeon Cities 👀
Dungeon Cities has built a bridge between Hive and a new chain. 🌉⚔️
Can you guess which chain we're connecting to? Drop your guesses below! 👇
The reveal is coming soon. Stay tuned, Hunters. 🔥
#DungeonCities #Hive #Web3Gaming
Retweeted by @hiveblocks from @DungeonCities
35/100·CLong
t
twitter10/24meme
$ARB'S 28-DAY LOSS OUTPACES $BTC AND $ETH
The Defiant calculated a 28.1% drop for @arbitrum's token through Oct. 24, versus 5.2% for $BTC and 14.4% for $ETH, using CoinGecko data. Arbitrum One's active-address count rose.
Read more here:
https://thedefiant.io/news/markets/arb-touches-four-week-low-as-losses-outpace-bitcoin-and-ether
35/100·CShort+1
m
meme10/24meme
@crypto_banter what a time for 60-second BTC markets 👀
Reply to @crypto_banter: 🚨$246M LIQUIDATED IN THE PAST HOUR AS BITCOIN DROPS BELOW $80K!
bitcoin:native just fell under $80,000, hitting around $79,720.
In the past hour, total liquidations reached $246.93M, with longs accounting for $233.11M and shorts only $13.82M.
Heavy long flush as the drop accelerates.
78/100·AShort
m
meme10/24meme
@coinbureau His entry is probably way below most of the people copying this sell.
Know your own levels first.
Reply to @coinbureau: 🚨MASSIVE: Arthur Hayes says “I DUMPED IT ALL” as Maelstrom liquidates roughly $22.3MILLION in altcoin positions.
The fund reportedly sold
- 6,400 ETH ($15.2M),
- 14M ENA ($2.76M),
- 323,000 UNI ($2.24M),
- and additional positions in ETHFI, AERO, PENDLE and ZAMA.
The move comes just nine days after Hayes shared bullish views on Bitcoin and Ether.
He now cites growing macro and geopolitical uncertainty, warning that markets could drop further before rebounding.
72/100·B+Short+5
n
news10/23news
What Does Alphabet Inc.‘s 7.13% Stock Drop Mean for Investors? The Law Offices of Howard G. Smith Outlines Securities Fraud Class Action Lead Plaintiff Deadline
72/100·B+Short
t
twitter10/23meme
Another one
I just won $150 in @WalrusProtocol Session 8.
Still sitting with it. Grateful as hell.
Thank you to the Walrus team for running this, for building memory that actually lives outside one chat window, and for picking Anchor. Means a lot.
Most chatbots forget you the second the conversation ends.
You tell them your goals, the excuses you always make, what actually works for you. Next time you open the chat? Blank slate. “How can I help you today?”
I got tired of that. So I built Anchor a Telegram bot that holds you to your word and actually remembers you.
Here’s how it works in real life:
You make a promise.
“I’ll send my CV to 2 companies by 6pm today.”
Anchor stores it as encrypted memory on Walrus, in a space that belongs to you. Not just the promise,your habits, what distracts you, what helps you, when you focus best.
Then it checks in on *you*.
At 7pm it messages first: “Did you do it?”
One tap: ✅ Did it · 🟡 Partly · ❌ Didn’t · 📅 Move it
Then it asks what helped or what got in the way.
Over a few days it starts spotting your patterns.
“You always skip when you stay up late on your phone.”
“You actually go when your friend comes with you.”
And it uses those truths the next time you try to plan.
Same AI. One version remembers you. One doesn’t.
Without memory:
“What’s your deadline?”
With Walrus Memory:
“Great job getting that clock build submitted this morning. Since you focus best in the morning, let’s lock in a concrete plan.”
You’re always in control:
/memory — everything it knows about you
/why — which memories shaped the last reply
/compare — answer with memory vs without
/forget — make it drop something
Built with Gemini + Walrus Memory for Session 8.
Free. No sign-up. No wallet needed.
There’s one thing you’ve been putting off.
You already know what it is.
Open Telegram. Tell Anchor.
https://t.co/Maf6F53iFA
It will remember.
And it will check on you.
Live stats: https://t.co/W4aJ6rHcdH
Thank you again, @WalrusProtocol
This one felt real.
Retweeted by @WalrusProtocol from @RaphElevator