Sova Labs
  • Introduction
  • FAQ
  • MEV on TON
    • Overview
  • MEV Searcher Guide
    • FAQ
    • Rust SDK
    • Golang SDK
    • Javascript SDK
  • API Overview
  • Blockchain Node
    • Overview
    • First Validator Setup
    • Existing Validator Update
    • Configuration Validator client or LiteServer
    • Rollback to the original TON version
Powered by GitBook
On this page
  • What is a Searcher?
  • Why Use a Searcher?
  • How to Write a Searcher?
  • Throughput limits?
  • Bundle Requirements
  • Atomicity of Execution
  1. MEV Searcher Guide

FAQ

PreviousOverviewNextRust SDK

Last updated 2 months ago

What is a Searcher?

A Searcher is responsible for monitoring mempool transactions in the TON blockchain and submitting new transactions based on predefined logic. It allows users to interact with mempool messages and create transaction bundles that can be sent to the Sova engine for processing.

Why Use a Searcher?

A searcher allows users to interact with mempool transactions efficiently, enabling automated strategies for transaction execution and optimization. Here are some variants:

  • Monitor Transactions: Subscribe to new transactions in the mempool.

  • Priority Transactions: Create and send transactions that will be included in the beginning of the block.

  • Real Anti-MEV transactions that can't be sniffed or tracked.

  • Automate Responses: Create and send transaction on specific events in blockchain or front-run/back-run messages that meet criteria.

  • Arbitrage & MEV: Implement strategies that detect profitable opportunities.

How to Write a Searcher?

You can use one of existent SDKs to implement your searcher:

Throughput limits?

Each searcher enforces a limit of 5 requests per second. If you need to have higher limit, you can send request at

Bundle Requirements

The bundle must include External Messages. One of resulting Outgoing Messages should sends a non-zero amount of TON to one of the network's tip addresses. This tip is used to reward Validator to include external & internal messages of Bundle in specific order.

Atomicity of Execution

Once validator includes bundle to Block it guarantees that all external & internal messages are following same order for current & following block on same or different shard. More coverage will be achieved by increasing adoption of Sova TON validator client.

Rust SDK
Golang SDK
Typescript SDK