# Table of Contents - [Crypto Trading Terminal + OEMS | tread.fi Documentation](#crypto-trading-terminal-oems-tread-fi-documentation) - [Getting Started | tread.fi Documentation](#getting-started-tread-fi-documentation) - [Self-Hosted Service | tread.fi Documentation](#self-hosted-service-tread-fi-documentation) - [Hosting Recommendations | tread.fi Documentation](#hosting-recommendations-tread-fi-documentation) - [Stable and Nightly Builds | tread.fi Documentation](#stable-and-nightly-builds-tread-fi-documentation) - [On Premise Setup | tread.fi Documentation](#on-premise-setup-tread-fi-documentation) - [Managed Service | tread.fi Documentation](#managed-service-tread-fi-documentation) - [Server Status | tread.fi Documentation](#server-status-tread-fi-documentation) - [AWS CDK | tread.fi Documentation](#aws-cdk-tread-fi-documentation) - [AWS CDK | tread.fi Documentation](#aws-cdk-tread-fi-documentation) - [App Configurations | tread.fi Documentation](#app-configurations-tread-fi-documentation) - [Binance | tread.fi Documentation](#binance-tread-fi-documentation) - [Troubleshooting | tread.fi Documentation](#troubleshooting-tread-fi-documentation) - [Bitget | tread.fi Documentation](#bitget-tread-fi-documentation) - [Hyperliquid | tread.fi Documentation](#hyperliquid-tread-fi-documentation) - [OKX | tread.fi Documentation](#okx-tread-fi-documentation) - [Bybit | tread.fi Documentation](#bybit-tread-fi-documentation) - [Pre-Trade Analytics | tread.fi Documentation](#pre-trade-analytics-tread-fi-documentation) - [Deribit | tread.fi Documentation](#deribit-tread-fi-documentation) - [OOL Pause | tread.fi Documentation](#ool-pause-tread-fi-documentation) - [Pair Naming | tread.fi Documentation](#pair-naming-tread-fi-documentation) - [Participation Rate Target | tread.fi Documentation](#participation-rate-target-tread-fi-documentation) - [Pacifica | tread.fi Documentation](#pacifica-tread-fi-documentation) - [Gate | tread.fi Documentation](#gate-tread-fi-documentation) - [Explore | tread.fi Documentation](#explore-tread-fi-documentation) - [Connecting to Exchanges | tread.fi Documentation](#connecting-to-exchanges-tread-fi-documentation) - [Paradex | tread.fi Documentation](#paradex-tread-fi-documentation) - [Trajectories | tread.fi Documentation](#trajectories-tread-fi-documentation) - [VWAP | tread.fi Documentation](#vwap-tread-fi-documentation) - [Dynamic Limit Price | tread.fi Documentation](#dynamic-limit-price-tread-fi-documentation) - [Aster | tread.fi Documentation](#aster-tread-fi-documentation) - [Exposure Tolerance | tread.fi Documentation](#exposure-tolerance-tread-fi-documentation) - [DEX Trading | tread.fi Documentation](#dex-trading-tread-fi-documentation) - [Dynamic Limit Spread | tread.fi Documentation](#dynamic-limit-spread-tread-fi-documentation) - [Order Templates | tread.fi Documentation](#order-templates-tread-fi-documentation) - [Options (Beta) | tread.fi Documentation](#options-beta-tread-fi-documentation) - [Multi/Spread Orders | tread.fi Documentation](#multi-spread-orders-tread-fi-documentation) - [Exit Conditions | tread.fi Documentation](#exit-conditions-tread-fi-documentation) - [Directional Bias | tread.fi Documentation](#directional-bias-tread-fi-documentation) - [Season 1: Trade, Earn, Vote | tread.fi Documentation](#season-1-trade-earn-vote-tread-fi-documentation) - [Scale Orders | tread.fi Documentation](#scale-orders-tread-fi-documentation) - [Market | tread.fi Documentation](#market-tread-fi-documentation) - [Algo Swap Mode | tread.fi Documentation](#algo-swap-mode-tread-fi-documentation) - [Submitting DEX Orders | tread.fi Documentation](#submitting-dex-orders-tread-fi-documentation) - [Chained Orders | tread.fi Documentation](#chained-orders-tread-fi-documentation) - [Submitting Orders | tread.fi Documentation](#submitting-orders-tread-fi-documentation) - [Use Cases and Best Practices | tread.fi Documentation](#use-cases-and-best-practices-tread-fi-documentation) - [TWAP | tread.fi Documentation](#twap-tread-fi-documentation) - [Manage Order | tread.fi Documentation](#manage-order-tread-fi-documentation) - [Target Time | tread.fi Documentation](#target-time-tread-fi-documentation) - [Exchange Integration Voting Ballot | tread.fi Documentation](#exchange-integration-voting-ballot-tread-fi-documentation) - [DEX Trading Wallet Setup | tread.fi Documentation](#dex-trading-wallet-setup-tread-fi-documentation) - [Spot Leverage | tread.fi Documentation](#spot-leverage-tread-fi-documentation) - [IOC | tread.fi Documentation](#ioc-tread-fi-documentation) - [Max Clip Size | tread.fi Documentation](#max-clip-size-tread-fi-documentation) - [Transaction Cost Analysis | tread.fi Documentation](#transaction-cost-analysis-tread-fi-documentation) - [Conditional Order | tread.fi Documentation](#conditional-order-tread-fi-documentation) - [Iceberg | tread.fi Documentation](#iceberg-tread-fi-documentation) - [Withdrawing Funds | tread.fi Documentation](#withdrawing-funds-tread-fi-documentation) - [Advanced Settings | tread.fi Documentation](#advanced-settings-tread-fi-documentation) - [Real-Time Algo Order Tracking | tread.fi Documentation](#real-time-algo-order-tracking-tread-fi-documentation) - [Two-factor authentication | tread.fi Documentation](#two-factor-authentication-tread-fi-documentation) - [Alpha Tilt | tread.fi Documentation](#alpha-tilt-tread-fi-documentation) - [Passiveness | tread.fi Documentation](#passiveness-tread-fi-documentation) - [Order History | tread.fi Documentation](#order-history-tread-fi-documentation) - [Order Management | tread.fi Documentation](#order-management-tread-fi-documentation) - [Reduce Only | tread.fi Documentation](#reduce-only-tread-fi-documentation) - [Superuser Management | tread.fi Documentation](#superuser-management-tread-fi-documentation) - [Limit | tread.fi Documentation](#limit-tread-fi-documentation) - [Resubmit Order | tread.fi Documentation](#resubmit-order-tread-fi-documentation) - [Points Program | tread.fi Documentation](#points-program-tread-fi-documentation) - [Settings Page | tread.fi Documentation](#settings-page-tread-fi-documentation) - [Glossary | tread.fi Documentation](#glossary-tread-fi-documentation) - [Amend Order | tread.fi Documentation](#amend-order-tread-fi-documentation) - [vCefi (Verified CeFi) | tread.fi Documentation](#vcefi-verified-cefi-tread-fi-documentation) - [Manage Order | tread.fi Documentation](#manage-order-tread-fi-documentation) - [Max OTC Percentage | tread.fi Documentation](#max-otc-percentage-tread-fi-documentation) - [Participation Rate Limit | tread.fi Documentation](#participation-rate-limit-tread-fi-documentation) - [Delta Neutral Bot | tread.fi Documentation](#delta-neutral-bot-tread-fi-documentation) - [Passive Only | tread.fi Documentation](#passive-only-tread-fi-documentation) - [Telegram Bot | tread.fi Documentation](#telegram-bot-tread-fi-documentation) - [Strategies | tread.fi Documentation](#strategies-tread-fi-documentation) - [Market Maker | tread.fi Documentation](#market-maker-tread-fi-documentation) - [Portfolio | tread.fi Documentation](#portfolio-tread-fi-documentation) - [Target Time | tread.fi Documentation](#target-time-tread-fi-documentation) - [API Reference | tread.fi Documentation](#api-reference-tread-fi-documentation) - [Funding Rate Analytics | tread.fi Documentation](#funding-rate-analytics-tread-fi-documentation) - [Aggressive Maker | tread.fi Documentation](#aggressive-maker-tread-fi-documentation) - [Active Limit | tread.fi Documentation](#active-limit-tread-fi-documentation) - [Cancel Order | tread.fi Documentation](#cancel-order-tread-fi-documentation) - [Strict Duration | tread.fi Documentation](#strict-duration-tread-fi-documentation) - [Discretion | tread.fi Documentation](#discretion-tread-fi-documentation) - [Impact Minimization | tread.fi Documentation](#impact-minimization-tread-fi-documentation) - [Setup Guide | tread.fi Documentation](#setup-guide-tread-fi-documentation) - [Resubmit Remaining Order | tread.fi Documentation](#resubmit-remaining-order-tread-fi-documentation) - [Portfolio (Tab) | tread.fi Documentation](#portfolio-tab-tread-fi-documentation) - [Markouts | tread.fi Documentation](#markouts-tread-fi-documentation) - [Referral Program | tread.fi Documentation](#referral-program-tread-fi-documentation) - [Aggressive Taker | tread.fi Documentation](#aggressive-taker-tread-fi-documentation) - [Examples | tread.fi Documentation](#examples-tread-fi-documentation) - [Pause Order | tread.fi Documentation](#pause-order-tread-fi-documentation) - [Time Constant | tread.fi Documentation](#time-constant-tread-fi-documentation) - [Target Participation Rate | tread.fi Documentation](#target-participation-rate-tread-fi-documentation) - [Market Maker Bot | tread.fi Documentation](#market-maker-bot-tread-fi-documentation) - [Admin | tread.fi Documentation](#admin-tread-fi-documentation) - [Type Reference | tread.fi Documentation](#type-reference-tread-fi-documentation) - [Websocket Reference | tread.fi Documentation](#websocket-reference-tread-fi-documentation) - [Algorithmic Orders (VWAP, TWAP, POV) | tread.fi Documentation](#algorithmic-orders-vwap-twap-pov-tread-fi-documentation) - [Accounts | tread.fi Documentation](#accounts-tread-fi-documentation) - [Miscellaneous | tread.fi Documentation](#miscellaneous-tread-fi-documentation) - [Analytics | tread.fi Documentation](#analytics-tread-fi-documentation) - [Simple Orders (Market, Limit, IOC, Iceberg) | tread.fi Documentation](#simple-orders-market-limit-ioc-iceberg-tread-fi-documentation) - [Multi Order | tread.fi Documentation](#multi-order-tread-fi-documentation) - [Core Order API | tread.fi Documentation](#core-order-api-tread-fi-documentation) - [Email Protection | Cloudflare](#email-protection-cloudflare) - [DiCy | tread.fi Documentation](#dicy-tread-fi-documentation) - [IS | tread.fi Documentation](#is-tread-fi-documentation) --- # Crypto Trading Terminal + OEMS | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FlSr5dOonRRsiyriblpHq%252Ftreadfi%2520thumbnail.jpg%3Falt%3Dmedia%26token%3D974a3002-2ae0-4ec7-b6f2-ed2b95bb3d4d&width=768&dpr=4&quality=100&sign=4efb5026&sv=2) tread.fi is an **algorithmic trading terminal** designed to optimize trade execution for **professional and institutional crypto traders**. By leveraging **advanced execution algorithms**, tread.fi enables users to efficiently manage trades across multiple exchanges, **reducing slippage and market impact while minimizing execution costs**. #### [](https://docs.tread.fi/#who-is-it-for) **Who is it for?** tread.fi is built for traders who's looking to: * [**Automate order execution**](https://docs.tread.fi/getting-started) using advanced algorithms. * [**Minimize market impact**](https://docs.tread.fi/strategies) when placing large orders. * [**Execute trades across multiple exchanges**](https://docs.tread.fi/connecting-to-exchanges) , including both **centralized (CEXs) and decentralized (DEXs)**. * [**Require transparency**](https://docs.tread.fi/transaction-cost-analysis) in execution costs and order performance. * [**Optimize fees**](https://docs.tread.fi/advanced-settings/passive-only) by prioritizing **maker orders to reduce trading costs**. #### [](https://docs.tread.fi/#key-benefits) **Key Benefits** * **Algorithmic Execution** – Automate trades with precision using industry-leading execution algorithms. * **Multi-Exchange Management** – Seamlessly connect and execute orders across top-tier centralized and decentralized exchanges. * **Smart Order Routing** – Optimize order placement with intelligent routing strategies. * **Execution Cost Efficiency** – Reduce costs by **maximizing maker fills** and minimizing unnecessary taker fees. * **Execution Cost Transparency** – Monitor transaction costs and gain full visibility into order performance. * **Secure API and websocket Integration** – Trade safely with **encrypted API key storage** and authentication. #### [](https://docs.tread.fi/#platform-and-api-integration) **Platform & API Integration** tread.fi provides both a **powerful trading platform** and a **comprehensive REST API**, allowing traders to: * [**Execute algorithmic trades**](https://docs.tread.fi/submitting-orders) directly through the platform. * [**Trade programmatically using the tread.fi REST API**](https://docs.tread.fi/interacting-with-the-api/api-reference) or integrate it into existing systems for **custom execution strategies and automation.** tread.fi delivers a **professional-grade execution experience**, giving traders the tools to **execute smarter, faster, and more cost-effectively**. Whether you're an **institutional trader** or an **advanced retail user**, tread.fi helps you **execute with confidence and efficiency**. [NextGetting Started](https://docs.tread.fi/getting-started) Last updated 1 month ago Was this helpful? --- # Getting Started | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FJizONobrbKf4mOR9D62j%252F21323.png%3Falt%3Dmedia%26token%3Dda843aaa-3013-4398-af9a-639aea9ad212&width=768&dpr=4&quality=100&sign=6e9d1919&sv=2) 1. **Register** – [Sign up](https://app.tread.fi/account/signup/) with your email or connect your wallet. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FWTa6Oa5tcYgZmZMHEHcX%252FScreenshot%25202568-07-22%2520at%252011.24.45.png%3Falt%3Dmedia%26token%3D492ecf4d-1fe0-4130-92be-db91ecf0662f&width=768&dpr=4&quality=100&sign=19512d8c&sv=2) 1. **If you signed up with your email please verify email** – Click the verification link sent to your inbox to confirm your email address. 2. **Connect Exchange API** – Link your exchange API key to enable trading. For step-by-step instructions, check our [Add a New Account Guide](https://docs.tread.fi/connecting-to-exchanges) . ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FBbvSEfmJNA7ZU8KoGmha%2Fimage.png&width=768&dpr=4&quality=100&sign=5de65b7e&sv=2) Click "Add key" to Connect Trading Account Once you've completed these steps, you're ready to start trading with tread.fi. For more information on submitting your first simple order, check out this [page](https://docs.tread.fi/submitting-orders/algo-swap-mode) . [PreviousCrypto Trading Terminal + OEMS](https://docs.tread.fi/) [NextSelf-Hosted Service](https://docs.tread.fi/self-hosted-service) Last updated 4 months ago Was this helpful? --- # Self-Hosted Service | tread.fi Documentation Self hosted deployments allow clients to run their own private instance of TaaS on premise or within their own virtual private cloud (AWS, Google Cloud, etc). In this deployment, TaaS will connect directly to the exchanges. API keys, trade history and balances will all be kept private, even from Tread Labs. If you are interested in our self-hosted option please [**contact us.**](https://www.tread.fi/contact) [](https://docs.tread.fi/self-hosted-service#docker) Docker ---------------------------------------------------------------- TaaS runs as a local webserver that is initialized and hosted on Docker. The localization allows for full privacy and security for your trades and API keys. In order to get started with TaaS, [download Docker](https://docs.docker.com/get-docker/) . We recommend getting the GUI if you are not familiar with Docker. [](https://docs.tread.fi/self-hosted-service#starting-webserver) Starting Webserver ---------------------------------------------------------------------------------------- The startup script will initialize the latest Docker image, download the latest version of TaaS and starts the webserver. Place the key file in the same folder as the startup script. **Windows**: _**Work in progress**_ **Mac/Unix**: Copy curl -fs -d '{ "license_key": "" }' https://ktf83pe7y6.execute-api.us-east-1.amazonaws.com/beta/taas-distribution/setup | bash _Note:_ If you see a 502 Gateway error, the container has not fully initialized, try again in a couple minutes. Once the script has finished initializing the Docker image, open up the Docker and you should see that the TaaS images have been loaded: ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FD2oKlpBCbtIgc9wwptci%2Fdocker.PNG&width=768&dpr=4&quality=100&sign=d5f65571&sv=2) All four images should be loaded to Docker at this point [](https://docs.tread.fi/self-hosted-service#accessing-webserver) Accessing Webserver ------------------------------------------------------------------------------------------ Once the script has finished loading the images, it will bring up the _taas-docker_ container and host TaaS on _localhost:80_ ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FHYQ0tvSUDzo4RSXNdQVH%2Fdocker2.PNG&width=768&dpr=4&quality=100&sign=f65f5b95&sv=2) Verify that taas\_docker is running From your browser, go to localhost and you should be welcomed by the login page. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FsJkTre7EObqfrAMHFdLn%2Fimage.png&width=768&dpr=4&quality=100&sign=5a030b0&sv=2) [PreviousGetting Started](https://docs.tread.fi/getting-started) [NextOn Premise Setup](https://docs.tread.fi/self-hosted-service/on-premise-setup) Last updated 4 months ago Was this helpful? --- # Hosting Recommendations | tread.fi Documentation There are 2 main categories of recommendations for hosting: * Host Specifications: CPU, RAM, Storage * Security: Authentication, Restricting exposure to the public internet [](https://docs.tread.fi/self-hosted-service/hosting-recommendations#host-specifications) Host Specifications ------------------------------------------------------------------------------------------------------------------ Recommendations vary depending on your setup ### [](https://docs.tread.fi/self-hosted-service/hosting-recommendations#single-host-minimum-setup) Single Host Minimum Setup Single host containing the complete app(web, price adapters, order adapters, market data, smart order router, etc), Redis server, Rabbitmq, Postgres DB * At least 8 cores or 8 vCPUs * At least 32 GB of RAM * At least 128 GB of storage This setup is great for trialing and limited use, but we recommend switching to a distributed setup for better, more consistent performance, and easier maintenance. The performance and maintenance of the persistence services will impact the performance of the application in this setup. The advantage of this setup is that there is minimal latency interacting with the Redis cache and Postgres. ### [](https://docs.tread.fi/self-hosted-service/hosting-recommendations#single-host-recommended-setup) Single Host Recommended Setup Single host containing the complete app(web, price adapters, order adapters, market data, smart order router, etc), Redis server, Rabbitmq, Postgres DB * At least 16 cores or 16 vCPUs * At least 64 GB of RAM * At least 256 GB of storage if needed, guidance for choosing hosts for dedicated Redis, Postgres, and Rabbitmq is available: [Redis Hardware Requirements](https://docs.redis.com/latest/rs/installing-upgrading/hardware-requirements/) [Postgres Hardware Requirements](https://www.enterprisedb.com/docs/supported-open-source/postgresql/installer/01_requirements_overview/#:~:text=Hardware%20requirements&text=The%20minimum%20hardware%20required%20to,512%20MB%20of%20HDD) [Rabbitmq Hardware Requirements](https://www.rabbitmq.com/docs/production-checklist) ### [](https://docs.tread.fi/self-hosted-service/hosting-recommendations#distributed-order-adapters-setup) Distributed Order Adapters Setup Hosts contain only the order adapter services. The hosts are connected by the managed service. This is the recommended long term set up. For hosts running the market-access containers * At least 4 cores or 4 vCPUs * At least 8 GB of RAM * At least 64 GB of storage [](https://docs.tread.fi/self-hosted-service/hosting-recommendations#security) Security -------------------------------------------------------------------------------------------- * Network: Hosts should live in a private network exposing only port 443 to the public internet * **IMPORTANT**: If you're using the simple set up, ensure port 5443 and 6379 are not exposed to the public internet * SSL termination: At some point on the network call, either on the instance or some entry point into the private network ex. a load balancer [PreviousStable and Nightly Builds](https://docs.tread.fi/self-hosted-service/on-premise-setup/stable-and-nightly-builds) [NextAWS CDK](https://docs.tread.fi/self-hosted-service/aws-cdk) Was this helpful? --- # Stable and Nightly Builds | tread.fi Documentation [Tread.fi](http://tread.fi/) provides both stable and nightly builds to provide early access to new features and functionality while maintaining stability for production environments. #### [](https://docs.tread.fi/self-hosted-service/on-premise-setup/stable-and-nightly-builds#stable-builds) Stable Builds Stable builds undergo user testing in addition to automated testing, and are intended for production use in the broadest use cases. Stable builds can be downloaded via `curl -d '{"version" : "stable", "market_access_version": "stable", "license_key" : "LICENSE_KEY"}' https://........` #### [](https://docs.tread.fi/self-hosted-service/on-premise-setup/stable-and-nightly-builds#nightly-builds) Nightly Builds Nightly builds undergo automated testing as part of the build process, and contain the latest features and functionality. They have not been tested to the degree that stable builds have, and novel functionality in nightly builds may not appear in stable builds for some time, if at all. Nightly builds can be downloaded by _not_ setting the `version` parameter, via `curl -d '{"license_key" : "LICENSE_KEY"}' https://........`. [PreviousOn Premise Setup](https://docs.tread.fi/self-hosted-service/on-premise-setup) [NextHosting Recommendations](https://docs.tread.fi/self-hosted-service/hosting-recommendations) Was this helpful? --- # On Premise Setup | tread.fi Documentation [](https://docs.tread.fi/self-hosted-service/on-premise-setup#introduction) Introduction --------------------------------------------------------------------------------------------- AIO setup uses docker compose to bring up multiple containers at once all configured to connect to each other. This includes: * Main app backend * Reverse Proxy that serves the website assets and routes http calls to the backend * Price adapter microservices * Order adapter microservices * Market data and tca microservices * Smart order router * Distributed cache (Redis) * Message bus (Rabbitmq) * Persistent storage DB (Postgres) It may be resource intensive to run on one host, so if you are hitting performance issues given your usage (even with our recommended host specifications), you can choose to pick a bigger instance or please reach out to [\[email protected\]](https://docs.tread.fi/cdn-cgi/l/email-protection) and we can help you extract some of the components out to reduce the load. We will also soon support easy configuration of the app to call your distributed cache or DB service. [](https://docs.tread.fi/self-hosted-service/on-premise-setup#setup) Setup ------------------------------------------------------------------------------- Pick a host with intel (x86) or arm architecture (we currently only support _x86_\-_64 and arm64)_ with any OS but we recommend Ubuntu 20+ as it is what we run internally and can give you steps that we've tested ourselves. 1. Install docker engine: [https://docs.docker.com/engine/install/ubuntu/](https://docs.docker.com/engine/install/ubuntu/) 2. Important post installation steps: [https://docs.docker.com/engine/install/linux-postinstall](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user) 3. Run our curl command to download the our images and bring the containers up with docker compose [PreviousSelf-Hosted Service](https://docs.tread.fi/self-hosted-service) [NextStable and Nightly Builds](https://docs.tread.fi/self-hosted-service/on-premise-setup/stable-and-nightly-builds) Was this helpful? --- # Managed Service | tread.fi Documentation The TaaS managed service is a solution designed to simplify and streamline the trading infrastructure for clients who engage in trading activities. Unlike the self-hosted offering which requires clients to manage and maintain the entire trading stack, the managed service offsets the operation of the trading engine to Tread Labs. The TaaS managed service accomplishes this setup by splitting it into two distinct services: 1. **Trading Engine**: This service is responsible for hosting and managing the core trading engine and OEMS. Tread Labs takes on task of setting up, maintaining, and optimizing the trading engine infrastructure in private instances per client. Managed service clients can offload the complexities of infrastructure management, freeing them to focus solely on trading strategies and decision-making. 2. **Client Proxy Service**: Clients are provided with a lightweight proxy service that serves as an intermediary between managed TaaS instance (run by Tread Labs) and the exchanges. This proxy establishes secure connections to exchange APIs, handles order routing, and provides data feeds to the client's trading algorithms. Since the heavy lifting of infrastructure management is handled by TaaS, clients can deploy and run this proxy service with minimal effort. A key feature of the proxy is that the exchange API keys are only stored within this layer of infrastructure. Key benefits of the TaaS managed service include: * **Simplified Infrastructure**: Clients no longer need to set up and maintain complex trading infrastructure, reducing operational overhead. * **Enhanced Reliability**: TaaS is professionally managed to ensure high reliability and minimal downtime. * **Scalability**: Clients can easily scale their trading strategies without worrying about infrastructure limitations. * **Security**: The proxy service stores the exchange API keys and ensures secure communication with exchanges, reducing the risk of data breaches or unauthorized access. [PreviousTroubleshooting](https://docs.tread.fi/self-hosted-service/troubleshooting) [NextServer Status](https://docs.tread.fi/managed-service/server-status) Was this helpful? --- # Server Status | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FZr2H6fKKHvqyOLnoKFuI%2Fimage.png&width=768&dpr=4&quality=100&sign=62eb379a&sv=2) At the footer of the TaaS website, the status of the proxy servers will be displayed and refreshed every minute. * Online: Fully functional * Partially Degraded: Some exchanges may be not responding * Offline: The proxies are not up/available Clicking into the status will take you to a detailed status page that will show the version and uptimes of each of the exchange connections. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FCAk3Ku0uCTs7RLbH2CTy%2Fimage.png&width=768&dpr=4&quality=100&sign=dd374e43&sv=2) Exchanges show the status of the exchange adapters connected to each exchange. These are shared by all users within the client's organization. Accounts show the status of each of the exchange accounts. For example: * If Binance is down, the exchange adapter for Binance may show offline and all exchange accounts on Binance will also show offline * If your exchange API key has been deleted, the exchange will show online, but the account tied to the API key will be offline * If the proxy itself is down, the exchanges will show unavailable and accounts will show as offline [PreviousManaged Service](https://docs.tread.fi/managed-service) [NextAWS CDK](https://docs.tread.fi/managed-service/aws-cdk) Was this helpful? --- # AWS CDK | tread.fi Documentation ### [](https://docs.tread.fi/managed-service/aws-cdk#one-step-deployment) One-step Deployment _Note: If you have no registered domain under AWS, follow the steps below under_ _**Register Domain**_ Go into AWS CloudShell (left-most icon on the navigation bar in AWS console) ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FsASCOEF0YY1q933aeZO1%2Fimage.png&width=768&dpr=4&quality=100&sign=58e64032&sv=2) **Run the following:** Copy git clone https://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@github.com/tread-labs/oa_cdk.git \ && ./oa_cdk/script/start.sh Follow the prompts with the information below. Field Description License Key The unique key given to access the app. Domain Name Your registered domain name (ex. tread.fi) Region [AWS region code](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) for the region your app will be deployed to. Defaulted to ap-northeast-1 (Tokyo). **Note: If you already have infrastructure in this region, you might run into an IP limit (default is 5). The above command will tell you if there aren't enough IPs and automatically request it for you.** You can also do it yourself in the AWS console at: Copy https://{region_code}.console.aws.amazon.com/servicequotas/home/services/ec2/quotas/L-0263D0A3 Otherwise, after a couple minutes, the set up should be done and you can confirm it's successful by visiting this url with your domain name filled in: `https://oa.{your_domain_name}/binance/ping` ### [](https://docs.tread.fi/managed-service/aws-cdk#register-domain-optional) Register Domain _(Optional)_ **Skip if you already have a domain registered in AWS Route53.** * Go to Route 53 -> Left Side Bar: Registered Domains -> Register Domains * Follow the form to purchase a domain - [https://aws.amazon.com/getting-started/hands-on/get-a-domain/](https://aws.amazon.com/getting-started/hands-on/get-a-domain/) (Only do Step 1), this creates a Hosted Zone for you * If you already have a domain in a different provider, you can delegate it to AWS: * Go to Route 53 -> Left Side Bar: Hosted Zones -> Create Hosted Zone * Fill in Domain name for the domain you already own (ex. thisismydomain.com), Hit "Create hosted zone" * Click into your newly created hosted zone, there should already be an NS and a SOA record * Take note of the 4 values for the "NS" record and change the name servers for your existing registered domain for your DNS provider **Migrating from the Self-Hosted Service setup?** Follow the instructions to [delete the previous infrastructure](https://docs.tread.fi/self-hosted-service/aws-cdk#tear-down-infrastructure) . [](https://docs.tread.fi/managed-service/aws-cdk#faq) FAQ -------------------------------------------------------------- **How do I tear everything down?** Go into AWS console -> Ensure you're in the right region -> Cloudformation. Select TaasOAServiceStack first and hit "Delete" followed by TaasOAVpcStack. **What infrastructure does this create?** At a high level it creates a VPC (Virtual Private Cloud) which is a private network for your stuff to live in and it creates an EC2 instance inside of it. The domain names are also created to point to your EC2 instance's IP. [PreviousServer Status](https://docs.tread.fi/managed-service/server-status) [NextConnecting to Exchanges](https://docs.tread.fi/connecting-to-exchanges) Was this helpful? --- # AWS CDK | tread.fi Documentation ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#one-step-deployment) One-step Deployment _Note: If you have no registered domain under AWS, follow the steps below under_ [_**Register Domain**_](https://docs.tread.fi/self-hosted-service/aws-cdk#register-domain-optional) Go into AWS CloudShell (left-most icon on the navigation bar in AWS console) ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FsASCOEF0YY1q933aeZO1%2Fimage.png&width=768&dpr=4&quality=100&sign=58e64032&sv=2) **Run the following:** Copy git clone https://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@github.com/tread-labs/cdk_example.git && \ ./cdk_example/scripts/run.sh Follow the prompts with the information below. Field Description License Key The unique key given to access the app. Domain Name Your registered domain name (ex. tread.fi) Region [AWS region code](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) for the region your app will be deployed to. Defaulted to ap-northeast-1 (Tokyo). **Note: If you already have infrastructure in this region, you might run into an IP limit (default is 5). The above command will tell you if there aren't enough IPs and automatically request it for you.** You can also do it yourself in the AWS console at: Copy https://{region_code}.console.aws.amazon.com/servicequotas/home/services/ec2/quotas/L-0263D0A3 #### [](https://docs.tread.fi/self-hosted-service/aws-cdk#domain-input) Domain Input You will be asked whether you want a subdomain created if you say yes it will create one at: `https://taas.{your_domain_name}` Otherwise it will assume the domain inputted is exactly the domain that will point to your newly provisioned public IP. i.e. `https://{your_domain_name}` A proxy service will be deployed along with the app to automatically handle SSL **Gotcha #1:** If you don't create a subdomain with CDK and you create it separately, the SSL certificate creation could fail. You will have to SSH onto the machine and re-deploy everything from a clean slate: Copy cd /opt/taas docker compose down -v ./start.sh ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#creating-users) Creating Users #### [](https://docs.tread.fi/self-hosted-service/aws-cdk#with-sign-up) With Sign Up By default sign up is enabled so you can create an account and jump in right away. To disable it you must run the deploy without the sign\_up\_enabled flag. Remove the flag by editing the deployment script at /opt/taas/start.sh and removing the following from the curl body and running it to deploy again: Copy sign_up_enabled: "TRUE" #### [](https://docs.tread.fi/self-hosted-service/aws-cdk#with-admin-user) With Admin User The web app is a Django web app and an admin user can be created to create and manage users. Contact us to help you with creating one if needed. ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#register-domain-optional) Register Domain _(Optional)_ **Skip if you already have a domain registered in AWS Route53.** * Go to Route 53 -> Left Side Bar: Registered Domains -> Register Domains * Follow the form to purchase a domain - [https://aws.amazon.com/getting-started/hands-on/get-a-domain/](https://aws.amazon.com/getting-started/hands-on/get-a-domain/) (Only do Step 1), this creates a Hosted Zone for you * If you already have a domain in a different provider, you can delegate it to AWS: * Go to Route 53 -> Left Side Bar: Hosted Zones -> Create Hosted Zone * Fill in Domain name for the domain you already own (ex. thisismydomain.com), Hit "Create hosted zone" * Click into your newly created hosted zone, there should already be an NS and a SOA record * Take note of the 4 values for the "NS" record and change the name servers for your existing registered domain for your DNS provider [](https://docs.tread.fi/self-hosted-service/aws-cdk#local-setup) Local Setup ---------------------------------------------------------------------------------- Ideal for maintaining the infrastructure long term with cdk. ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#create-admin-user) Create Admin User * Create admin user * Go to IAM -> Users -> Add Users * Set a name like "CDK" or "Admin", hit Next * Select "Attach policies directly" * Search "AdministratorAccess" in the search bar * Check the checkbox beside it, hit Next and "Create User" * Create access keys to use with AWS CDK * Click into the user you just created * Select the "Security credentials" tab * Scroll down to "Access keys" and hit "Create access key" * Select CLI use case, check confirmation checkbox, hit Next * Hit "Create access key" * You are shown **access key** and a hidden **secret key**, you won't be shown the secret key again so write it down or save it in a secure location along with the access key ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#set-up-your-local-environment) Set Up Your Local Environment You are setting up this environment only to run the CDK package, typically from your personal laptop or work environment. * Install Node - [https://nodejs.org/en/download](https://nodejs.org/en/download) * Fork and clone the CDK repo for your use - [https://github.com/tread-labs/cdk\_example](https://github.com/tread-labs/cdk_example) Ask us for access to this repo. * (Optional) Install VS Code (great IDE that works out of the box for typescript) - [https://code.visualstudio.com/download](https://code.visualstudio.com/download) * Go to the repo directory and run Copy npm install -g typescript npm install -g aws-cdk npm install * Configure your AWS credentials * `aws configure --profile cdk` * Follow the prompts and copy in the **access key** and **secret key** obtained from creating a user above, leave the rest of the config as None * Set the profile for your current terminal session `export AWS_PROFILE=cdk` * It helps to save the config as a profile to skip the hassle of recreating and configuring access keys that you've lost because you're switching between access keys for various use cases for AWS CDK and AWS CLI. But you will need to remember to export the AWS\_PROFILE environment variable for the profile you want to use. ### [](https://docs.tread.fi/self-hosted-service/aws-cdk#manual-stack-deployment) Manual Stack Deployment Refer to the [official docs](https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-typescript.html#typescript-running) if you are unfamiliar with cdk. You **must** deploy in this order due to dependencies: 1. TaasPersistenceStack (will also deploy TaasVpcStack first) 2. TaasMonitoringStack 3. TaasServiceStack [](https://docs.tread.fi/self-hosted-service/aws-cdk#update-to-the-latest-version) Update to the Latest Version -------------------------------------------------------------------------------------------------------------------- To deploy the latest version, access your instance directly via SSH and run a curl command to hit our endpoint that provides a docker compose setup script. Refer to the [docs](https://docs.tread.fi/self-hosted-service/app-configurations) for how to structure the curl command. If you ran the quick start script above, a script is already created for you at `/opt/taas/start.sh` #### [](https://docs.tread.fi/self-hosted-service/aws-cdk#ssh-via-aws-console) SSH via AWS Console Go into your AWS Console: EC2 -> Instances -> Click into instance (link under instance ID) named something like "TaasServiceStack/AIO-Instance" ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FI7JlXeBIkBIPMDuVKZsF%2FScreenshot%25202023-11-29%2520at%252010.52.43%2520AM.jpeg&width=768&dpr=4&quality=100&sign=85f18359&sv=2) #### [](https://docs.tread.fi/self-hosted-service/aws-cdk#ssh-via-command-line) SSH via Command Line SSH requires a key file which can be retrieved from AWS Secrets Manager * There is a secret named `taas-core-db-credentials` * Look at the details and Click "Retrieve Secret Value" * Take the contents and put it into a file named "TAAS-keypair.pem" * `ssh -i "TAAS-keypair.pem" ubuntu@{your_instance_public_dns_name}` [](https://docs.tread.fi/self-hosted-service/aws-cdk#tear-down-infrastructure) Tear Down Infrastructure ------------------------------------------------------------------------------------------------------------ 1. Be in the right region and go to Cloudformation: ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F6eHNKMzpuXig7t3sldo8%2FScreenshot%25202023-10-26%2520at%252012.08.50%2520PM.png&width=768&dpr=4&quality=100&sign=2596dff8&sv=2) 1. Delete 4 stacks in this order: TaasPersistenceStack, TaasServiceStack, TaasVPCStack. TaasMonitoringStack can be deleted anywhere in the order. 2. Delete a stack by selecting the stack in the middle column and clicking the "Delete" button on the right. 3. Wait for it to complete before deleting the next one. 4. If it fails to delete, go into the "Events" tab on the right and send us the error message. We will troubleshoot from there. [PreviousHosting Recommendations](https://docs.tread.fi/self-hosted-service/hosting-recommendations) [NextApp Configurations](https://docs.tread.fi/self-hosted-service/app-configurations) Was this helpful? --- # App Configurations | tread.fi Documentation The app is configurable via environment variables that are sent through the setup API call post body. For example, if you want to configure the app port, the API call would look like this: Copy curl -fs -d '{ "license_key": "XXXX-XXXX-XXXX-XXXX" }' https://ktf83pe7y6.execute-api.us-east-1.amazonaws.com/beta/taas-distribution/setup-aio | bash [](https://docs.tread.fi/self-hosted-service/app-configurations#configuration-list) Configuration List ----------------------------------------------------------------------------------------------------------- ### [](https://docs.tread.fi/self-hosted-service/app-configurations#required) Required * _**license\_key**_ \- this is how you authenticate as a user of the app ### [](https://docs.tread.fi/self-hosted-service/app-configurations#optional) Optional Config Default Detail **version** "latest" Version of app being used, refer to release notes **market\_access\_version** "latest" Version of the market-access image responsible for sending and receiving info from the exchanges; no release notes yet, more info on this later but most of the time shouldn't need to change this **app\_port** "80" If you want to have the app listen to a different port **platform** "linux/amd64" Can be "linux/amd64" or "linux/arm64" set to match architecture of host. **domain\_name** "" Required for SSL: used to generate certificate Always used for CSRF and CORS allowlist **is\_ssl\_enabled** "true" If "true", it will setup an nginx reverse proxy that will automatically create an auto-renewing SSL certificate with let's encrypt. Requires connection to the public internet and the provided domain\_name to be created and pointing to the host. Will always redirect to the secure port 443. Requires port 80 and 443 to be open to the public internet. If "false", it will use a non\_secure nginx reverse proxy and only listen to app\_port. **admin\_email** "[\[email protected\]](https://docs.tread.fi/cdn-cgi/l/email-protection) " Recommended to set this if is\_ssl\_enabled is "true". This is the admin email for let's encrypt, where you will be sent updates on your certificate creation. **sign\_up\_enabled** "false" Enables sign ups on login page, you want to disable this if the app is open to the public. Enabled is "true" (not case-sensitive), disabled is any other value **use\_managed\_aws\_db** "false" Set to true if you want to use a managed AWS database (RDS) instead of the default postgres container. Recommended postgres version currently is 14. **db\_host** "db" Points to the local db container, set this value if you want to use an external db server (needs to be postgres) **db\_password** "" Set if you have a non AWS db that uses basic password auth. **db\_secret\_arn** "" There is currently only support for AWS secret manager secrets for external DB credentials, this is the secret ARN used **aws\_region** "" Used for integration with AWS, currently only necessary for the call to get the DB secret from AWS secret manager **use\_default\_aws\_logging** "false" Set to "true" if you want to send logs to AWS Cloudwatch with docker aws log driver Log groups with correct naming will be necessary or the docker services will not come up more on that [below](https://docs.tread.fi/self-hosted-service/app-configurations#aws-logging) **metrics\_enabled** "false" Set to "true" if you want to use AWS metrics and have the app send basic metrics on resource utilization and execution latency. cw\_user\_access\_key\_id and cw\_user\_access\_key\_secret parameters required. **cw\_user\_access\_key\_id** "" Only relevant if metrics\_enabled is "true". AWS user access key with Cloudwatch metric write permissions. **cw\_user\_access\_key\_secret** "" Only relevant if metrics\_enabled is "true". AWS user access secret with Cloudwatch metric write permissions. **redis\_url** "redis" Points to the local redis container, set this value if you want to use an external redis server **is\_testnet** "false" set to "true" if you want to connect to testnet/demo-trading/sandbox for all exchanges **client\_order\_id\_prefix** "TL" Prefix pre-pended to client order IDs of placements going out to exchanges. **telegram\_token** null Token given by Telegram's @BotFather [bot creation mechanism](https://core.telegram.org/bots/tutorial#getting-ready) . Note that it's only necessary to name your bot and obtain a token; no other interaction with @BotFather is necessary. **clean\_start** "false" set to "true" to directly cancel all open orders for all accounts on server start up. ### [](https://docs.tread.fi/self-hosted-service/app-configurations#aws-logging) AWS Logging If AWS logging is enabled, log groups with exact naming must be created in the same region as the app instance. Below is the list of log groups needed. Copy TaasWeb TaasPrices TaasOrdersBinance TaasOrdersBybit TaasOrdersOKX TaasOrdersCoinbase TaasOrdersDeribit TaasSmartOrderRouter TaasRePricer [PreviousAWS CDK](https://docs.tread.fi/self-hosted-service/aws-cdk) [NextTroubleshooting](https://docs.tread.fi/self-hosted-service/troubleshooting) Was this helpful? --- # Binance | tread.fi Documentation [](https://docs.tread.fi/connecting-to-exchanges/binance#prerequisites) Prerequisites ------------------------------------------------------------------------------------------ Before proceeding with API Key creation please ensure the following: 1. Ensure you have completed KYC Verification with Binance 2. Ensure you have enabled futures trading if you are going to be trading perpetual futures contracts. For more information please refer to this guide from [Binance](https://www.binance.com/en/support/faq/detail/360033772992) . 1. _**Please note:**_ _API Keys created before you have enabled futures trading on your Binance account will not allow you to enable futures trading for this key. You must have futures trading enabled on your Binance account before you create the key._ 3. Ensure you **do not** have Portfolio Margin enabled. 4. Ensure your account is funded. [](https://docs.tread.fi/connecting-to-exchanges/binance#api-key-creation) API Key Creation ------------------------------------------------------------------------------------------------ ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FjpryVJzpVy34WwG5JlBj%252FScreenshot%25202568-05-26%2520at%252010.48.51.png%3Falt%3Dmedia%26token%3Db4a357c6-7941-4ec2-8a26-ba1391be02b3&width=768&dpr=4&quality=100&sign=92fc438&sv=2) [Binance's API Management](https://www.binance.com/en/my/settings/api-management) #### [](https://docs.tread.fi/connecting-to-exchanges/binance#access-binance-api-management) Access Binance API Management * On Binance.com, Navigate to User Icon * Select Account * Select [API Management](https://www.binance.com/en/my/settings/api-management) * Select Create API #### [](https://docs.tread.fi/connecting-to-exchanges/binance#choose-api-key-type) Choose API Key Type * You will be prompted to choose the type of API Key. Select **System-generated** to automatically provide both the API Key and Secret Key and select next. * Set a Name for this API Key and proceed to 2-Factor Authentication #### [](https://docs.tread.fi/connecting-to-exchanges/binance#setting-permissions) Setting Permissions * Click **Edit Restrictions** * **Important:** Under **IP access restrictions,** select restrict access to trusted IPs only and paste in **54.238.80.239 and click confirm** * To verify this is the most up-to-date IP to whitelist, navigate to the tread.fi's API Key Management [page](https://app.tread.fi/key_management) . Make sure you have already created an acount and logged in. * Click Link Exchange API Key, the IP is located at the bottom of the Link API Key dialog box. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F1seYlGsq9pk51X92sDgJ%252FScreenshot%25202568-05-26%2520at%252011.11.42.png%3Falt%3Dmedia%26token%3D8f0842c4-6b03-4d96-8e3f-6c01403c1a81&width=768&dpr=4&quality=100&sign=4f4b36a4&sv=2) * After adding the IP address, you will now be able to edit the other API restrictions, enable the following: * Enable Reading * Enable Spot & Margin Trading * Enable Futures (if you intend to trade them) * Once complete click save and complete security verification requirements. ### [](https://docs.tread.fi/connecting-to-exchanges/binance#linking-api-key-to-tread.fi) Linking API Key to tread.fi ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FAHR340kVw1q5SfxTCxBH%252FScreenshot%25202568-08-04%2520at%252022.30.07.png%3Falt%3Dmedia%26token%3D7d3d37b5-6bb1-4830-802c-a6668f0f8e89&width=768&dpr=4&quality=100&sign=cad7816d&sv=2) * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect CEX Account * Select Binance from the Exchange dropdown * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from Binance into the respective boxes. * Enable the asset types you want to trade. * **Note:** If you did not enable these on Binance as mentioned in the previous step, these checkboxes will not allow you to trade those assets. * Click submit. [PreviousAster](https://docs.tread.fi/connecting-to-exchanges/aster) [NextBitget](https://docs.tread.fi/connecting-to-exchanges/bitget) Last updated 3 months ago Was this helpful? --- # Troubleshooting | tread.fi Documentation ### [](https://docs.tread.fi/self-hosted-service/troubleshooting#setup-issues) Setup Issues #### [](https://docs.tread.fi/self-hosted-service/troubleshooting#id-400-response-when-calling-deployment-api) 400 Response when calling deployment API Remove -fs in the `curl -fs -d ....` call to see the error message, there is likely missing required configuration. Ex. required configs for db setup is `db_host` , `db_secret_arn` , `aws_region` ### [](https://docs.tread.fi/self-hosted-service/troubleshooting#startup-issues) Startup Issues #### [](https://docs.tread.fi/self-hosted-service/troubleshooting#botocore.exceptions.nocredentialserror) botocore.exceptions.NoCredentialsError Assuming AWS RDS setup: Check that you can fetch aws secret manager via command line in the instance. If you can't, you need to add secretmanager permissions to your instance iam role. If you can, increase the hop limit on your instance: `aws ec2 modify-instance-metadata-options --instance-id i-XXXXXXXXXXXX --http-put-response-hop-limit 3` ### [](https://docs.tread.fi/self-hosted-service/troubleshooting#pulling-logs) Pulling Logs When things go wrong, cd to the folder with taas application docker-compose.yml file, and run below script to collect logs for investigation and restart the system. Copy #!/bin/bash # Check if the script is running in a folder with docker-compose.yml containing 'taas_app' if [ ! -f "docker-compose.yml" ]; then echo "docker-compose.yml file not found. Please cd to the appropriate folder with the latest taas_app docker-compose.yml file." exit 1 fi if ! grep -q "name: taas_app" docker-compose.yml; then echo "The docker-compose.yml file does not contain an entry with 'name: taas_app'. Please check the file and try again." exit 1 fi # Default output folder OUTPUT_DIR="/tmp" # Allow user to specify a different output folder if [ "$1" ]; then OUTPUT_DIR="$1" fi # Ensure the output directory exists mkdir -p "$OUTPUT_DIR" # Print message about output folder echo "Output will be saved to: $OUTPUT_DIR" # Check available disk space in the output folder AVAILABLE_SPACE=$(df --output=avail "$OUTPUT_DIR" | tail -1) if [ "$AVAILABLE_SPACE" -lt 1000000 ]; then echo "Not enough disk space in $OUTPUT_DIR. At least 1G is required." exit 1 fi # Check if gzip is available if ! command -v gzip &> /dev/null; then echo "gzip could not be found. Please install it and try again." exit 1 fi # Check if tar is available if ! command -v tar &> /dev/null; then echo "tar could not be found. Please install it and try again." exit 1 fi # Temp folder to hold individual logs TEMP_DIR="$(mktemp -d)" # Loop through containers starting with 'taas_app' for CONTAINER in $(docker ps -a --filter "name=taas_app" --format "{{.Names}}"); do echo "Processing logs for container: $CONTAINER" # Dump logs to a file LOG_FILE="$TEMP_DIR/$CONTAINER.log" docker logs "$CONTAINER" >& "$LOG_FILE" # Compress the individual log file gzip -9 "$LOG_FILE" done # Add timestamp to the final gzip archive TIMESTAMP=$(date +%Y%m%d%H%M%S) FINAL_TAR="$OUTPUT_DIR/taas_app_logs_$TIMESTAMP.tar" tar -cf "$FINAL_TAR" -C "$TEMP_DIR" . # Clean up temporary files rm -rf "$TEMP_DIR" # Inform about the compressed log file echo "Logs have been compressed and saved to: $FINAL_TAR" # Prompt user to confirm log collection echo "" echo "IMPORTANT: Please ensure you have copied the log files from: $FINAL_TAR" read -p "please confirm logs are copied and you want to continue to restart? (Y/y to continue): " LOG_COLLECTED # Validate user input case "$LOG_COLLECTED" in [yY]) # Perform docker-compose down and up with --remove-orphans echo "Restarting docker-compose services..." docker compose down --remove-orphans docker compose up -d echo "Restart is complete." ;; *) echo "Exiting the script, and restart is skipped. Log files are located at: $FINAL_TAR" exit 1 ;; esac [PreviousApp Configurations](https://docs.tread.fi/self-hosted-service/app-configurations) [NextManaged Service](https://docs.tread.fi/managed-service) Last updated 7 months ago Was this helpful? --- # Bitget | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/bitget#creating-a-bitget-api-key) Creating a Bitget API Key For API Key creation, please refer to Bitget's official [documentation](https://www.bitget.com/api-doc/common/quick-start) . ### [](https://docs.tread.fi/connecting-to-exchanges/bitget#linking-your-api-key-to-tread.fi) Linking Your API Key to tread.fi * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect CEX Account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FKyOTHm9e7hAMPCXczsg7%252FScreenshot%25202568-11-27%2520at%252014.18.48.png%3Falt%3Dmedia%26token%3Da4328cae-0956-414b-945f-593afa4ce17a&width=768&dpr=4&quality=100&sign=596447b6&sv=2) * Select Bitget from the Exchange dropdown * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from Bitget into the respective boxes. * Click submit. [PreviousBinance](https://docs.tread.fi/connecting-to-exchanges/binance) [NextBybit](https://docs.tread.fi/connecting-to-exchanges/bybit) Last updated 3 days ago Was this helpful? --- # Hyperliquid | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/hyperliquid#prerequisites) Prerequisites * Have a wallet linked to already linked to Hyperliquid. * **Only EVM wallets are supported. These include but are not limited to:** * Metamask * Ctrl Wallet * WalletConnect * OKX Wallet * Coinbase Wallet * At least **5 USDC deposited** in your **Hyperliquid trading Account.** ### [](https://docs.tread.fi/connecting-to-exchanges/hyperliquid#linking-your-hyperliquid-account) Linking Your Hyperliquid Account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FxQHMgqXCPjAdvPzvGl0u%252FScreenshot%25202568-08-04%2520at%252022.43.43.png%3Falt%3Dmedia%26token%3Dae63708e-1554-46aa-848e-3e01aa0a510e&width=768&dpr=4&quality=100&sign=4189410f&sv=2) **Open Up the** [**Key Management**](https://app.tread.fi/key_management) **menu on tread.fi** * This can be accessed by clicking on the wallet icon on the top right corner on app.tread.fi after you have logged in. **Link Exchange API Key** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FhMnkcwNmGJ4pRaYkT5R0%252FScreenshot%25202568-10-17%2520at%252010.51.27.png%3Falt%3Dmedia%26token%3D9ad33725-b158-49f8-b40c-4ef4df62f5db&width=768&dpr=4&quality=100&sign=7ed13682&sv=2) * Click **Connect Hyperliquid** * Set your desired name for this exchange account. * Connect the same wallet you used for your Hyperliquid account in the previous steps. * **Sub-account/Vault Toggle (Optional):** Toggling this allows you to connect and trade with specific sub-accounts or vaults. Simply toggle and input the Ethereum address of your sub-account/vault. * Click Submit and proceed with wallet signing and confirmation. ### [](https://docs.tread.fi/connecting-to-exchanges/hyperliquid#builder-fee-notice) Builder Fee Notice A 2 basis (0.02%) points builder fee applies to trades on tread.fi for connected Hyperliquid accounts. [PreviousGate](https://docs.tread.fi/connecting-to-exchanges/gate) [NextPacifica](https://docs.tread.fi/connecting-to-exchanges/pacifica) Last updated 1 month ago Was this helpful? --- # OKX | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/okx#create-a-sub-account-from-the-sub-accounts-page) Create a sub-account from the Sub-accounts page. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FMPzstGbsvkOlm6S72MK5%2FScreenshot%25202024-08-05%2520at%252012.07.07%25E2%2580%25AFPM.png&width=768&dpr=4&quality=100&sign=206fc3e0&sv=2) Click the "Create sub-accounts" button Name and configure the sub-account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fj2N0ou2v0YGcr9mLDgwm%2FScreenshot%25202024-08-05%2520at%252012.07.43%25E2%2580%25AFPM.png&width=768&dpr=4&quality=100&sign=6aff293e&sv=2) Create an API Key for this sub-account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F7DF8otm2hCr1aA2autIc%2FScreenshot%25202024-08-05%2520at%252012.08.35%25E2%2580%25AFPM.png&width=768&dpr=4&quality=100&sign=66b01631&sv=2) From the sub-accounts page, choose "Manage API" from the "Action" menu ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F3FbA41LPWjIT4bxC19Mv%2FScreenshot%25202024-08-05%2520at%252012.08.49%25E2%2580%25AFPM.png&width=768&dpr=4&quality=100&sign=9f779f0&sv=2) Click the "Create API" button In the Create APIs page, choose the sub-account you just created, making sure the Purpose is set to "API trading" and it has `Read` and `Trade` permissions. Add your TaaS server's IP address to the allowlist. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Flc5nsao3j5QFSpRKugDH%2FScreenshot%25202024-08-05%2520at%252012.21.37%25E2%2580%25AFPM.png&width=768&dpr=4&quality=100&sign=c27ac989&sv=2) Use this API key in TaaS to [connect](https://docs.tread.fi/connecting-to-exchanges) to OKX. ### [](https://docs.tread.fi/connecting-to-exchanges/okx#linking-your-api-key-to-tread.fi) Linking Your API Key to tread.fi ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FQjn3qziXZVYwn2SYYWCq%252FScreenshot%25202568-08-04%2520at%252022.40.36.png%3Falt%3Dmedia%26token%3D61c29b3e-0cdf-499d-9940-289d8292d81f&width=768&dpr=4&quality=100&sign=a2b9baa1&sv=2) * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect CEX Account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FuPq60zzE2nLHxxu2ufQ1%252FScreenshot%25202568-11-27%2520at%252010.12.14.png%3Falt%3Dmedia%26token%3D523a1619-422e-44c2-afed-aaf3a9f47d6b&width=768&dpr=4&quality=100&sign=d4c4a13a&sv=2) * Select OKX from the Exchange dropdown * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from OKX into the respective boxes. * Click submit. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcxPKL5LuLWoy8DhaDHamKZHxvlg_XxfPWItdQAsszl7-i0PaGiYD1VCKxBeewjJBQUxbITppwpIrG5JuE6TM_I9P4BPOEM7eijX6gi6DPdUrhHYBW1QDER5NuRZEBfkap2GxjrOICcVywn-NCJS7Oe01XN%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=ab29d448&sv=2) [PreviousDeribit](https://docs.tread.fi/connecting-to-exchanges/deribit) [NextGate](https://docs.tread.fi/connecting-to-exchanges/gate) Last updated 3 days ago Was this helpful? --- # Bybit | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/bybit#create-sub-account) Create sub-account #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#navigate-to-subaccounts) Navigate to Subaccounts * Once you’re logged in, navigate to your profile icon in the top-right corner. * Click ”Subaccounts” from the dropdown menu. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcMwHCTpFq1aaQSMOqT_fHYYwE1vPqE1zahyC0_vGJ0uO9p3ICt9czxLAqE1QkFmZFju9EhVik34Y2ZYb_d2x-vNSsOIvfRGEVVLH9S2Q_0Y7Qrn40nb7U-3r9vSlPhJc6494rUDVk5GnWcCIrkMU63Yuaq%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=2ebc201&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#create-a-new-sub-account) Create a New Sub-Account * On the Subaccount management page, click ”Create Subaccount”. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcwPyWe3JCAJIoaFnd8UmFHOrljRlRgdbAvST9tZ_ZnFAoGYmbnrV-t3Z4G21cqnYinFzGMAYccQ-QOXkXHEbcK6Ej-9lzZ6bUF8zreVDvJ-w2czqN7S1f_N5CVd864_mI5Zl7EGlq1nghEfApU8Az5b3XZ%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=ffecb94f&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#choose-standard-sub-account) Choose Standard Sub-Account * You will be prompted to select the sub-account type. Choose Standard Subaccount to allow for general-purpose use and trading. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfbN0MigddCxqHIjamzKv1F-a5n2Qjd6KzBm4CzOVxB8JDmfiVBGOGSBOE4QZF2PUvsW1Wf8YZvA1-UJ0npgYPmahoLsLSSqYYxnJAxJmIoybP13bBkvcwse_19ugTCE_OChJxD7rRB58qxhORYDZrUmQVF%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=5626d5a&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#set-up-sub-account-details) Set Up Sub-Account Details * Enter a nickname for your sub-account to help you easily identify it and click “Confirm”. * You also have the option to add and set a required password for this subaccount. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdnksU0b_faUS5dtMR1wYPO-k9DqtkYOgPmIRkSNDlikOrYZoLmuJhQu-iZt3tw8MPlKnuZmBY_ZgHbDD2yH5AiS__1FQtJWMqFvBuIyKDuX0OfsiHXEvIvuDvOCCxZG1JZEOe4QbhxXqPMh8lyGKMdpr4%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=91accbcb&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#complete-security-verification) Complete Security Verification * Complete the verification process by entering the code sent to your registered email. * If 2FA (Two-Factor Authentication) is enabled on your account, you’ll need to enter the authentication code as well. * Once done, click “Next Step”. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfPSkLylDNN1G3l1bV8HrhZB3VAilbaGz9rDwcFxFMlTZtu3bg8BZV_xU7m9w6Ob4BHnKWd3hOG959EczrDdNsH2jkUA8KwjLt2oFuQDlhRbu4CtFnkRmg1Miu6tCF4j0IibS_PTvvDNU74Q_lnADRoUNtr%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=d43a304&sv=2) ### [](https://docs.tread.fi/connecting-to-exchanges/bybit#create-api-key-for-sub-account) Create API Key for sub-account #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#navigate-to-api-management-via-subaccount) Navigate to API Management via Subaccount * Return to the Subaccounts section of your dashboard. * In the list, find the newly created subaccount. Next to the subaccount details, click on ”Management”. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcmiqFBSGkqsSgVKreEmz30HTVUmH-3ne6mLXanHAwgL_y4E9iyOJPfXxXzY5Cc8n_NodgYeV6xgNd3rzsl5NhQYDf6DjXssPdO09eCWSB7cskZ0lFUeQ3WD75w0ldLwlXnlgu70fHxm4vIuEyQLOBJQJg4%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=4cc0da01&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#create-new-api-key) Create New API Key * From the API Management section of your subaccount, click ”Create New Key” to initiate the creation of a new API key. #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#choose-api-key-type) Choose API Key Type * Select System-generated API Keys to automatically provide both the API Key and Secret Key, offering a secure and hassle-free setup recommended for most users. #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#configure-api-key-settings) Configure API Key Settings * Specify the key's name * Choose the API key permissions: * `Read-Write` * Select "Only IPs with permissions granted are allowed to access the OpenAPI" and enter the TaaS server's IP address: `54.238.80.239` * This IP address can be located: app.tread.fi , selecting the wallet icon, and Connect CEX Account. * Once configured, click "Submit". ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fv08hndXPvSSgQmgGTg2N%2Fimage.png&width=768&dpr=4&quality=100&sign=40716787&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#security-verification) Security Verification * Enter the 2FA code for security verification to proceed with the API key creation. #### [](https://docs.tread.fi/connecting-to-exchanges/bybit#review-and-confirm) Review and Confirm * Review all details and click "Understood" to finalize your API key setup. Keep your API key and secret confidential. ### [](https://docs.tread.fi/connecting-to-exchanges/bybit#linking-api-key-to-tread.fi) Linking API Key to tread.fi ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FMQI0HT8tgrfsDoVfb7Ek%252FScreenshot%25202568-08-04%2520at%252022.32.05.png%3Falt%3Dmedia%26token%3D896c9f66-f13e-42d1-a4f8-67ec8d380cd2&width=768&dpr=4&quality=100&sign=1bf4931&sv=2) * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect CEX Account ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FAos98FkcVRO6bmZZAC7y%252FScreenshot%25202568-08-04%2520at%252022.32.58.png%3Falt%3Dmedia%26token%3Dd2a0b419-fe5f-459e-b483-d67ce8c1e8ba&width=768&dpr=4&quality=100&sign=f89aa221&sv=2) * Select Bybit from the Exchange dropdown * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from Bybit into the respective boxes. * Click submit. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcxPKL5LuLWoy8DhaDHamKZHxvlg_XxfPWItdQAsszl7-i0PaGiYD1VCKxBeewjJBQUxbITppwpIrG5JuE6TM_I9P4BPOEM7eijX6gi6DPdUrhHYBW1QDER5NuRZEBfkap2GxjrOICcVywn-NCJS7Oe01XN%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=ab29d448&sv=2) [PreviousBitget](https://docs.tread.fi/connecting-to-exchanges/bitget) [NextDeribit](https://docs.tread.fi/connecting-to-exchanges/deribit) Last updated 3 months ago Was this helpful? --- # Pre-Trade Analytics | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F7t2XxoMpLTOoUUSZLbbz%2Fimage.png&width=768&dpr=4&quality=100&sign=3f033729&sv=2) Pre-trade Analytics After entering your order details (pair, size, and exchange), the **Pre-Trade Analytics** section provides estimated metrics to help assess market conditions before execution. **Participation Rate** This metric estimates the percentage of total market volume your order is expected to represent over its duration. A higher participation rate may indicate a greater potential market impact. Hover over the term in the platform to see a definition and insights on how trading speed can affect market impact. **Market Volatility** This represents the **historical realized volatility** of the selected pair on your chosen exchange, extrapolated over the order duration. The estimate accounts for natural market fluctuations within a **1 standard deviation confidence interval**. Longer-duration orders are generally exposed to more volatility. **Market Volume** This metric compares **realized market volume** over the past 24 hours against expected seasonal trends (e.g., time of day, day of the week). It helps determine whether current market activity is above or below typical levels. These insights provide a clearer picture of how your order might interact with market conditions before execution. [PreviousOrder Templates](https://docs.tread.fi/submitting-orders/order-templates) [NextStrategies](https://docs.tread.fi/strategies) Last updated 9 months ago Was this helpful? --- # Deribit | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/deribit#create-sub-account) Create sub-account #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#navigate-to-subaccounts) Navigate to Subaccounts * Once you’re logged in, navigate to your profile icon in the top-right corner. * Click ”Subaccounts” from the dropdown menu. #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#create-a-new-subaccount) Create a New Subaccount * On the Subaccounts page, click ”Add a New Subaccount”. #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#edit-a-new-subaccount) Edit a New Subaccount * Find the newly created subaccount. Next to the subaccount details, click on the pencil icon. #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#separate-login-details-for-subaccounts) Separate login details for subaccounts * Add email address/change name of the account/allows separate login/set a password/email address notifications and margin warnings/set up two factor authentication for the subaccount. ### [](https://docs.tread.fi/connecting-to-exchanges/deribit#create-api-key-for-sub-account) Create API key for sub-account #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#access-api-management) Access API Management * On the API Management screen, click "ADD NEW KEY". #### [](https://docs.tread.fi/connecting-to-exchanges/deribit#configure-api-key-settings) Configure API Key Settings * Set Account to `read` * Set Trade to `read_write` * Enter the IP address of the TaaS server to restrict API access using this key to requests coming from its address: `54.238.80.239` * Once done, click "Create a new API key". ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F4SlksRHfENIvpOuXp4kS%2Fimage.png&width=768&dpr=4&quality=100&sign=9db204a0&sv=2) ### [](https://docs.tread.fi/connecting-to-exchanges/deribit#linking-api-key-to-tread.fi) Linking API Key to tread.fi ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FMQI0HT8tgrfsDoVfb7Ek%252FScreenshot%25202568-08-04%2520at%252022.32.05.png%3Falt%3Dmedia%26token%3D896c9f66-f13e-42d1-a4f8-67ec8d380cd2&width=768&dpr=4&quality=100&sign=1bf4931&sv=2) * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect CEX Account * Select Deribit from the Exchange dropdown * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from Deribit into the respective boxes. * Click submit. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcxPKL5LuLWoy8DhaDHamKZHxvlg_XxfPWItdQAsszl7-i0PaGiYD1VCKxBeewjJBQUxbITppwpIrG5JuE6TM_I9P4BPOEM7eijX6gi6DPdUrhHYBW1QDER5NuRZEBfkap2GxjrOICcVywn-NCJS7Oe01XN%3Fkey%3D0Y_t4MkkxDXunkOK3-fvXw&width=768&dpr=4&quality=100&sign=ab29d448&sv=2) [PreviousBybit](https://docs.tread.fi/connecting-to-exchanges/bybit) [NextOKX](https://docs.tread.fi/connecting-to-exchanges/okx) Last updated 3 months ago Was this helpful? --- # OOL Pause | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FEAi5ZQqXlfpGmF5fX232%2Fimage.png&width=768&dpr=4&quality=100&sign=80d4d993&sv=2) Limit Price with OOL Pause Enabled Out-of-Limit (OOL) Pause is a configuration that controls how the engine handles periods when the market price moves outside the specified limit price. ### [](https://docs.tread.fi/submitting-orders/ool-pause#how-it-works) **How It Works** * When OOL Pause is **enabled**, the engine will pause execution when the market price is outside the limit price. These periods are not included in the execution schedule. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FgZXC3EFGvz84xvezQzUq%2Fimage.png&width=768&dpr=4&quality=100&sign=e180333e&sv=2) Execution with OOL Pause Enabled * When OOL Pause is **disabled**, the engine will attempt to "catch up" after a period when the market was outside the limit price, resuming execution to meet the original schedule. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FVdoEMQqRbk9vBbvvy4I5%2Fimage.png&width=768&dpr=4&quality=100&sign=1635030b&sv=2) Execution with OOL Pause Disabled ### [](https://docs.tread.fi/submitting-orders/ool-pause#considerations) **Considerations** * Compatibility: OOL Pause cannot be used with strategies that target a participation rate, such as Target Participation Rate, Market Maker, and Aggressive Maker. * Default Setting: This configuration is disabled by default. [PreviousDynamic Limit Price](https://docs.tread.fi/submitting-orders/dynamic-limit-price) [NextParticipation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) Was this helpful? --- # Pair Naming | tread.fi Documentation Our pair naming is structured to clearly show its characteristics. Knowing the naming structure is crucial for interacting with the API. BASE↓BTC:VARIANT↓PERP−QUOTE↓USDT\\begin{array}{c} \\text{BASE} \\\\ \\downarrow \\\\ \\text{BTC} \\end{array} \\quad : \\quad \\begin{array}{c} \\text{VARIANT} \\\\ \\downarrow \\\\ \\text{PERP} \\end{array} \\quad - \\quad \\begin{array}{c} \\text{QUOTE} \\\\ \\downarrow \\\\ \\text{USDT} \\end{array} BASE↓BTC​:VARIANT↓PERP​−QUOTE↓USDT​ ### [](https://docs.tread.fi/submitting-orders/pair-naming#examples) Examples #### [](https://docs.tread.fi/submitting-orders/pair-naming#spot) Spot Copy BTC-USDT The **Variant** is omitted. #### [](https://docs.tread.fi/submitting-orders/pair-naming#perpetual-future) Perpetual Future Copy ETH:PERP-USDT Inverse perps generally have USD as quote value #### [](https://docs.tread.fi/submitting-orders/pair-naming#dated-future) Dated Future Copy SOL:FUTURE_2025.03.28-USDC The **Variant** always starts with **FUTURE\_** and ends with date: **YYYY.MM.DD** #### [](https://docs.tread.fi/submitting-orders/pair-naming#option) Option BASE↓BTC:TYPE↓CALL@STRIKE↓98000\_EXPIRY↓2024.11.22−QUOTE↓USDT\\begin{array}{c} \\text{BASE} \\\\ \\downarrow \\\\ \\text{BTC} \\end{array} \\quad : \\quad \\begin{array}{c} \\text{TYPE} \\\\ \\downarrow \\\\ \\text{CALL} \\end{array} \\quad @ \\quad \\begin{array}{c} \\text{STRIKE} \\\\ \\downarrow \\\\ \\text{98000} \\end{array} \\quad \\\_ \\quad \\begin{array}{c} \\text{EXPIRY} \\\\ \\downarrow \\\\ \\text{2024.11.22} \\end{array} \\quad - \\quad \\begin{array}{c} \\text{QUOTE} \\\\ \\downarrow \\\\ \\text{USDT} \\end{array} BASE↓BTC​:TYPE↓CALL​@STRIKE↓98000​\_EXPIRY↓2024.11.22​−QUOTE↓USDT​ The **Variant** has a more complex structure: `TYPE``@``STRIKE``_``EXPIRY` [PreviousAlgo Swap Mode](https://docs.tread.fi/submitting-orders/algo-swap-mode) [NextDynamic Limit Price](https://docs.tread.fi/submitting-orders/dynamic-limit-price) Was this helpful? --- # Participation Rate Target | tread.fi Documentation The **Participation Rate Target** defines the **desired rate at which an order participates in market volume**. The engine dynamically **adjusts execution** to match this target, ensuring steady participation based on **real-time market conditions**. #### [](https://docs.tread.fi/submitting-orders/participation-rate-target#how-it-works) **How It Works** * **Set as a percentage of total market volume**—e.g., a 10% participation rate means the order aims to execute 10% of all market volume over time. * The engine uses a mix of **passive and aggressive child orders** to stay on target. * **Pre-Trade Analytics** estimates the expected time to completion, but actual execution varies **based on market conditions**. #### [](https://docs.tread.fi/submitting-orders/participation-rate-target#considerations) **Considerations** * **Market-Dependent Execution** – Time to fill may **extend or shorten** depending on liquidity and market activity. * **Flexible Strategy** – The engine **adjusts execution aggressiveness** dynamically if it starts falling behind the target participation rate. This setting is ideal for traders who want **consistent market presence** while maintaining **control over execution speed and market impact**. [PreviousOOL Pause](https://docs.tread.fi/submitting-orders/ool-pause) [NextOrder Templates](https://docs.tread.fi/submitting-orders/order-templates) Last updated 9 months ago Was this helpful? --- # Pacifica | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges/pacifica#prerequisites) Prerequisites * **Only Solana wallets are supported.** ### [](https://docs.tread.fi/connecting-to-exchanges/pacifica#linking-your-pacifica-account) Linking Your Pacifica Account **Open Up the** [**Key Management**](https://app.tread.fi/key_management) **menu on tread.fi** * This can be accessed by clicking on the wallet icon on the top right corner on app.tread.fi after you have logged in. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FEH0yGQWIy4FQHzmPsMUf%252FScreenshot%25202568-10-29%2520at%252015.35.22.png%3Falt%3Dmedia%26token%3D6d6d7305-45e4-43d0-af13-fb46b61104cc&width=768&dpr=4&quality=100&sign=71bba7fa&sv=2) **Link Exchange API Key** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FwhmYAPWDkiOGrpVTsWQp%252FScreenshot%25202568-10-29%2520at%252015.36.07.png%3Falt%3Dmedia%26token%3D899e4d12-371d-40c7-95a9-60c2ea8498c3&width=768&dpr=4&quality=100&sign=c4d991e&sv=2) * Click **Connect Pacifica** * Set your desired name for this exchange account. * Connect the same wallet you used to create your Pacifica account. * Click Submit and proceed with wallet signing and confirmation. ### [](https://docs.tread.fi/connecting-to-exchanges/pacifica#builder-fee-notice) Builder Fee Notice A 2 basis (0.02%) points builder fee applies to Pacifica trades executed via our tread.fi [PreviousHyperliquid](https://docs.tread.fi/connecting-to-exchanges/hyperliquid) [NextParadex](https://docs.tread.fi/connecting-to-exchanges/paradex) Last updated 6 days ago Was this helpful? --- # Gate | tread.fi Documentation #### [](https://docs.tread.fi/connecting-to-exchanges/gate#create-new-api-key) Create New API Key ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FqLyClukCydU2ggo95cxZ%252Fimage.png%3Falt%3Dmedia%26token%3Dc9c06cd0-d74f-4279-815e-496b8cdd95b7&width=768&dpr=4&quality=100&sign=37e3488c&sv=2) * To create an API Key on Gate, navigate to your profile and select [API Key Management.](https://www.gate.com/myaccount/profile/api-key/manage) * From the API Key Management page, click **Create API Key** . #### [](https://docs.tread.fi/connecting-to-exchanges/gate#configure-api-key-settings) Configure API Key Settings ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FHQBLxsScOU6Zyskdj8B0%252FScreenshot%25202568-07-29%2520at%252016.42.01.png%3Falt%3Dmedia%26token%3D95574504-dceb-483e-a120-bd3888e42ff5&width=768&dpr=4&quality=100&sign=355a5bb4&sv=2) * Specify the key's name for your own reference * Whitelist the following IP: `54.238.80.239` * Set API Key Type as API v4 Key (Default) * Set Account Type as Trading Account (Default) * Toggle on `Spot` and `Account` and set their permissions as `Read and Write` * Note: None of the other permissions listed (like Perpetual Futures, Wallet, Withdraw, etc.) are necessary, as our integration with Gate.io is exclusively for spot trading and does not involve managing wallets or withdrawals. * Once configured, click "Submit" and proceed with your Security Verification #### [](https://docs.tread.fi/connecting-to-exchanges/gate#linking-your-api-key-to-tread.fi) Linking your API Key to tread.fi * Navigate to tread.fi's [Key Management](https://app.tread.fi/key_management) menu by clicking the wallet icon on the top right. * Click **Connect CEX ACcount** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FrrnfdRmzxh9I9ZEEfyVy%252FScreenshot%25202568-08-04%2520at%252022.42.12.png%3Falt%3Dmedia%26token%3D1ec09a99-23cb-433b-bfa9-1661f0ac38b8&width=768&dpr=4&quality=100&sign=d679aa64&sv=2) * Select Gate from the dropdown * Copy your newly created Gate Key and paste into API Key * Copy and paste in your API Secret * Click Submit [PreviousOKX](https://docs.tread.fi/connecting-to-exchanges/okx) [NextHyperliquid](https://docs.tread.fi/connecting-to-exchanges/hyperliquid) Last updated 3 months ago Was this helpful? --- # Explore | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FXXb2I14SsyU0XeSKlyBd%252FScreenshot%25202568-05-13%2520at%252016.55.56.png%3Falt%3Dmedia%26token%3D87420913-561e-43f8-8680-a4349d721bec&width=768&dpr=4&quality=100&sign=68856e97&sv=2) Your dashboard for live market insights and idea generation. Move from analysis to placing trades in one click. #### [](https://docs.tread.fi/explore#key-features) Key Features **Watchlist:** Track your favorite pairs with live price and volume updates. Sort by volume or price change for quick access. **Top Volume (Perp & Spot):** See the highest-volume pairs in perpetual and spot markets, with color-coded price indicators. **Top Gainers & Losers:** Find the day’s best and worst performers in real time, with percentage changes and a visual heat map. **Click to Trade:** Open any pair in the order interface with a single click. **Funding Rates:** Compare rates across exchanges, filter by token or timeframe, sort results, and mark favorites. Start arbitrage trades directly from this view. [PreviousUse Cases and Best Practices](https://docs.tread.fi/scale-orders/use-cases-and-best-practices) [NextMulti/Spread Orders](https://docs.tread.fi/multi-spread-orders) Last updated 6 months ago Was this helpful? --- # Connecting to Exchanges | tread.fi Documentation ### [](https://docs.tread.fi/connecting-to-exchanges#supported-exchanges) Supported Exchanges * [Aster](https://docs.tread.fi/connecting-to-exchanges/aster) * [**Binance**](https://docs.tread.fi/connecting-to-exchanges/binance) * [Bitget](https://docs.tread.fi/connecting-to-exchanges/bitget) * [**Bybit**](https://docs.tread.fi/connecting-to-exchanges/bybit) * [**Deribit**](https://docs.tread.fi/connecting-to-exchanges/deribit) * [**OKX**](https://docs.tread.fi/connecting-to-exchanges/okx) * [**OKXDEX**](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup) * [**Gate**](https://docs.tread.fi/connecting-to-exchanges/gate) * [**Hyperliquid**](https://docs.tread.fi/connecting-to-exchanges/hyperliquid) * [Pacifica](https://docs.tread.fi/connecting-to-exchanges/pacifica) * [Paradex](https://docs.tread.fi/connecting-to-exchanges/paradex) * Coinbase Exchange (distinct from retail Coinbase) Please refer to the comprehensive list [below](https://docs.tread.fi/connecting-to-exchanges#supported-exchanges-products-and-account-types) for details on supported exchanges, products, and account types available for each corresponding exchange. **Prerequisite.** You must first create an API key for the exchanges you wish to trade on. Refer to the exchange's specific instructions above. ### [](https://docs.tread.fi/connecting-to-exchanges#linking-to-exchanges-on-tread.fi) Linking to Exchanges on tread.fi ### [](https://docs.tread.fi/connecting-to-exchanges#connecting-your-keys) Connecting Your Keys 1. Access the **Key Management** menu by clicking the wallet icon on the top right. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FD9wbL2lxelWszHmokrjy%252FScreenshot%25202568-08-04%2520at%252015.54.27.png%3Falt%3Dmedia%26token%3D328fb2db-cc62-40a4-beab-225384707202&width=768&dpr=4&quality=100&sign=f7944a10&sv=2) 1. Select the type of exchange you would like to connect from the bottom right corner of the menu. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FRDVCPxkfASEQsDqr4xbI%252FScreenshot%25202568-08-08%2520at%252010.15.34.png%3Falt%3Dmedia%26token%3Deb90a8b0-8b59-4a59-aa74-49487602a44c&width=768&dpr=4&quality=100&sign=34c87045&sv=2) 1. Enter the required API credentials. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FdD9sqw8Lb7CBe1EtPZAD%252FScreenshot%25202568-08-08%2520at%252011.25.47.png%3Falt%3Dmedia%26token%3D4287c5b2-0f80-4489-b26d-3b1bd437c3c8&width=768&dpr=4&quality=100&sign=a4ce78be&sv=2) **Important:** * For Centralized Exchanges (CEX), you must whitelist our IP Address, please follow the steps to find the I.P. address to whitelist. * To do this, copy and paste the IP address displayed on the screen into the respective Exchange's API Management section. Once your keys are successfully connected, they will appear in your list of accounts on the **Key Management** page and the **Portfolio** page. [](https://docs.tread.fi/connecting-to-exchanges#authorized-groups-institutional-plan-only) Authorized Groups (Institutional Plan Only) -------------------------------------------------------------------------------------------------------------------------------------------- Superuser accounts can assign API keys to specific user groups. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FsrG5w4xGaWRO3oIRSivU%2Fimage.png&width=768&dpr=4&quality=100&sign=b0330f7&sv=2) 1. Click **Admin Panel** from the account menu on the upper right. 2. Navigate to the **Assign Permissions** section. 3. Assign accounts to the appropriate user groups. Users in authorized groups can now see balances and trade using the permissioned accounts. The authorized key will be displayed as `/`. To revoke authorization, delete the permission row from the **Admin Panel** for the specific group and account. ### [](https://docs.tread.fi/connecting-to-exchanges#supported-exchanges-products-and-account-types) Supported Exchanges, Products and Account Types Exchange Supported Asset Classes Supported Account Types Notes Aster Perps Binance Spot Perpetual Futures Options `SPOT` `PERP` `OPTION` Binance PM (Portfolio Margin) `PORTFOLIO_MARGIN` Binance Portfolio Margin uses a distinct set of API endpoints, known as PAPI endpoints, which are separate from the regular Spot, Margin, and Futures APIs used on standard Binance accounts, and therefore it is treated as a separate exchange integration. Bitget Spot Margin USDT Futures USDC Futures COIN Futures * Unified * Spot * Margin * Future * Perp Bybit Spot Perpetual Futures `Unified Margin` Deribit Spot Perpetual Futures Dated Futures Options `Cross Margin` Coinbase Exchange Spot `SPOT` Margin/Leverage **not supported** Note: Coinbase Exchange is not to be confused with the retail Coinbase App/Platform. OKX Spot Perpetual Futures Options `CROSS` (default) `ISOLATED` `CASH` `SPOT_ISOLATED` Quantities on OKX are adjusted to be 1:1 with base asset quantity. There is no need to convert to contract size. Margin mode is configurable with the `margin_mode` parameter. OKXDEX Spot (DEX Contract Addresses) Please refer to specific DEX-specific [documentation](https://docs.tread.fi/dex-trading) Gate.io Spot Perpetual Futures `SPOT` `PERP` `UNIFIED` Futures/unified accounts are configurable in-app Hyperliquid Spot Perpetual Futures `CROSS` Connect via wallet-connection only instead of API Keys. Ensure your Hyperliquid account has funds before connecting. Visit Hyperliquid to deposit if needed. Bitget Spot `SPOT` Accounts can be linked to track portfolio but trading is not yet supported Pacifica Perps Paradex Perps `CROSS` [PreviousAWS CDK](https://docs.tread.fi/managed-service/aws-cdk) [NextAster](https://docs.tread.fi/connecting-to-exchanges/aster) Last updated 3 days ago Was this helpful? --- # Paradex | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FN4GENOxXDXozSUFmWXKH%252Ftreadfiparadex.jpg%3Falt%3Dmedia%26token%3D8acadfab-f2a2-4e52-a615-15ffb1148e53&width=768&dpr=4&quality=100&sign=4218b356&sv=2) ### [](https://docs.tread.fi/connecting-to-exchanges/paradex#linking-your-pacifica-account) Linking Your Pacifica Account **Open Up the** [**Key Management**](https://app.tread.fi/key_management) **menu on tread.fi** * This can be accessed by clicking on the wallet icon on the top right corner on app.tread.fi after you have logged in. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F3TY6K1zVOcbKFidB61b9%252FScreenshot%25202568-11-07%2520at%252015.50.32.png%3Falt%3Dmedia%26token%3Dfa201315-6f53-4bed-a5af-7f159ce55e4e&width=768&dpr=4&quality=100&sign=fc53560d&sv=2) **Link Exchange API Key** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FLQY7XrQ1cPNDqyRUdZ6C%252FScreenshot%25202568-11-24%2520at%252011.43.44.png%3Falt%3Dmedia%26token%3Dacb8410c-fd3b-47ec-9553-6ac2cd9093a8&width=768&dpr=4&quality=100&sign=794be851&sv=2) 1. Click **Connect Paradex**. 2. (Optional) Set a reference name for this exchange account. 3. Click **Connect** and use the same wallet as your Paradex account. 4. If you don't have a Paradex account, sign up through our signup link. [PreviousPacifica](https://docs.tread.fi/connecting-to-exchanges/pacifica) [NextSubmitting Orders](https://docs.tread.fi/submitting-orders) Last updated 6 days ago Was this helpful? --- # Trajectories | tread.fi Documentation In **tread.fi**, **trajectories** define **how orders are executed over time**, shaping how trades interact with **market conditions**. Each trajectory provides a **foundational execution approach**, and [**strategies**](https://docs.tread.fi/strategies) are built on top of these trajectories, applying specific configurations to achieve different **trading objectives**. #### [](https://docs.tread.fi/trajectories#the-four-primary-execution-trajectories) **The Four Primary Execution Trajectories** 1. **VWAP (Volume Weighted Average Price)** * Adjusts execution **based on market volume**, ensuring orders **scale with liquidity**. * Suitable for traders aiming to **minimize market impact** while maintaining a presence in the order flow. 2. **TWAP (Time Weighted Average Price)** * Executes orders at a **fixed, consistent rate** over time, **ignoring market volume fluctuations**. * Useful for traders seeking **steady execution** with a predictable trading footprint. 3. **Target Time** * Concentrates execution **around a specific future event**, ensuring the bulk of the trade occurs **near the designated time**. * Ideal for **event-driven trading strategies** that require **precise timing**. #### [](https://docs.tread.fi/trajectories#choosing-the-right-trajectory) **Choosing the Right Trajectory** Each trajectory serves a different purpose, and selecting the right one depends on **trading objectives, market conditions, and risk tolerance**. Strategies in **tread.fi** leverage these trajectories, applying **advanced configurations** to fine-tune execution behavior. [PreviousIceberg](https://docs.tread.fi/strategies/iceberg) [NextVWAP](https://docs.tread.fi/trajectories/vwap) Last updated 6 months ago Was this helpful? --- # VWAP | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXewzBll5bzWDPpWvY2JGGzfWsmcztUG-6Q5MrHgfc6x70c8iy4VGuwdqTdcaW4ct6Y17aF3QVwnldCr_WhQlwdAD5CfQBxElzFwbTqSK2CXmemX0NVnvbp7R6GvZ58AcEUrlBMCzw%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=b6eb58ba&sv=2) Example of VWAP Trajectory The **VWAP trajectory** aims to **match the market’s volume-weighted average price** over the order duration. It dynamically **adjusts execution based on market volume**, ensuring **steady participation while minimizing market impact**. #### [](https://docs.tread.fi/trajectories/vwap#how-it-works) **How It Works** * The engine **monitors real-time market volume** and adjusts order execution accordingly. * Trades are executed **more aggressively during high-volume periods** and **more passively during low-volume periods**. * This **dynamic adjustment** helps maintain **steady market participation** while reducing **price disruption**. #### [](https://docs.tread.fi/trajectories/vwap#when-to-use-vwap) **When to Use VWAP** * **For gradual execution** of orders over an extended period. * **To minimize market impact** by distributing execution across **liquid trading periods**. * **Best suited for liquid, predictable markets** with stable trading activity. * **For volume-based execution** that dynamically adjusts to market conditions. #### [](https://docs.tread.fi/trajectories/vwap#vwap-limitations) **VWAP Limitations** * **Delayed execution in low-volume periods** may lead to **alpha decay**. * **Limited response to sudden liquidity events**, as VWAP **relies on historical volume patterns** rather than real-time market shifts. This trajectory is ideal for traders who **want to execute large orders discreetly** while maintaining **a strong correlation with overall market activity**. [PreviousTrajectories](https://docs.tread.fi/trajectories) [NextTWAP](https://docs.tread.fi/trajectories/twap) Last updated 9 months ago Was this helpful? --- # Dynamic Limit Price | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fx0BleuCY1HrIDUigXWku%2Fimage.png&width=768&dpr=4&quality=100&sign=468fea0d&sv=2) Dynamic Limit Price allows you to set limit orders that automatically adjust based on real-time market conditions. Instead of using a static limit price, this feature recalculates the limit price approximately every five seconds, ensuring that orders remain aligned with market movements. ### [](https://docs.tread.fi/submitting-orders/dynamic-limit-price#how-it-works) How It Works Traders can configure a Dynamic Limit Price using two modes: Pair Offset and Custom. Pair Offset Custom Offset ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fyufp0EffidW6k8AtXMJM%2FDynamic%2520Limit%2520Price.png&width=768&dpr=4&quality=100&sign=de4746b8&sv=2) Pair Offset * This mode sets the limit price relative to another trading pair on any venue. * It is particularly useful for some arbitrage strategies, ensuring orders are placed only when a favorable price discrepancy exists. * The Offset field allows traders to set a positive or negative price adjustment. * The calculated dynamic limit price is displayed in the preview box and updates automatically every five seconds. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fuc9Iy9yNrTjxRwJLgtXI%2FDynamic%2520Limit%2520Price.png&width=768&dpr=4&quality=100&sign=bb8c9807&sv=2) Custom Offset * This mode allows traders to define a **custom pricing logic** that adjusts dynamically based on their specific criteria. * Syntax and capabilities are aligned with [conditional orders](https://docs.tread.fi/conditional-order) (without variable tracking). * This provides additional flexibility, allowing traders to fine-tune execution conditions beyond standard pair-based offsets. This feature is particularly valuable for traders engaging in algorithmic execution and spread trades where precise limit order placement is critical. By leveraging Dynamic Limit Price, traders can improve execution quality while maintaining greater control over price-sensitive trades. [PreviousPair Naming](https://docs.tread.fi/submitting-orders/pair-naming) [NextOOL Pause](https://docs.tread.fi/submitting-orders/ool-pause) Last updated 3 months ago Was this helpful? --- # Aster | tread.fi Documentation [](https://docs.tread.fi/connecting-to-exchanges/aster#api-key-creation) API Key Creation ---------------------------------------------------------------------------------------------- ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FHG5Brb480736ResrF2dR%252FScreenshot%25202568-10-21%2520at%252011.46.53.png%3Falt%3Dmedia%26token%3D7c98af0f-eaad-4916-9587-b2f864873897&width=768&dpr=4&quality=100&sign=2407fbd9&sv=2) #### [](https://docs.tread.fi/connecting-to-exchanges/aster#access-aster-api-management) Access Aster API Management * On Aster, Navigate to 'More' * Select [API Management](https://www.binance.com/en/my/settings/api-management) ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FgDnsmmf08go6FFRSo1xh%252FScreenshot%25202568-10-21%2520at%252011.47.23.png%3Falt%3Dmedia%26token%3Dbc2d09f2-3f5e-4b43-a4cb-19e90a113a17&width=768&dpr=4&quality=100&sign=1a45ddfb&sv=2) * Select Create API (API will suffice, no need for Pro API) * Set a name for your own reference. #### [](https://docs.tread.fi/connecting-to-exchanges/aster#important-whitelisting-ip-address) \[IMPORTANT\] Whitelisting IP Address * Under **IP access restrictions,** select restrict access to trusted IPs only and paste in **54.238.80.239 and click confirm** * To verify this is the most up-to-date IP to whitelist, navigate to the tread.fi's [Key Management](https://docs.tread.fi/connecting-to-exchanges/aster#linking-api-key-to-tread.fi) menu by clicking on the wallet icon on the top and clicking on connect Connect Aster Wallet. Make sure you have already created an acount and logged in. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FpSLDWZ6dg0lgjWdcAgkP%252FScreenshot%25202568-10-21%2520at%252011.52.31.png%3Falt%3Dmedia%26token%3De03be67c-5ba6-4837-8797-40de496b861e&width=768&dpr=4&quality=100&sign=c8024267&sv=2) * After adding the IP address, you will now be able to edit the other API restrictions, navigate to app.tread.fi ### [](https://docs.tread.fi/connecting-to-exchanges/aster#linking-api-key-to-tread.fi) Linking API Key to tread.fi ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FRTf6lQBIn5yHdtv6QfCi%252FScreenshot%25202568-10-21%2520at%252011.54.23.png%3Falt%3Dmedia%26token%3D01900573-79f7-4c8d-8b1b-afb1016172c3&width=768&dpr=4&quality=100&sign=21160505&sv=2) * Open up tread's Key Management menu. From the app.tread.fi home page, it can be accessed by clicking on the wallet icon on the top right. * Click Connect Aster Account * Set a name for this key for your own reference. * Copy and Paste the API Key and Secret from Aster into the respective boxes. * Click submit. [PreviousConnecting to Exchanges](https://docs.tread.fi/connecting-to-exchanges) [NextBinance](https://docs.tread.fi/connecting-to-exchanges/binance) Last updated 1 month ago Was this helpful? --- # Exposure Tolerance | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FOU5UCd34z7bKXZApSCjj%2Fimage.png&width=768&dpr=4&quality=100&sign=61df000a&sv=2) Exposure Tolerance Setting **Exposure Tolerance** is an **execution control feature** that **adjusts the pace of execution** between legs in **spread trades**, preventing one side from **filling significantly faster than the other**. Instead of reactively sending **aggressive orders** to balance the legs, the system **proactively modifies execution schedules** to ensure the spread remains within **desired limits**. This helps reduce **unnecessary market exposure**, **minimize slippage**, and **maintain strategic balance**. ### [](https://docs.tread.fi/multi-spread-orders/exposure-tolerance#key-benefits) **Key Benefits** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FosxSvEYx4ugRYt6gO4nF%252Fimage.png%3Falt%3Dmedia%26token%3D8b0ad8f4-f5bf-4d7c-99f7-e9ecc27f7a38&width=768&dpr=4&quality=100&sign=84689f3f&sv=2) Net exposure during execution * **Optimized Spread Execution** – Ensures that **one leg doesn’t outpace the other**, reducing unwanted exposure and maintaining more accurate spread pricing. * **Control and Predictability** – Provides traders with **better control** over trade execution, improving predictability compared to **reactive systems**. * **Minimized Slippage** – Keeps both legs of the trade in **proximity during execution**, reducing the risk of **price slippage** and imbalanced orders. This feature is ideal for traders executing **spread, arbitrage, or hedging trades**, ensuring that **both legs remain in sync** while maintaining **optimal market positioning**. ### [](https://docs.tread.fi/multi-spread-orders/exposure-tolerance#dynamic-tolerance) Dynamic Tolerance ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F0VzA2CRhvDSfg4hPFiGg%252Fimage.png%3Falt%3Dmedia%26token%3D137df98a-0b76-4059-8f3a-deeaece82145&width=768&dpr=4&quality=100&sign=c1f22cc4&sv=2) More notional on the longs than on the shorts In the case that the longs and shorts are not equal in size, the exposure target will be based on a linearly increasing exposure that utlimately ends up at the net $ long - $ short amount. The exposure tolerance will be constant throughout the duration of the order, such as in cases when portfolio rebalances where the rebalance adds or removes the cash balance or multi-legged spreader trades where the notionals do not match. [PreviousDynamic Limit Spread](https://docs.tread.fi/multi-spread-orders/dynamic-limit-spread) [NextDirectional Bias](https://docs.tread.fi/multi-spread-orders/directional-bias) Last updated 7 months ago Was this helpful? --- # DEX Trading | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FxGgcTYVfJ24dr1UYf5gG%252FScreenshot%25202568-08-05%2520at%252000.22.07.png%3Falt%3Dmedia%26token%3Da13fe041-c56f-483e-8615-62f6cc0f92c5&width=768&dpr=4&quality=100&sign=2547b527&sv=2) Through our integration with OKXDEX, you can trade any contract address across supported chains, accessing a universe of over 18,000 tokens. The supported chains currently include: * Base * BNB Smart Chain (BSC) * Ethereum * Solana Our platform charges a fee of 0.4% per trade, calculated based on the dollar notional value of the swap. This fee structure ensures transparency and consistency across all transactions, regardless of the trading pair or chain used. [DEX Trading Wallet Setup](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup) [Submitting DEX Orders](https://docs.tread.fi/dex-trading/submitting-dex-orders) [Withdrawing Funds](https://docs.tread.fi/dex-trading/withdrawing-funds) [PreviousChained Orders](https://docs.tread.fi/chained-orders) [NextDEX Trading Wallet Setup](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup) Last updated 11 days ago Was this helpful? --- # Dynamic Limit Spread | tread.fi Documentation ![Dynamic Limit Spread Setting](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FlLx2MjAJwtTYRB1GU2jm%252FScreenshot%25202568-09-04%2520at%25203.50.40%25E2%2580%25AFPM.png%3Falt%3Dmedia%26token%3Db3981c5e-501d-4815-bd9f-8972187d829d&width=768&dpr=4&quality=100&sign=736f8048&sv=2) The **Dynamic Limit Spread** is an **optional setting** that allows traders to define the **minimum price difference (spread)** required between the **buy and sell legs** before executing a trade. This ensures that **spread or basis trades** only execute when the **price differential aligns with the trader’s profitability criteria**. **How It Works** * Traders set a **minimum spread threshold** for execution. * If the market spread is **too narrow**, the system **pauses execution** until the price difference meets or exceeds the defined threshold. * This prevents trades from being executed **at unprofitable spreads**, ensuring **favorable pricing** for spread and basis strategies. **When to Use This Setting** * **Spread Trading** – Ensures that **buy and sell legs** of a trade execute **only when the spread is sufficient**. * **Basis Trades** – Helps traders avoid executing **futures vs. spot trades** at an unprofitable basis. * **Controlled Arbitrage** – Allows traders to **lock in profits** by only executing **when the price difference justifies the trade**. This feature is useful for traders looking to **optimize trade execution** by ensuring that **spreads meet profitability requirements before execution**. [PreviousMulti/Spread Orders](https://docs.tread.fi/multi-spread-orders) [NextExposure Tolerance](https://docs.tread.fi/multi-spread-orders/exposure-tolerance) Last updated 2 months ago Was this helpful? --- # Order Templates | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FT4oFuPHGwY6Ehh2BefM6%2Fimage.png&width=768&dpr=4&quality=100&sign=7dc6691b&sv=2) The Save Templates and Load Templates features allow traders to store and reuse pre-configured order settings, reducing the need for repetitive manual input. ### [](https://docs.tread.fi/submitting-orders/order-templates#saving-a-template) Saving a Template ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FQkOtBzUsu6VHeMQNzpkn%2Fimage.png&width=768&dpr=4&quality=100&sign=cc18b727&sv=2) * Click Save Templates at the bottom of the order form to name and store the current configuration. * The template will save all relevant details, including: * Selected Account(s) * Trading Pair * Quantity * Strategy/Advanced Settings * Once saved, the template can be quickly applied to future trades, ensuring consistency and efficiency. ### [](https://docs.tread.fi/submitting-orders/order-templates#loading-a-template) Loading a Template ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FnKL6FFvz0v6BYGuFEZob%2Fimage.png&width=768&dpr=4&quality=100&sign=12833119&sv=2) * Click Load Templates to access previously saved configurations. * Select a saved template to instantly populate the order form with its settings. * You can also delete templates that are no longer needed. For example, if you frequently execute "Buy 100 ETH on Binance at 1% participation rate," you can save this setup and reload it instantly when placing similar trades in the future. [PreviousParticipation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) [NextPre-Trade Analytics](https://docs.tread.fi/pre-trade-analytics) Was this helpful? --- # Options (Beta) | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FEPCzLaDz0lOaltzSR8M4%2Fimage.png&width=768&dpr=4&quality=100&sign=300eebd8&sv=2) Options orders can be placed on supported exchanges. Options premiums, implied volatilities, and Greeks are displayed for strike prices offered on the selected exchange, underlying asset, and expiry. Note that OKX does not support market orders, so only strategies implementing [Passive Only](https://docs.tread.fi/submitting-orders#order-entry) can be used. Base asset quantity is entered in number of contracts. [PreviousWithdrawing Funds](https://docs.tread.fi/dex-trading/withdrawing-funds) [NextAdvanced Settings](https://docs.tread.fi/advanced-settings) Was this helpful? --- # Multi/Spread Orders | tread.fi Documentation The **Multi-Order** feature allows traders to execute **complex, multi-leg strategies**—such as **spread trades, arbitrage, and hedging**—in a **single streamlined action**. This tool is designed for traders managing **multiple positions simultaneously**, eliminating the need for manual coordination while ensuring **efficient and balanced execution**. All **multi-leg trades require at least one buy and one sell order**, maintaining **risk control** and strategic balance. The system **optimizes execution across all legs**, adapting dynamically to market conditions. Traders can further refine their strategies using **advanced settings** like [**Dynamic Limit Spread**](https://docs.tread.fi/multi-spread-orders/dynamic-limit-spread) and [**Exposure Tolerance**](https://docs.tread.fi/multi-spread-orders/exposure-tolerance) , which provide greater control over **pricing thresholds and execution balance**. #### [](https://docs.tread.fi/multi-spread-orders#common-use-cases) **Common Use Cases** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FmUNvOlKrFW8zZRvReDsA%252Fmultipairpick.png%3Falt%3Dmedia%26token%3Dba0ba0ff-f334-4ab4-a086-a89a7c4758d4&width=768&dpr=4&quality=100&sign=de8cdf77&sv=2) * **Funding Rate Trades**– You can quickly set up a funding rate arbitrage trade by using the funding rate pair picker. Clicking a rate auto-fills the order form weith the relevant exchange and pairs. * **Arbitrage Opportunities** – Capture price inefficiencies by executing **cross-exchange arbitrage**—buying an asset on one exchange and selling it on another. The system ensures **simultaneous execution** to minimize risk. * **Hedging Strategies** – Reduce exposure to market fluctuations by **pairing long and short positions** in correlated assets. Multi-leg execution ensures both sides of the hedge remain balanced **in real time**. * **Paired Portfolio Trades** – Rebalance portfolios by **pairing asset purchases with corresponding sell orders**. This ensures trades **maintain target allocations** while avoiding unnecessary exposure. * **Two-Leg Arbitrage Variations** – Execute more complex strategies, such as: * Buying two assets while **simultaneously selling a related asset** * Commonly used in **triangular arbitrage** to maintain **balanced exposure** This feature is ideal for traders who need **automated, efficient execution of multi-leg trades**, ensuring **risk control, optimal pricing, and market adaptability**. [PreviousExplore](https://docs.tread.fi/explore) [NextDynamic Limit Spread](https://docs.tread.fi/multi-spread-orders/dynamic-limit-spread) Last updated 6 months ago Was this helpful? --- # Exit Conditions | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FaO4MyY1SNkRUYpQEtQuV%252FScreenshot%25202568-09-02%2520at%252012.30.40.png%3Falt%3Dmedia%26token%3Dfb6a6ee6-311d-460d-9b49-43858e6fdaf4&width=768&dpr=4&quality=100&sign=866bdaa4&sv=2) ### [](https://docs.tread.fi/exit-conditions#overview) Overview Exit Conditions allow you to automatically create **Take Profit** and **Stop Loss** orders that will execute when your main order is filled. These are separate orders that are created alongside your primary order and will only activate once your main order has been completed. ### [](https://docs.tread.fi/exit-conditions#basic-mechanics) Basic Mechanics 1. **Parent Order Completion:** Exit condition orders only become active after your main (parent) order has been fully filled 2. **Child Order Creation:** When you place an order with exit conditions, the system creates separate Take Profit and/or Stop Loss orders 3. **Mutual Exclusion:** If one exit condition order executes, the other is automatically cancelled 4. **Batch Grouping:** All related orders (main order + exit conditions) are grouped together for easy management ### [](https://docs.tread.fi/exit-conditions#order-types) Order Types **Take Profit Orders** * **Purpose:** Automatically sell your position when the price moves favorably * **For Buy Orders:** Triggers a sell order when price reaches or exceeds your target price * **For Sell Orders:** Triggers a buy order when price drops to or below your target price **Stop Loss Orders** * **Purpose:** Automatically limit your losses when the price moves against you * **For Buy Orders:** Triggers a sell order when price drops to or below your stop price * **For Sell Orders:** Triggers a buy order when price rises to or exceeds your stop price ### [](https://docs.tread.fi/exit-conditions#exit-strategy-types) Exit Strategy Types You can choose from three different execution strategies for your exit conditions: #### [](https://docs.tread.fi/exit-conditions#id-1.-maker) 1\. Maker * **Best for:** When you want to limit your exposure to taker fees * **Execution:** Places limit orders at or near the current market price * **Duration:** Uses the same duration as your parent order * **Risk:** May not fill if price moves away quickly #### [](https://docs.tread.fi/exit-conditions#id-2.-vwap-volume-weighted-average-price) 2\. VWAP (Volume Weighted Average Price) * **Best for:** Large orders where you want to minimize market impact * **Execution:** Executes over time to achieve the volume-weighted average price * **Duration:** Uses the same duration as your parent order * **Risk:** Moderate execution risk, good balance of price and timing #### [](https://docs.tread.fi/exit-conditions#id-3.-taker) 3\. Taker * **Best for:** When you need fast or immediate execution * **Execution:** Uses market orders for instant fills * **Risk:** Higher execution cost but guaranteed fills ### [](https://docs.tread.fi/exit-conditions#price-validation-rules) Price Validation Rules #### [](https://docs.tread.fi/exit-conditions#take-profit-prices) Take Profit Prices * For Buy Orders: Must be greater than or equal to current market price * For Sell Orders: Must be between 0 and current market price #### [](https://docs.tread.fi/exit-conditions#stop-loss-prices) Stop Loss Prices * For Buy Orders: Must be between 0 and current market price * For Sell Orders: Must be greater than or equal to current market price ### [](https://docs.tread.fi/exit-conditions#important-considerations) Important Considerations #### [](https://docs.tread.fi/exit-conditions#order-dependencies) Order Dependencies * Exit condition orders will not execute until your main order is fully filled * If your main order is cancelled, all exit condition orders are automatically cancelled * Only one exit condition can execute - if Take Profit triggers, Stop Loss is cancelled and vice versa #### [](https://docs.tread.fi/exit-conditions#risk-management) Risk Management * No Guarantees: Market conditions can change rapidly, and exit orders may not execute at your exact target price * Slippage: In volatile markets, actual execution prices may differ from your target prices * Gap Risk: In extreme market conditions, prices may gap beyond your stop loss levels [PreviousTarget Time](https://docs.tread.fi/trajectories/target-time) [NextScale Orders](https://docs.tread.fi/scale-orders) Last updated 2 months ago Was this helpful? --- # Directional Bias | tread.fi Documentation Directional bias control allows you to influence the timing and distribution of your buy and sell orders based on your market outlook. **How Directional Bias Works** * **Range**: -1 to +1 (neutral at 0) * **Positive Bias (+1)**: Favors long positions by front-loading buy orders and back-loading sell orders * **Negative Bias (-1)**: Favors short positions by front-loading sell orders and back-loading buy orders * **Neutral (0)**: Equal timing distribution for both buy and sell orders **Additional Notes on Directional Bias** * **Alpha Tilt Adjustment**: Directional bias maps linearly to alpha tilt adjustments (±1 → ±0.2 alpha tilt) * **Buy Orders**: Positive bias adds positive alpha tilt (front-loads), negative bias adds negative alpha tilt (back-loads) * **Sell Orders**: Positive bias adds negative alpha tilt (back-loads), negative bias adds positive alpha tilt (front-loads) * **Risk Management**: Extreme bias values (±1) require up to 20% additional margin to account for increased directional exposure **Use Cases** * **Bullish Outlook**: Set positive bias to capture upward price movements more aggressively * **Bearish Outlook**: Set negative bias to benefit from downward price movements * **Market Neutral**: Keep at 0 for balanced market making without directional exposure [PreviousExposure Tolerance](https://docs.tread.fi/multi-spread-orders/exposure-tolerance) [NextChained Orders](https://docs.tread.fi/chained-orders) Last updated 1 month ago Was this helpful? --- # Season 1: Trade, Earn, Vote | tread.fi Documentation ### [](https://docs.tread.fi/season-1-trade-earn-vote#earn-points) Earn Points * Earn points by trading and providing liquidity. Points reward meaningful activity on the platform — the more you trade or provide liquidity, the more points you earn. * A fixed pool of **100,000 points** is allocated each week and split among eligible users. * **Season 1 ends in May 2026** Read the full Points Program page for details on multipliers and eligibility details below [Points Program](https://docs.tread.fi/season-1-trade-earn-vote/points-program) ### [](https://docs.tread.fi/season-1-trade-earn-vote#pave-the-product-roadmap-with-your-points) Pave the Product Roadmap with your Points * Stake your points to vote in the Perp-DEX Integration Voting Pool and directly influence which perp-DEX is integrated next. Staked points are locked for the poll and returned afterward back to you. * If an exchange offers an integration fee, a community share will be published. If the exchange wins the vote, the community share is returned to eligible liquidity providers under the platform’s distribution rules. This reimbursement helps cover trading costs, incurred while earning points. Refer to the full Perp-DEX Integration Voting Pool page for further details on the campaign and eligibility rules [Exchange Integration Voting Ballot](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot) [PreviousTransaction Cost Analysis](https://docs.tread.fi/transaction-cost-analysis) [NextPoints Program](https://docs.tread.fi/season-1-trade-earn-vote/points-program) Last updated 11 days ago Was this helpful? --- # Scale Orders | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FTGUe73uxeACEYH0vMwLU%252FScreenshot%25202568-09-02%2520at%252010.30.23.png%3Falt%3Dmedia%26token%3D43835169-a53b-4258-bccf-915da1b24235&width=768&dpr=4&quality=100&sign=85b816b5&sv=2) ### [](https://docs.tread.fi/scale-orders#scale-orders-feature-overview) Scale Orders Feature Overview Scale Orders is an advanced trading feature that allows you to create multiple limit orders distributed across a price range, rather than placing a single order at one price point. ### [](https://docs.tread.fi/scale-orders#key-benefits) Key Benefits * Reduced Market Impact: Large orders are broken into smaller pieces to minimize price disruption * Improved Fill Rates: Multiple price levels increase the probability of execution * Automated DCA: Systematic accumulation or distribution across price ranges * Liquidity Provision: Create order grids for market making strategies * Risk Distribution: Spread execution risk across multiple price points ### [](https://docs.tread.fi/scale-orders#core-concept) Core Concept Instead of placing one large order at a single price, Scale Orders automatically creates multiple smaller orders spread across a price range. For example: * Instead of: 1 order for 10 BTC at $110,000 * You get: 10 orders of 10 BTC each, spread from $100,500 to $115,000 ### [](https://docs.tread.fi/scale-orders#key-parameters) Key Parameters ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FrhFC2CE7WPkSvZPpihcC%252FScreenshot%25202568-09-02%2520at%252021.02.11.png%3Falt%3Dmedia%26token%3D5071cb45-1b1c-4559-adb4-8d7ff4b21d1f&width=768&dpr=4&quality=100&sign=bdde5e00&sv=2) #### [](https://docs.tread.fi/scale-orders#price-range) **Price Range** * **From Price:** Starting price for the order ladder (can be percentage or absolute) * **To Price:** Ending price for the order ladder * **Price Input Modes:** * Percentage mode: -1% to +1% (relative to current market price) * Absolute mode: $49,500 to $50,500 (fixed dollar amounts) #### [](https://docs.tread.fi/scale-orders#distribution-controls) **Distribution Controls** * **Price Skew** (-1 to +1): Controls where orders are placed (density across limit price range) * `0`: Even distribution * `+1`: More orders concentrated near the "To Price" (higher price end) * `-1` More orders concentrated near the "From Price" (lower price end) * **Size Skew (-1 to +1):** Controls how much is allocated to each order (quantity distribution) * `0`: Equal size for all orders * `+1`: Larger orders at the edges (both from and to price), smaller in the middle * `-1`: Larger orders in the center, smaller at the edges ### [](https://docs.tread.fi/scale-orders#visual-representation-of-price-and-size-skew) Visual Representation of Price and Size Skew **Price Skew** Copy Price Skew = -1 (crowded at start): $99.00 ●●●●●●●●●● $99.25 ●●●●●●● $99.50 ●●●● $99.75 ●● $101.00 ● Price Skew = 0 (linear): $99.00 ●●●●●●●●●● $99.50 ●●●●●●●●●● $100.00 ●●●●●●●●●● $100.50 ●●●●●●●●●● $101.00 ●●●●●●●●●● Price Skew = +1 (crowded at end): $99.00 ● $99.25 ●● $99.50 ●●●● $99.75 ●●●●●●● $101.00 ●●●●●●●●●● **Important Context:** * **Buy orders**: `p_from > p_to` (descending prices: $99.00 → $99.90) * **Sell orders**: `p_from < p_to` (ascending prices: $100.10 → $101.00) ### [](https://docs.tread.fi/scale-orders#size-skew) Size Skew Copy Size Skew = 100% (larger sizes at the prices near the 'from' price when you're buying): Order 1: $99.00 ████████████ (20% of total) Order 2: $99.25 ████████ (15% of total) Order 3: $99.50 ██████ (12% of total) Order 4: $99.75 ████ (8% of total) Order 5: $101.00 ██ (5% of total) Size Skew = 0 (uniform distribution): Order 1: $99.00 ████████████ (20% of total) Order 2: $99.25 ████████████ (20% of total) Order 3: $99.50 ████████████ (20% of total) Order 4: $99.75 ████████████ (20% of total) Order 5: $101.00 ████████████ (20% of total) Size Skew = -100 (larger sizes towards the 'to' price when you're buying): Order 1: $99.00 ██ (5% of total) Order 2: $99.25 ████ (8% of total) Order 3: $99.50 ██████ (12% of total) Order 4: $99.75 ████████ (15% of total) Order 5: $101.00 ████████████ (20% of total) Do the opposite when you are selling (so 100% Skew if you want most of the qty sold to be at the limit prices near your market prices, -100% if you most of the quantity sold near the higest limit prices) The visualizations shows that Size Skew affects the **thickness/quantity** of each order, while Price Skew affects the **spacing/density** of orders across the limit price range. **Order Count** * Number of individual orders to create (1-40 orders) * Each order gets a portion of your total quantity #### [](https://docs.tread.fi/scale-orders#order-properties) Order Properties ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Foe6jylRz9honFY8BDr7P%252FScreenshot%25202568-09-02%2520at%252010.41.31.png%3Falt%3Dmedia%26token%3Df7ebbd7a-e5ff-428c-aea9-4ed8ec8ba940&width=768&dpr=4&quality=100&sign=b596a3fb&sv=2) Each generated order inherits: * Strategy and execution parameters from the base order * Duration and scheduling settings * Account and pair specifications * Risk management settings (passiveness, discretion, etc.) ### [](https://docs.tread.fi/scale-orders#limitations-and-considerations) Limitations and Considerations * **Minimum Order Sizes:** Each individual order must meet exchange minimum size requirements * **Maximum Order Count:** Limited to a maximum of 40 orders per batch * **Price Precision:** All prices rounded to exchange tick size requirements * **Capital Requirements:** Total quantity must be available in selected accounts ### [](https://docs.tread.fi/scale-orders#troubleshooting) Troubleshooting #### [](https://docs.tread.fi/scale-orders#common-issues) Common Issues * **Insufficient Liquidity:** Reduce order count or narrow price range * **Minimum Size Violations:** Increase total quantity or reduce order count * **Price Range Too Narrow:** Widen range to accommodate minimum tick sizes #### [](https://docs.tread.fi/scale-orders#error-messages) Error Messages * **"Need one of the qty fields":** Specify either base or quote quantity * `"order_count must be > 0":` Set order count to at least 1 * `"total_qty must be > 0":` Specify a positive total quantity * `"Unable to get price for pair":` Verify pair is available on selected exchange #### [](https://docs.tread.fi/scale-orders#undefined) [PreviousExit Conditions](https://docs.tread.fi/exit-conditions) [NextUse Cases and Best Practices](https://docs.tread.fi/scale-orders/use-cases-and-best-practices) Last updated 2 months ago Was this helpful? --- # Market | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FYhBQlJchhAWSCXdn09d6%252Fquickbuysell.png%3Falt%3Dmedia%26token%3D61dcadd3-25fc-452d-8c16-1be1b48115d7&width=768&dpr=4&quality=100&sign=8e836475&sv=2) A **Market Order** is executed **immediately** at the **best available price**. Unlike limit orders, market orders prioritize **execution speed** over price control, ensuring that trades are filled as quickly as possible. **How It Works** * A **buy market order** purchases the asset at the **lowest available ask price**. * A **sell market order** sells the asset at the **highest available bid price**. * Orders are submitted immediately when clicked * The system will show a loading state while the order is being processed * Orders are placed at the current market price for instant execution ### [](https://docs.tread.fi/strategies/market#quick-buy-sell) Quick Buy/Sell The Market Strategy panel in the Order Form provides quick buy and sell buttons with pre-configured sizing options to enable rapid trading execution. These buttons allow you to place market orders instantly without manually entering quantities. #### [](https://docs.tread.fi/strategies/market#percentage-based-buttons-top-row) Percentage-Based Buttons (Top Row) The first row uses percentage-based sizing relative to your available balance: * 10% - Uses 10% of your notional balance * 25% - Uses 25% of your notional balance * 50% - Uses 50% of your notional balance * 75% - Uses 75% of your notional balance * 100% - Uses 100% of your notional balance **Buy Logic:** If you have a negative base asset balance (short position), these buttons will buy the base asset to cover your position. Otherwise, they use your notional balance to buy. **Sell Logic:** If you have a negative base asset balance (short position), these buttons will sell notional balance to cover your position. Otherwise, they sell your base asset balance. #### [](https://docs.tread.fi/strategies/market#dollar-amount-buttons-bottom-row) Dollar Amount Buttons (Bottom Row) The second row provides fixed dollar amount options: * $250 - Places a $250 order * $1K - Places a $1,000 order * $2.5K - Places a $2,500 order * $10K - Places a $10,000 order * **L1 (Bottom Right Corner Dynamic Number) -** Uses the exact amount available at the best price (Level 1 order book). The L1 (Level 1) button is always dynamic and cannot be changed. **Buy:** L1 button buys the quantity at the best ask price **Sell:** L1 button sells the quantity at the best bid price #### [](https://docs.tread.fi/strategies/market#customizing-button-values) Customizing Button Values 1. Click the Edit icon (pencil) next to "Quick Buy" or "Quick Sell" 2. The dollar amount buttons will become editable text fields 3. Enter your desired values (the first 4 buttons can be customized) 4. Click the Save icon (checkmark) to confirm changes 5. Click the Cancel icon (X) to discard changes #### [](https://docs.tread.fi/strategies/market#customization-notes) Customization Notes * Only the first 4 dollar amount buttons can be customized * Your custom values are saved locally and will persist between sessions * Values should be entered as numbers (e.g., "500" for $500) ### [](https://docs.tread.fi/strategies/market#when-to-use-a-market-order) **When to Use a Market Order** * **Immediate Execution** – Ensures the order is filled **instantly**. * **High Liquidity Markets** – Works best when **there is sufficient order book depth**. * **Urgent Trades** – Ideal for traders prioritizing **execution speed over price control**. **Considerations** * **No Price Guarantee** – The final execution price may **differ from the last traded price**. * **Potential Slippage** – In **highly volatile markets**, slippage may occur, leading to **less favorable fills**. * **Higher Fees** – Market orders typically **incur taker fees**, which can be **higher than maker fees** associated with limit orders. This order type is best for traders who **need certainty of execution**, even if it means accepting potential price fluctuations and higher fees. [PreviousTarget Time](https://docs.tread.fi/strategies/target-time) [NextLimit](https://docs.tread.fi/strategies/limit) Last updated 2 months ago Was this helpful? --- # Algo Swap Mode | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FYd0G9pUrLfHaIVgEKirk%252FScreenshot%25202568-08-08%2520at%252014.22.41.png%3Falt%3Dmedia%26token%3D17ea4f96-6da2-4083-8228-40e720df00e7&width=768&dpr=4&quality=100&sign=c50fe979&sv=2) ### [](https://docs.tread.fi/submitting-orders/algo-swap-mode#what-is-algo-swap-mode) What is Algo Swap Mode? Algo Swap is one of two primary trading modes on the platform. It provides a streamlined interface for sophisticated order execution, managing all the technical details behind the scenes. You can toggle between **Algo Swap** and **Terminal** trading modes using the buttons at the top of the interface. ### [](https://docs.tread.fi/submitting-orders/algo-swap-mode#key-features) Key Features * **Swap-Like Interface:** Trade using a familiar and simplified UI that removes the need to manually fine-tune complex execution settings. * **Institutional-Grade Execution:** Access intelligent algorithms (like TWAP and VWAP) that work to achieve cost-efficient and precise execution. * **Real-Time Pre-Trade Analytics:** Get live insights on your potential order's impact, including its Participation Rate, Volatility, and Market Volume. * **Intelligent Automation:** The order form automatically suggests optimal execution algorithm and adjusts to market liquidity and volatility. * **Estimated Execution Time:** See the expected duration of an order based on the selected urgency level. * **Dual Trading Support:** Trade on both Centralized Exchanges (CEX) and Decentralized Exchanges (DEX) from a single interface. This guide focuses on CEX trading. For DEXs, see our guide on [**Submitting DEX Orders**](https://docs.tread.fi/dex-trading/submitting-dex-orders) . ### [](https://docs.tread.fi/submitting-orders/algo-swap-mode#how-to-trade-with-algo-swap) How to Trade with Algo Swap 1. **Select Algo Swap Mode** Navigate to the top of the trading panel and select the **Algo Swap** toggle. 2. **Select CEX Account(s)** Use the **Account** dropdown menu to select one or more CEX accounts to trade with. Your available balance will update based on your selection. 3. **Select a Trading Pair** Use the dual-token input to select the asset you wish to sell and the asset you wish to buy. 4. **Enter Order Quantity** Enter the amount you want to trade in either the base or quote asset field. The other field will update automatically based on the current market price. 5. **Configure Execution Strategy** Select the **Urgency** level for your trade. This automatically configures the underlying execution parameters for your order. The five levels are: * Very Low * Low * Medium * High * Very High Our system will automatically select the optimal execution strategy (e.g., [TWAP](https://docs.tread.fi/trajectories/twap) , [VWAP](https://docs.tread.fi/trajectories/vwap) or [Market](https://docs.tread.fi/strategies/market) ) based on your selected urgency, order size, and real-time market conditions. _(Execution switches to_ [_Market_](https://docs.tread.fi/strategies/market) _if the estimated duration is under 2 minutes.)_ 6. **Review Pre-Trade Analytics** Before submitting, review the **Pre-Trade Analytics** panel. This provides estimates on how your order might impact the market. * **Participation Rate:** The estimated percentage of the total market volume your order will represent. High participation can impact the price. * **Order Volatility:** The expected price fluctuation during the execution of your order. * **Market Volume:** An indicator of current liquidity. 7. **Submit the Order** Click the **Buy** or **Sell** button. You may be prompted to review a final confirmation before the order is sent to the exchange. [PreviousSubmitting Orders](https://docs.tread.fi/submitting-orders) [NextPair Naming](https://docs.tread.fi/submitting-orders/pair-naming) Last updated 3 months ago Was this helpful? --- # Submitting DEX Orders | tread.fi Documentation This page explains how to swap DEX tokens. **Prerequisite:** You must have funds and the appropriate gas in your trading wallet to submit an order. **Important: Your trading wallet needs both the token you want to swap AND the native gas token for that chain.** A common error is depositing only a stablecoin without the required gas token (e.g., ETH for the Ethereum network). Without gas in your trading wallet, **you cannot execute a swap.** Refer to the [**DEX Trading Wallet Setup**](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup) guide if you have not deposited funds. ### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#how-to-trade-two-modes) How to Trade: Two Modes You can trade from two different interfaces depending on your needs. #### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#terminal-mode) Terminal Mode ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F9Sd0fbSJbdc0yAjdKqqb%252Fimage.png%3Falt%3Dmedia%26token%3Dc5008fe0-138a-4452-8615-767140891292&width=768&dpr=4&quality=100&sign=ce8c01dd&sv=2) Use this mode for a detailed trading view with charts and analytics like transaction volume and trader counts. 1. **Select Your Wallet:** From the main terminal (`app.tread.fi`), select your connected wallet from the accounts drop down. 2. **View DEX Tokens:** The interface will automatically switch to show the DEX token universe. 3. **Find Your Pair:** Click the pair selector (or use `ctrl/cmd +k`) and open the **DEX tab**. This lists all tradable tokens for your connected wallet's chain. #### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#algo-swap-mode) Algo Swap Mode ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Fb8hgDThgUX89MidbHPVx%252FScreenshot%25202568-08-04%2520at%252017.27.08.png%3Falt%3Dmedia%26token%3D34f456b1-0e2b-42bc-b647-268ddaaaf291&width=768&dpr=4&quality=100&sign=8556f329&sv=2) Use this mode for a simplified, fast swap. 1. **Enable Mode:** Toggle on **Algo Swap** in the top right of the interface. 2. **Select DEX Tab:** Navigate to the **DEX Tab**. 3. **Execute Swap:** Select your tokens and submit the order. ### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#reviewing-your-order) Reviewing Your Order ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FrRF148TCmxZ45SNUmLmr%252FScreenshot%25202568-08-05%2520at%252000.22.07.png%3Falt%3Dmedia%26token%3D4401463f-f9e8-4aa3-a63b-71eee7871946&width=768&dpr=4&quality=100&sign=3b1e0003&sv=2) Before you confirm any trade, you must review the following details. These figures are critical for understanding the final cost and outcome of your trade. * **Max Slippage:** The highest price change you're willing to tolerate before the trade fails. * **Estimated Slippage:** A forecast of how much the actual execution price might differ from the quoted price. * **Estimated Gas Fee:** The approximate network cost to execute the swap on the blockchain. * **Trading Fee:** A fee charged by the platform for executing your trade, usually deducted from the output amount. * **Available Gas:** The amount of native gas token (e.g., ETH, SOL) available in your trading wallet to pay for the transaction. Without sufficient gas, the submit order button will be greyed out. Once you have reviewed and accepted these terms, you can confirm and submit your trade. ### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#order-details) Order Details After submitting a trade, you are directed to the order details page. This page gives you a complete, real-time overview of your transaction's progress and final outcome. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F4bofR1040ltx4H7VRg9D%252Fimage.png%3Falt%3Dmedia%26token%3Df90c8f92-ca7e-46f3-8b98-810f00c56b9e&width=768&dpr=4&quality=100&sign=163a651c&sv=2) **What this page shows:** * **Order Summary:** A complete breakdown including the final execution price, transaction status (e.g., `Finished`), duration, and total value. * **Fees & Slippage:** A clear view of the actual gas fees paid and the final price impact. * **Placements & Fills:** Detailed logs of your transaction. * **Placements:** Shows the outgoing part of your swap, including the amount sent and its status. * **Fills:** Shows the incoming part of your swap, confirming the amount you received. * **Transaction ID:** A direct link to the blockchain explorer for independent verification. * **Messages:** A log of real-time status updates for your order. This page provides full transparency, allowing you to track your order from submission to completion and verify all details on-chain. ### [](https://docs.tread.fi/dex-trading/submitting-dex-orders#troubleshooting) Troubleshooting If a transaction fails, an error message will appear. Common reasons for failure include: * **Insufficient Funds:** Not enough tokens or gas in your trading wallet. * **Swapping Your Entire Gas Balance:** Attempting to swap your full balance of a native gas token (like ETH) will fail because no funds are left to pay the required gas fee for the transaction itself. * **Network Error:** The blockchain is congested or experiencing issues. * **Slippage Exceeded:** The price changed more than your "Max Slippage" setting before the trade could be completed. [PreviousDEX Trading Wallet Setup](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup) [NextWithdrawing Funds](https://docs.tread.fi/dex-trading/withdrawing-funds) Last updated 3 months ago Was this helpful? --- # Chained Orders | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F4ZlgjxWXKAzmVS1abwX5%252Fimage.png%3Falt%3Dmedia%26token%3D6a8c2470-23f8-478b-9909-0a886dd685d0&width=768&dpr=4&quality=100&sign=d12d647f&sv=2) Chained Order Interface **Chained Orders** allow traders to **execute multiple trades in a predefined sequence**, ensuring that each order **triggers only after the previous one is completed**. This feature is useful for structuring **complex execution strategies**, such as **staggered entries and exits** or executing trades based on sequential logic rather than simple price triggers. #### [](https://docs.tread.fi/chained-orders#how-it-works) **How It Works** * Orders are grouped into **batches**: * **Orders within the same batch execute simultaneously**. * **Subsequent batches begin execution only after the preceding batch is fully completed**. * The sequence progresses as follows: * Once all orders in **Batch n** are **fully filled**, **Batch n+1** begins execution. * A common use case is **scaling into a position over multiple orders** and then **exiting in structured steps** based on execution logic. Unlike a **Take Profit order**, which triggers an exit solely based on price, **Chained Orders provide execution control**, ensuring each step completes before proceeding to the next. #### [](https://docs.tread.fi/chained-orders#configuring-chained-orders) **Configuring Chained Orders** 1. **Add Orders to the Chain** – Use the order entry form to create and structure orders in sequence. 2. **Assign Batches** – Set a **batch number** for each order to define execution priority. Orders within the **same batch execute concurrently**. 3. **Submit the Chain** – Click **"Submit Chained Orders"** to start execution. The engine will process each batch in order. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FBbpV6qrpg9iWxdYUGgyi%252Fimage.png%3Falt%3Dmedia%26token%3D7f006af9-dd30-49d5-a69d-2bb7fee3a098&width=768&dpr=4&quality=100&sign=1d5d8cd4&sv=2) Chained Order Execution #### [](https://docs.tread.fi/chained-orders#key-considerations) **Key Considerations** * **Order Completion Requirement** – An order is considered **complete only when fully filled**. If an order is **not fully filled**, the chain **stops**, and an **error is raised**. * **No Conditional Execution** – Chained orders **do not support conditional triggers** (e.g., price-based activation). * **Editing Orders** – Once submitted, orders **cannot be edited**. To modify an order, it must be **deleted and re-added**. * **Monitoring Execution** – Traders can track order progression via the **Chained Orders Monitoring Page**, which provides insights into each step of execution. Clicking on an order opens its **detailed analytics page**. * **Pausing Orders** – The **chain cannot be paused as a whole**. However, **individual orders** can be paused if needed. [PreviousDirectional Bias](https://docs.tread.fi/multi-spread-orders/directional-bias) [NextDEX Trading](https://docs.tread.fi/dex-trading) Last updated 9 months ago Was this helpful? --- # Submitting Orders | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F6gNMknPwNKjmIX6ztkna%2Fimage.png&width=768&dpr=4&quality=100&sign=2fcd006c&sv=2) [](https://docs.tread.fi/submitting-orders#order-entry) **Order Entry** ---------------------------------------------------------------------------- Note: These explanations are mainly relevant for the dashboard UI, for API usage, refer to [API documentation](https://docs.tread.fi/interacting-with-the-api/api-reference) for precise details on constraints and expected format of inputs. Field Description Account Select one or more accounts to execute the trade. Base Asset Quantity Defines the amount of the base asset being traded (e.g., BTC in BTC-USDT). Quote Asset Quantity Defines the amount of the quote asset being used for the trade (e.g., USDT in BTC-USDT). [Strategy](https://docs.tread.fi/strategies) A preset execution configuration that combines a selected trajectory with advanced settings to optimize order execution. Refer to the [Strategies](https://docs.tread.fi/strategies) section for further details. Limit Price Sets a price cap for the order. The order will not execute at a price worse than the specified limit. Duration Defines the total execution time for the order in minutes. Time Start Specifies when the order should begin execution. Time End Specifies when the order should stop execution. If both Time Start and Time End are set, the system calculates the duration automatically. ### [](https://docs.tread.fi/submitting-orders#advanced-setting) **Advanced Setting** [Trajectory](https://docs.tread.fi/trajectories) Determines the execution schedule, defining how orders are distributed over time to achieve optimal execution outcomes. [Participation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) Defines the target share of market volume the engine aims to execute at, dynamically adjusting execution to match this rate. [Participation Rate Limit](https://docs.tread.fi/advanced-settings/participation-rate-limit) Sets the maximum percentage of market volume the order can interact with at any given time, preventing excessive exposure. [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) Controls the placement depth of limit orders. Higher passiveness results in deeper order book placement, prioritizing price efficiency over execution speed. [Discretion](https://docs.tread.fi/advanced-settings/discretion) Allows for controlled variation in execution, enabling more passive fills at the expense of increased tracking variance relative to the benchmark price. [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) Adjusts the execution curve by front-loading or back-loading the order distribution. [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) Defines the maximum percentage of the order that can be executed through over-the-counter (OTC) Request for Quotes (RFQs), reducing on-exchange footprint. [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Ensures the order is executed exclusively using passive limit orders, preventing taker fills. [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Enables dynamic limit order placement, adjusting prices in real time based on market conditions. [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Restricts the order to only reducing existing positions, preventing accidental position increases. _Not available on OKX._ [Spot Leverage](https://docs.tread.fi/advanced-settings/spot-leverage) Enables margin trading for spot orders. _(Only applicable for Bybit.)_ [DiCy (coming soon)](https://docs.tread.fi/dicy) Utilizes Directed Cyclical Crossing (DiCy) for internal or multi-party crossing to improve execution efficiency and reduce market impact. [PreviousParadex](https://docs.tread.fi/connecting-to-exchanges/paradex) [NextAlgo Swap Mode](https://docs.tread.fi/submitting-orders/algo-swap-mode) Last updated 3 months ago Was this helpful? --- # Use Cases and Best Practices | tread.fi Documentation ### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#use-cases) Use Cases #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#dollar-cost-averaging-dca) Dollar Cost Averaging (DCA) **Buy Strategy:** Distribute buy orders below current market price * **Range:** -2% to -0.5% * **Benefit:** Systematic accumulation during price declines **Sell Strategy:** Distribute sell orders above current market price * **Range:** +0.5% to +2% * **Benefit:** Gradual profit-taking during price rallies #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#liquidity-provision) Liquidity Provision **Market Making:** Create symmetric order grids around current price * **Buy range:** -1% to -0.1% * **Sell range:** +0.1% to +1% * **Benefit:** Capture bid-ask spreads and provide market liquidity #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#volatility-capture) Volatility Capture **Wide Range Strategy:** Place orders across a broader price range * **Range:** -5% to +5% * **Benefit:** Capture significant price movements in either direction\\ * Liquidity Consideration: Ensure sufficient liquidity exists at your target price levels * Exchange Selection: Consider exchange-specific order book depth and fees * Timing: Avoid placing during high volatility periods unless intentional ### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#best-practices) Best Practices #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#parameter-selection) Parameter Selection * Order Count: 5-20 orders typically provide good granularity without over-complication * Price Range: Consider market volatility and your risk tolerance * Skew Settings: Use positive price skew for trending markets, negative for mean reversion #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#risk-management) Risk Management * Position Sizing: Ensure total quantity aligns with your risk management rules * Range Width: Wider ranges capture more movement but require larger capital allocation * Monitoring: Regularly review and adjust parameters based on market conditions #### [](https://docs.tread.fi/scale-orders/use-cases-and-best-practices#performance-optimization) Performance Optimization * Liquidity Consideration: Ensure sufficient liquidity exists at your target price levels * Exchange Selection: Consider exchange-specific order book depth and fees * Timing: Avoid placing during high volatility periods unless intentional [PreviousScale Orders](https://docs.tread.fi/scale-orders) [NextExplore](https://docs.tread.fi/explore) Last updated 2 months ago Was this helpful? --- # TWAP | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXckHYJQt--_s0T0wtqRjjf933JWCmcpgIrAm_u-olOyJULKw8wwVurGZpxrWwQlqW38943ENO4b7NC-z07SVcGJVTIRnYLhxvhTJU74ZUD2cabh398QyEl1wMsRh-uYv6l47U3nww%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=fd0c9c0a&sv=2) Example of TWAP Trajectory The **TWAP trajectory** executes an order **at a fixed rate** over its duration, following a **linear execution schedule**. Unlike **VWAP**, TWAP does **not adjust based on market volume**, making it a **simple and predictable execution method**. #### [](https://docs.tread.fi/trajectories/twap#how-it-works) **How It Works** * The engine **divides the total order into equal parts** and executes them at **regular intervals** over the specified duration. * Execution proceeds **at a constant rate**, **ignoring market volume and liquidity fluctuations**. #### [](https://docs.tread.fi/trajectories/twap#when-to-use-twap) **When to Use TWAP** * For **straightforward execution strategies** that don’t require volume-based adjustments. * When trading **illiquid pairs** to ensure **balanced execution** and prevent drastic price fluctuations. * When **consistent and predictable order flow** is required. * In markets with **stable or low volume**, where volume-based strategies may not be effective. #### [](https://docs.tread.fi/trajectories/twap#twap-limitations) **TWAP Limitations** * **Does not factor in market conditions**—executing at a constant rate regardless of liquidity, which can lead to **suboptimal fills**. * **Constant execution rate may miss short-term alpha opportunities** and does not respond to price trends. This trajectory is ideal for traders looking for **simple, predictable execution**, particularly in **low-volume or stable markets**. [PreviousVWAP](https://docs.tread.fi/trajectories/vwap) [NextTarget Time](https://docs.tread.fi/trajectories/target-time) Last updated 9 months ago Was this helpful? --- # Manage Order | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FEV4ERjxQqRpzGgIcy5as%2Fimage.png&width=768&dpr=4&quality=100&sign=65af2025&sv=2) Manage Order on the Order Execution Dashboard The **Manage Orders** section within the **Order Execution Dashboard** allows traders to actively control their execution in real time without creating new orders from scratch. Available actions include: * [**Resubmit Orders**](https://docs.tread.fi/order-management/manage-order/resubmit-order) – Quickly re-enter the market by submitting a new order based on a previously executed one. * [**Amend Orders**](https://docs.tread.fi/order-management/manage-order/amend-order) – Modify key parameters of an active order without canceling it, allowing for real-time adjustments. * [**Pause Orders**](https://docs.tread.fi/order-management/manage-order/pause-order) – Temporarily halt execution without canceling the order, with the option to resume based on current market conditions. * [**Cancel Orders**](https://docs.tread.fi/order-management/manage-order/cancel-order) – Terminate an active order at any time, preventing further execution. Each action is detailed on its own page, explaining functionality, use cases, and execution behavior. [PreviousReal-Time Algo Order Tracking](https://docs.tread.fi/real-time-algo-order-tracking) [NextMarkouts](https://docs.tread.fi/real-time-algo-order-tracking/markouts) Last updated 9 months ago Was this helpful? --- # Target Time | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FDw0IWawdA0qfHgP8jvIt%2Fimage.png&width=768&dpr=4&quality=100&sign=f2731016&sv=2) Example of Target Time Trajectory The **Target Time trajectory** is designed for traders who want to **execute orders around a specific future event**. It follows a **time-based execution approach**, concentrating trading activity **at a designated moment**, providing **precise control over execution timing**. #### [](https://docs.tread.fi/trajectories/target-time#how-it-works) **How It Works** * Traders configure two parameters: * **Target Time (UTC)** – The point when the **highest concentration of trading will occur**. * **Interval (minutes)** – Defines the **total duration** of the trade, distributing execution evenly around the target time. * The engine follows a **normal distribution** for execution: * The **mean** is the **target time**. * The **standard deviation** equals **10% of the total duration**. * **68% of the order** is executed **within the central 20% of the interval**. #### [](https://docs.tread.fi/trajectories/target-time#when-to-use-target-time) **When to Use Target Time** * **Event-Driven Trading** – Ideal for executing trades around **scheduled events**, such as economic reports or earnings releases. * **Precise Execution Timing** – Best when the majority of trading **must occur at a specific time**. * **Controlled Risk Exposure** – Helps **manage market exposure** by concentrating execution **within a defined window**. #### [](https://docs.tread.fi/trajectories/target-time#target-time-limitations) **Target Time Limitations** * **Sensitivity to Market Volatility** – Unexpected price movements **around the target time** may impact execution quality. * **Requires Accurate Timing** – Misjudging **the event’s impact or timing** could lead to **suboptimal results**. * **Limited Flexibility** – The strategy **does not adapt in real-time** to market changes **outside the set execution window**. This trajectory is ideal for **traders needing precise execution control** around **time-sensitive market events** while managing **risk exposure** efficiently. [PreviousTWAP](https://docs.tread.fi/trajectories/twap) [NextExit Conditions](https://docs.tread.fi/exit-conditions) Last updated 9 months ago Was this helpful? --- # Exchange Integration Voting Ballot | tread.fi Documentation ### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#purpose) Purpose This ballot provides purpose for points and converts private exchange integration negotiations into a public, community-driven process that reimburses liquidity providers who incur costs. The mechanism combines a points-staking voting system with public offers from exchanges. * * * ### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#overview) Overview * Roughly every two weeks, a poll selects the next exchange to integrate. * Voting mechanism: Users stake points to vote. Each point equals one vote. Staked points are locked for the duration of the poll and returned at its conclusion. Points are never burned by voting. * Exchange offers: Exchanges that seek integration post a public offer on the platform. An offer can include but not limited to: * A one-time integration fee (for example, $50,000) * Fee rebates or maker/taker discounts * Promotional liquidity or marketing packages Offers are public so exchanges can compete transparently and users can evaluate trade-offs. * Winning outcome: The winning exchange is integrated. A pre-declared portion of the integration fee is designated as the community share. The remainder is retained by the company. * * * ### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#community-integration-pool) Community Integration Pool #### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#purpose-1) Purpose The Integration Share returns part of a winning exchange’s integration fee to the community. The goal is simple: reward users for the costs they paid to earn points (exchange fees and/or market-making losses). In short, users vote to choose an integration and can earn back some of the fees they incurred while trading and providing liquidity. #### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#principle) Principle If a winning exchange has offered an integration fee, the community portion of that fee is distributed pro-rata to eligible terminal users based on their volume and net losses over the campaign window. Net loss is defined as fees + slippage (market-making losses). Accounts with larger net losses receive larger shares. This reimburses traders who incurred real costs while providing liquidity. #### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#eligibility) **Eligibility** To qualify for the Integration Share, all of the following must be true: * **Lifetime volume:** The account has generated at least **$1,000,000** in lifetime volume. If those conditions are met, the account is eligible for the Integration Share even if the exchange that the account voted for did not win. #### [](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot#distribution-summary) Distribution Summary * The Integration Share is distributed pro-rata to eligible accounts based on their net losses; accounts with greater net losses receive larger shares. [PreviousPoints Program](https://docs.tread.fi/season-1-trade-earn-vote/points-program) [NextReferral Program](https://docs.tread.fi/referral-program) Last updated 5 days ago Was this helpful? --- # DEX Trading Wallet Setup | tread.fi Documentation ### [](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup#step-1-connect-your-wallet) Step 1: Connect Your Wallet Connect your EVM or Solana wallet to start trading. You can connect your wallet from two locations: **Top-Right Wallet Icon:** Click the wallet icon and select "Connect Wallet" from the menu ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FD9wbL2lxelWszHmokrjy%252FScreenshot%25202568-08-04%2520at%252015.54.27.png%3Falt%3Dmedia%26token%3D328fb2db-cc62-40a4-beab-225384707202&width=300&dpr=4&quality=100&sign=f7944a10&sv=2) ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FpcXOb0kLdEeicDDRIc1i%252FScreenshot%25202568-08-04%2520at%252022.51.40.png%3Falt%3Dmedia%26token%3Db45d4d29-2b9c-4c1a-b02e-82200bf005d8&width=768&dpr=4&quality=100&sign=a0a95cf&sv=2) **Home Page Order Form:** Select a DEX Token. The Connect Wallet will apepar if no wallet is connect ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FGeYqQpsqMzEXq8nGvryI%252FScreenshot%25202568-08-04%2520at%252016.01.56.png%3Falt%3Dmedia%26token%3D2eb457f0-761c-4223-baa6-7a9bcfa7db4e&width=768&dpr=4&quality=100&sign=b9312481&sv=2) #### [](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup#connection-process) **Connection Process** 1. **Select Wallet:** Click "Connect Wallet" and choose your provider. 2. **Approve Connection:** Authorize the request in your wallet. 3. **Authenticate:** Sign the gas-free message in your wallet to verify ownership. **IMPORTANT:** The wallet you connect is the only one authorized for withdrawals from the trading wallet. This cannot be changed. ### [](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup#step-2-depositing-funds) Step 2: Depositing Funds We create a secure trading wallet for you. Deposit funds to it before trading. You can deposit immediately after connecting or at any time from the [Portfolio](https://app.tread.fi/) Page. #### [](https://docs.tread.fi/dex-trading/dex-trading-wallet-setup#choose-your-deposit-method) Choose your deposit method: ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FRwGT8D5V7JxcPZORYYnx%252FScreenshot%25202568-08-04%2520at%252016.17.23.png%3Falt%3Dmedia%26token%3Da97ade25-66f0-4ad6-8cbe-71506fc5da41&width=768&dpr=4&quality=100&sign=f835b9b1&sv=2) **Deposit from Wallet:** Deposit funds directly from your connected wallet. **Deposit by QR Address:** Send funds from any wallet to your trading wallet's address. **IMPORTANT:** You can only withdraw funds to the wallet connected in Step 1. Always use the correct network when depositing funds from an external wallet. **Gas Requirement:** Make sure you have enough native tokens (ETH, BNB, SOL, etc.) to cover gas fees for deposits. Additionally, deposit native gas tokens into your trading wallet in order to trade on our platform. Once your trading wallet is funded, you can start swapping tokens. For further guidance please refer to this [page](https://docs.tread.fi/dex-trading/submitting-dex-orders) . [PreviousDEX Trading](https://docs.tread.fi/dex-trading) [NextSubmitting DEX Orders](https://docs.tread.fi/dex-trading/submitting-dex-orders) Last updated 3 months ago Was this helpful? --- # Spot Leverage | tread.fi Documentation The **Spot Leverage** parameter enables **margin trading for spot markets**, allowing traders to use **leverage on supported exchanges**. #### [](https://docs.tread.fi/advanced-settings/spot-leverage#considerations) **Considerations** * **Bybit-Specific Feature** – This setting is only relevant for **Bybit**, where it must be enabled to activate margin trading for spot orders. * **Exchange-Specific Handling** – Some exchanges, such as **OKX**, manage spot leverage through **account configurations outside of tread.fi**, meaning this parameter does not apply. This setting is useful for traders looking to **enhance capital efficiency** by using **leveraged spot trading** where supported. [PreviousParticipation Rate Limit](https://docs.tread.fi/advanced-settings/participation-rate-limit) [NextPassiveness](https://docs.tread.fi/advanced-settings/passiveness) Last updated 9 months ago Was this helpful? --- # IOC | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FKBHJdnvf0doCDRaZX3WT%2Fimage.png&width=768&dpr=4&quality=100&sign=bfd81a4f&sv=2) Execution with IOC The **Immediate-Or-Cancel (IOC)** strategy is designed for traders who need **fast execution with minimal market exposure**. The engine attempts to fill **all or part of an order immediately**, and any **unfilled portion is automatically canceled**. This strategy helps traders **capture available liquidity** without leaving orders open in the market. **How It Works** * The engine submits the order for **immediate execution**. * Any **unfilled portion is instantly canceled**. * Orders can be placed as **market or limit orders**. * If multiple accounts are selected, the **Smart Order Router (SOR)** directs the order to the venue offering the **best price and liquidity**. **When to Use This Strategy** * **Urgent Execution** – Best for trades that need to be **filled quickly**. * **Managing Large Orders** – Helps capture liquidity **without affecting market prices**. * **Volatile Markets** – Reduces exposure to **fast-moving market conditions**. **Potential Drawbacks** * **Partial Fills** – Only part of the order may execute, leaving the rest unfilled. * **Missed Opportunities** – Since unfilled portions are **canceled immediately**, traders might miss **favorable price movements**. This strategy is ideal for traders who prioritize **speed and liquidity capture** while minimizing exposure to **open order risks**. [PreviousLimit](https://docs.tread.fi/strategies/limit) [NextIceberg](https://docs.tread.fi/strategies/iceberg) Last updated 9 months ago Was this helpful? --- # Max Clip Size | tread.fi Documentation **Max Clip Size** defines the **largest allowable passive (MAKE) order per placement**, controlling **order visibility and execution speed** in the order book. #### [](https://docs.tread.fi/advanced-settings/max-clip-size#how-it-works) **How It Works** * **Higher Max Clip Size** – Places **larger individual orders**, leading to **faster execution** but **greater order book visibility**. * **Lower Max Clip Size** – Places **smaller orders**, reducing **market impact** but potentially **slowing execution**. #### [](https://docs.tread.fi/advanced-settings/max-clip-size#configuration) **Configuration** * **High Max Clip Size (e.g., $10,000) – Faster Execution** * Suitable for **liquid markets** where **large trades can be absorbed without excessive price movement**. * **Low Max Clip Size (e.g., $1,000 - $5,000) – Lower Market Impact** * Suitable for **illiquid assets**, minimizing **order book visibility** to reduce **potential market signaling**. This setting allows traders to **control order exposure**, balancing **execution speed and market impact** based on liquidity conditions. [PreviousMax OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) [NextPassive Only](https://docs.tread.fi/advanced-settings/passive-only) Last updated 9 months ago Was this helpful? --- # Transaction Cost Analysis | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F5ivIlpIBlAXNW3mmAvwc%2Fimage.png&width=768&dpr=4&quality=100&sign=ce511963&sv=2) ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FUwDHEtJF32fv7sUPiAaH%2Fimage.png&width=768&dpr=4&quality=100&sign=b8d41a83&sv=2) [](https://docs.tread.fi/transaction-cost-analysis#filters) Filters ------------------------------------------------------------------------ The filter fields (date, account, pair, side, and strategy, and market type) at the top of the page apply to all the data visualizations on this page. [](https://docs.tread.fi/transaction-cost-analysis#summary) Summary ------------------------------------------------------------------------ Field Details Number of Orders Number of orders Number of Pairs Number of unique pairs traded Value of Orders Sum of notional traded value of orders Average Duration Notionally weighted average of order duration Participation Rate Share weighted average of _executed quantity / market volume_ Interval Return Notionally weighted average log return of _arrival price vs departure price_ Spread Notionally weighted average spread of name Exchange Fee Sum of notional exchange fees [](https://docs.tread.fi/transaction-cost-analysis#order-breakdown) Order Breakdown ---------------------------------------------------------------------------------------- Notional breakdown of each token bought/sold and strategy used, colored by the notionally-weighted arrival slippage. [](https://docs.tread.fi/transaction-cost-analysis#fill-breakdown) Fill Breakdown -------------------------------------------------------------------------------------- * Notional breakdown of fills that acted as maker or taker across all orders * Notional breakdown of exchanges that were used [](https://docs.tread.fi/transaction-cost-analysis#timeseries-traded-notional) Timeseries Traded Notional -------------------------------------------------------------------------------------------------------------- Shows the total notional traded by day of order entry [](https://docs.tread.fi/transaction-cost-analysis#benchmark-costs) Benchmark Costs ---------------------------------------------------------------------------------------- For all costs, negative (green) means the algorithm beat the benchmark and positive (red) means the algorithm incurred costs relative to each benchmark. Field Details Arrival Cost Notionally-weighted, side-adjusted natural logarithm of _executed price_ divided by _arrival price_. Arrival cost can show the shortfall in prices between the investment decision and execution. VWAP Cost Notionally-weighted, side-adjusted natural logarithm of _executed price_ divided by _VWAP_. VWAP costs can show how well the algorithm tracked market volume and show relative fill quality versus the weighted average price of the market during the order duration. Departure Cost Notionally-weighted, side-adjusted natural logarithm of _executed price_ divided by _departure (last) price_. Exchange Fee Notionally-weighted _exchange fee_ divided by _traded notional_. This shows the average exchange fee paid to help monitor exchange fee benefits. [](https://docs.tread.fi/transaction-cost-analysis#order-size-distribution) Order Size Distribution -------------------------------------------------------------------------------------------------------- A histogram of the number of orders, broken out by side, in a range of notional value or participation rate buckets. [](https://docs.tread.fi/transaction-cost-analysis#arrival-slippage) Arrival Slippage ------------------------------------------------------------------------------------------ A visualization of the distribution of orders' slippage from arrival price, normalized as a z-score, that is, the number of standard deviations away from the mean arrival slippage. [](https://docs.tread.fi/transaction-cost-analysis#vwap-slippage) VWAP Slippage ------------------------------------------------------------------------------------ A visualization of the distribution of orders' slippage from VWAP, normalized as a z-score, that is, the number of standard deviations away from the mean VWAP slippage. [PreviousvCefi (Verified CeFi)](https://docs.tread.fi/portfolio/vcefi-verified-cefi) [NextSeason 1: Trade, Earn, Vote](https://docs.tread.fi/season-1-trade-earn-vote) Was this helpful? --- # Conditional Order | tread.fi Documentation Using logic considering price/time conditions, TaaS can delay an order until those conditions are met. Once the order is released, this condition is not re-evaluated or considered in order execution. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FwnabasRhE6ab0bsdZwm4%2Fimage.png&width=768&dpr=4&quality=100&sign=a428e0ce&sv=2) A Green Tick indicate that Condition is Valid ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fmpwv15xbkpj9W7HWJgpc%2Fimage.png&width=768&dpr=4&quality=100&sign=ef07f22a&sv=2) Viewing conditional orders [](https://docs.tread.fi/conditional-order#symbols) Symbols ---------------------------------------------------------------- ### [](https://docs.tread.fi/conditional-order#valid-dynamic-terms) Valid Dynamic Terms #### [](https://docs.tread.fi/conditional-order#pair-price) Pair Price Copy {Pair}@{Exchange} // ex. ETH:PERP-USDT@Bybit #### [](https://docs.tread.fi/conditional-order#order-fields) Order Fields Copy :qty // order qty in target token orders are submitted with either base\_asset\_qty or quote\_asset\_qty, which is targeting the base or quote token. Ex. :qty will evaluate to 150 if your order is BUY 150 ETH or 100,000 if BUY 100,000 USDT of ETH Copy :current_target // current scheduled target qty the engine tries to place up to a certain amount at all times and this value changes over time Copy :filled // executed qty in target token always converted to target token same as :qty #### [](https://docs.tread.fi/conditional-order#current-time) Current Time Copy TIME // current time in UTC ### [](https://docs.tread.fi/conditional-order#valid-operators) Valid Operators * max ( ) , min ( ) * +, -, \*, /, \*\* (exponentiate) , % (modulo) * \>= , <= , > , < , == , != * AND , OR Note the differences between the initialization (?=), assignment (:=), and comparison (==) operators. [](https://docs.tread.fi/conditional-order#sample-use-cases) Sample Use Cases ---------------------------------------------------------------------------------- ### [](https://docs.tread.fi/conditional-order#time-conditions) Time Conditions Using **TIME** as a placeholder for the current time, you can set a time in the future to trigger an order. For example, this order will run on midnight (UTC) on 2023-09-24: Copy TIME > dt2023-09-24T00:00 ### [](https://docs.tread.fi/conditional-order#price-conditions) Price Conditions By using the common placeholder @, you can assign a price condition. For example, this order will only run when BTC-USDT on Binance hits 30,000 or more: Copy BTC-USDT@Binance > 300000 _Note: If you would like the algo order to only trade above this price as well, be sure to place a limit price as well._ Using basic math operators, you can also specify ratios to trigger orders. For example, this order will run when the BTC/ETH ratio reaches 20 on Binance: Copy ( BTC-USDT@Binance / ETH-USDT@Binance ) > 20 Taking advantage of other operators, another example can be an order that only triggers when the spread between ETH and ETH:PERP reaches a certain threshold: Copy ( ETH-USDT@Binance - ETH:PERP-USDT@Binance ) > 1 [](https://docs.tread.fi/conditional-order#variable-tracking) Variable Tracking ------------------------------------------------------------------------------------ In certain scenarios, a previous state may be needed to facilitate the right condition. In this case, you can set variables to track through each consecutive evaluation. There are three operators that faciliate variable tracking: * To assign a value to keep track := * To assign a value only if null (for initialization) ?= <(Dynamic) Value> * To end line and go to the next clause ; A perfect example is a trailing stop: Copy TRAILING_STOP ?= BTC-USDT@Binance * 0.7 ; TRAILING_STOP := MAX ( BTC-USDT@Binance * 0.7 , TRAILING_STOP ) ; TRAILING_STOP > BTC-USDT@Binance Breaking down this complex example line-by-line: * Copy TRAILING_STOP ?= BTC-USDT@Binance * 0.7 ; * Set the initial value of the TRAILING\_STOP variable to 30% away from the current price. This line will not be run unless the TRAILING\_STOP variable is null, which is only true on the first evaluation. * Copy TRAILING_STOP := MAX ( BTC-USDT@Binance * 0.7 , TRAILING_STOP ) ; * On the evaluation, set the value of TRAILING\_STOP to the higher of either the current 30% away on BTC-USDT or the previous TRAILING\_STOP * Copy TRAILING_STOP < BTC-USDT@Binance * Run the order if the ultimate condition of BTC-USDT price is less than the TRAILING\_STOP price [](https://docs.tread.fi/conditional-order#undefined) --------------------------------------------------------- [PreviousStrict Duration](https://docs.tread.fi/advanced-settings/strict-duration) [NextReal-Time Algo Order Tracking](https://docs.tread.fi/real-time-algo-order-tracking) Was this helpful? --- # Iceberg | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fhi5WK54BiUwNnOlyFkMm%2Fimage.png&width=768&dpr=4&quality=100&sign=5c1080aa&sv=2) Execution with Iceberg The **Iceberg** strategy minimizes market impact by **splitting large orders into smaller, discrete slices**. Each slice is placed **sequentially** as the previous one fills, preventing the full order size from being exposed to the market. **How It Works** * The **Slices parameter** determines how many smaller orders the parent order is split into. * Each slice size is **randomized within a ±5% range** to reduce the risk of market participants detecting the order pattern. * If multiple accounts are selected, the engine **selects the venue with the best price for the first slice** and continues **routing all subsequent slices to that venue**. * The platform displays only one order placement for the parent order, while **individual fills** appear in the **Fills section**. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FcScpetIISz3IbRI9SiFd%2Fimage.png&width=768&dpr=4&quality=100&sign=a6ac29c6&sv=2) Order Filled with Iceberg **When to Use This Strategy** * **Large Orders** – Ideal for executing **sizable trades** without revealing the full order size. * **Reducing Market Impact** – Helps **prevent price movement** by keeping order sizes small. * **Maintaining Anonymity** – Useful when traders want to **conceal the full extent** of their positions. **Potential Drawbacks** * **Slower Execution** – Large orders may take **longer to complete**, depending on market conditions. * **Venue Lock-In** – Once the **first slice is executed at a venue**, all subsequent slices are **sent to the same venue**, even if better prices emerge elsewhere. This strategy is best for traders looking to **execute large trades discreetly**, reducing **market impact and visibility** while maintaining **controlled execution**. [PreviousIOC](https://docs.tread.fi/strategies/ioc) [NextTrajectories](https://docs.tread.fi/trajectories) Last updated 9 months ago Was this helpful? --- # Withdrawing Funds | tread.fi Documentation This page explains how to withdraw funds from your DEX trading wallet back to your personal wallet. **IMPORTANT:** * Withdrawals can **only** be sent to the wallet you originally connected during setup. This is a security measure and cannot be overridden. * Ensure your receiving wallet supports the token and network you are withdrawing. ### [](https://docs.tread.fi/dex-trading/withdrawing-funds#how-to-withdraw) How to Withdraw You can initiate a withdrawal from three locations: * **Portfolio Page:** Select the wallet and click "Withdraw". * **Order Form:** Select your DEX trading account in the order form to see the "Withdraw" option. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FJpI3HJooGS6X04FJs136%252FScreenshot%25202568-08-04%2520at%252022.59.15.png%3Falt%3Dmedia%26token%3D3553d3bf-9b51-40dd-bcee-b619abab3535&width=768&dpr=4&quality=100&sign=ef507da1&sv=2) * **Key Management Menu:** Access the menu from the top-right wallet icon. The withdrawal process is as follows: ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F2IVBIbVwHyNPDVyIV20l%252FScreenshot%25202568-08-04%2520at%252023.05.17.png%3Falt%3Dmedia%26token%3Dfebc429d-8ccf-4fa4-87fc-a1d38c826cb4&width=768&dpr=4&quality=100&sign=4c944716&sv=2) 1. **Initiate Withdrawal:** Click the "Withdraw" button from any of the locations listed above. 2. **Specify Token and Amount:** Select the token and enter the amount you wish to withdraw. 3. **Confirm Withdrawal:** Review the details and confirm the transaction. ### [](https://docs.tread.fi/dex-trading/withdrawing-funds#gas-requirement-for-withdrawals) Gas Requirement for Withdrawals To process a withdrawal, your **trading wallet** must contain enough of the chain's native gas token (e.g., ETH, SOL, BNB) to cover the network transaction fee. If your trading wallet does not have sufficient gas, the withdrawal transaction will fail. You will need to deposit the required gas token into your trading wallet before you can withdraw other assets. [PreviousSubmitting DEX Orders](https://docs.tread.fi/dex-trading/submitting-dex-orders) [NextOptions (Beta)](https://docs.tread.fi/options-beta) Last updated 3 months ago Was this helpful? --- # Advanced Settings | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FLsgQ3iUZNT3vLbfqEduW%2Fimage.png&width=768&dpr=4&quality=100&sign=630a166a&sv=2) The **Advanced Settings** allow traders to **fine-tune execution parameters**, providing greater control over order behavior. While **preset strategies** offer convenient deployment, **advanced settings** enable traders to customize execution according to their **specific trading objectives**. Each strategy in the platform is built on **execution trajectory and additional configurable parameters**, allowing for a tailored approach to market execution. #### [](https://docs.tread.fi/advanced-settings#key-configurations) **Key Configurations** * [**Trajectory**](https://docs.tread.fi/trajectories) – Defines the **execution schedule** of an order, determining **how trades are distributed over time**. * [**Participation Rate Target**](https://docs.tread.fi/submitting-orders/participation-rate-target) – Sets the **desired market participation rate**, dynamically adjusting execution to stay on target. * [**Participation Rate Limit**](https://docs.tread.fi/advanced-settings/participation-rate-limit) – Restricts the **maximum percentage of market volume** an order can engage with at any given time. * [**Spot Leverage**](https://docs.tread.fi/advanced-settings/spot-leverage) – Enables **margin trading for spot orders** (applicable for Bybit; other exchanges manage leverage separately). * [**Passiveness**](https://docs.tread.fi/advanced-settings/passiveness) – Adjusts **how far limit orders are placed from the market price**, impacting execution speed and price efficiency. * [**Discretion**](https://docs.tread.fi/advanced-settings/discretion) – Introduces **controlled randomness** to execution, reducing predictability and minimizing market impact. * [**Alpha Tilt**](https://docs.tread.fi/advanced-settings/alpha-tilt) – Skews **execution timing** by **front-loading or back-loading the order** based on market expectations. * [**Max OTC Percentage**](https://docs.tread.fi/advanced-settings/max-otc-percentage) – Defines the **portion of an order that can be executed via OTC (over-the-counter) channels** instead of public markets, reducing market impact and exchange fees. * [**Max Clip Size**](https://docs.tread.fi/advanced-settings/max-clip-size) – Sets the **maximum size of passive orders**, managing visibility and execution speed. * [**Passive Only**](https://docs.tread.fi/advanced-settings/passive-only) – Ensures that **all orders are maker orders**, preventing the engine from taking liquidity. * [**Active Limit**](https://docs.tread.fi/advanced-settings/active-limit) – Allows **limit orders to be dynamically placed** at more aggressive prices, continuously adjusting with market movements. * [**Reduce Only**](https://docs.tread.fi/advanced-settings/reduce-only) – Ensures orders **only decrease an existing position**, preventing unintended increases. * [**Strict Duration**](https://docs.tread.fi/advanced-settings/strict-duration) – Stops execution **at the specified time**, regardless of whether the full target quantity has been executed. [PreviousOptions (Beta)](https://docs.tread.fi/options-beta) [NextParticipation Rate Limit](https://docs.tread.fi/advanced-settings/participation-rate-limit) Last updated 9 months ago Was this helpful? --- # Real-Time Algo Order Tracking | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Fq8NW994jMjQboO4rpBxY%252Fimage.png%3Falt%3Dmedia%26token%3D496512a6-3ed3-41e3-ac8b-4595135d2315&width=768&dpr=4&quality=100&sign=cbd9ca5f&sv=2) Algo Order Tracking Dashboard Interface The dashboard provides real-time insights into an order’s execution, allowing users to track performance and market interaction as the trade progresses. ### [](https://docs.tread.fi/real-time-algo-order-tracking#execution-statistics) Execution Statistics ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F0dxVoya0wk0REA5z27NM%252FScreenshot%25202568-03-04%2520at%252015.41.12.png%3Falt%3Dmedia%26token%3D86ce2a28-42e8-4b52-9edc-327cf89dcdf0&width=768&dpr=4&quality=100&sign=57f0daa3&sv=2) Benchmark Description Slippage Side-adjusted natural logarithm of _executed price_ divided by _arrival price_. The arrival price is the mid quote at the time of order submission. The benchmark price will not change as the order progresses and the realized cost will be a reflection of as-of volume weighted executed prices compared to the arrival price. VWAP Slippage Side-adjusted natural logarithm of _executed price_ divided by _VWAP._ As the order trades, VWAP is a dynamic benchmark price that reflects the as-of volume weighted average price of all market trades that print on the selected exchanges from order entry to current time. The VWAP cost will be a reflection of as-of volume weighted executed prices compared to the VWAP benchmark price. Exchange Fee _Exchange fee_ divided by _traded notional_. Participation Rate The value column contains the cumulative market volume. The Benchmark column is the current participation rate (executed volume divided by cumulative market volume). **Execution Trajectory Chart (Fixed-Duration Orders)** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FmnxZMeQqE401VQEb3KJK%252Fimage.png%3Falt%3Dmedia%26token%3D8b91e039-e599-4ec0-bfbe-768d802d193f&width=768&dpr=4&quality=100&sign=be341d95&sv=2) For fixed-duration orders, the execution schedule chart displays the planned execution quantity (grey) along with the upper and lower discretion bounds (dashed lines). The actual cumulative fills are represented by a solid white line, tracking how the order is executed over time. Each fill is marked with: * **Green** - Passive (maker) fill * **Red** - Aggressive (taker) fill * **Orange Square** - OTC fill * **Orange Triangle** - Active placement pending execution **Participation Rate Target Orders** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FOgjSgmz3dnDuMSQb0xfD%252Fimage.png%3Falt%3Dmedia%26token%3D45b0184d-40d6-4176-a0b9-4fd5f5333e17&width=768&dpr=4&quality=100&sign=b624e933&sv=2) For orders using a participation rate target, the order viewer presents a breakdown of executed volume, cumulative realized participation rate, and market volume for context. Users can toggle between this view and the schedule-based execution chart. **Price Chart and Execution Context** For trades executed in version 1.4.3 or later, the price chart illustrates where fills occurred relative to the bid-ask spread during the order’s duration. The chart includes: * **Dotted Grey Line** - Average executed price * **Dashed Violet Line** - VWAP benchmark * **Orange Line** - Dynamic limit price * **Bid/Ask Traces** - Represented in green (bid) and red (ask); for narrow spreads, they may overlap. This real-time execution tracking helps traders monitor their order's performance, assess market conditions, and refine execution strategies based on data-driven insights. [PreviousConditional Order](https://docs.tread.fi/conditional-order) [NextManage Order](https://docs.tread.fi/real-time-algo-order-tracking/manage-order) Last updated 9 months ago Was this helpful? --- # Two-factor authentication | tread.fi Documentation On the Account and Setttings page, you can enable two-factor authentication with an authenticator app like [Google Authenticator](https://support.google.com/accounts/answer/1066447) . Note that multi-factor authentication via SMS or email is not supported at this time. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FA1O34mCAGt0drpBy03YJ%2Fimage.png&width=768&dpr=4&quality=100&sign=148a690c&sv=2) After installing an authenticator app on your phone, click Enable and you'll be presented with the dialog below. You'll need to scan the QR code with your phone and enter the six digit code that results. Subsequent logins from the same device will usually require just a username and password, but you'll occasionally be asked to enter a code from your authenticator app. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fkh65U9uR69FZtWcv8jPV%2Fimage.png&width=768&dpr=4&quality=100&sign=e489fe59&sv=2) [PreviousSettings Page](https://docs.tread.fi/settings-page) [NextTelegram Bot](https://docs.tread.fi/telegram-bot) Was this helpful? --- # Alpha Tilt | tread.fi Documentation **Alpha Tilt** skews the execution schedule, **front-loading or back-loading trades** based on market expectations. This setting modifies **order distribution over time** without changing the underlying execution trajectory. #### [](https://docs.tread.fi/advanced-settings/alpha-tilt#how-it-works) **How It Works** * **Positive Alpha Tilt (1)** – **Front-loads execution**, executing **more aggressively early** and slowing down later. * **Negative Alpha Tilt (-1)** – **Back-loads execution**, starting **slowly** and accelerating towards the end. * **Neutral Alpha Tilt (0)** – Maintains **even execution** throughout the order duration. #### [](https://docs.tread.fi/advanced-settings/alpha-tilt#considerations) **Considerations** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcsmeTdRdZAlNdxfdSsqLi6ix37accsQ6OlT40aFGBsx2QaRHT0ocPq7LEq95MYbXItZYjO0QdIBnHaKTRqyJHt3t9BhlkCRHj4nHz4bVHMhHuGhgFL-g5k5V9DABJH681uQufV6A%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=7b62b53&sv=2) Trajectory with Positive Alpha Tilt **Positive Alpha Tilt (1) – Front-Loaded Execution** * Best for **news-driven trading** or **price reversion strategies** where early execution is critical. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfeDtfF8Im4fnoFyO2rYy4SZdANjm61NcbWhuEKzGbfk6xdERkKT7z2i3Ilz665nxXEN8SfshaRUlCbFnkseSOaddNy0Bu_A1Lk5bPzfuMsCdV-XrMhyqbO76Hf6d6DyzuOGKMXUw%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=8b1712f&sv=2) Trajectory with Neutral Alpha Tilt **Negative Alpha Tilt (-1) – Back-Loaded Execution** * Ideal for **trading into liquidity events** or **momentum-driven strategies** where later execution is preferred. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXetCnaNf1Jj8ClVvQm2Qeik7aphlFuXUSIxaI1wHFrJbK5MiKrEhfrdBv8kAwNvJqKZHeL51diQNdQXZv5NUBokF-il2FLjWnNzzSn997XY-8TUshzLDB20QSo_s_mr4CWXQms_UQ%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=d2b67c87&sv=2) Trajectory with Negative Alpha Tilt **Neutral Alpha Tilt (0) – Even Execution** * Suitable for **balanced execution**, ensuring steady participation over time. This setting allows traders to **fine-tune execution timing**, optimizing for early or late fills based on **market conditions and strategy objectives**. [PreviousDiscretion](https://docs.tread.fi/advanced-settings/discretion) [NextMax OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) Last updated 9 months ago Was this helpful? --- # Passiveness | tread.fi Documentation **Passiveness** determines how far **limit orders** are placed from the market price, balancing **execution speed** and **price efficiency**. A higher Passiveness value means the orders are placed deeper in the book, increasing the likelihood they will be filled passively (as a "maker") but decreasing the certainty of execution. #### [](https://docs.tread.fi/advanced-settings/passiveness#how-it-works) **How It Works** * **Higher Passiveness (closer to 1)** – Orders are placed **deeper in the order book**, reducing urgency but **improving price efficiency**. * **Lower Passiveness (closer to 0)** – Orders are placed **closer to the best bid/ask**, increasing **execution probability** but with a **higher risk of adverse selection**. #### [](https://docs.tread.fi/advanced-settings/passiveness#considerations) **Considerations** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcCnzfjVIw0hHUJx9Nxi0R2jm_rX020wLv1EuDZY2qB0GzVbjWganKNa43oI6TtRg3r5GqaP2qlLPUP6PS8yU_gPhQa71RoCtlLrqCbxYspl7iNz5EW6AAi3NY96zsNMustywuFRA%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=2121bb0f&sv=2) Order Placements with High Passiveness **High Passiveness (e.g., 0.8) – Better Pricing, Slower Fills** * Orders are placed **deeper in the book**, reducing **market impact**. * Suitable for **large orders**, minimizing execution costs in **stable markets**. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdMwL_L66cd9iGDmQpA9QIeX16z7yIiWKBsKsabs8e6e9DbTxOfJqWPI0nFgI0I-gxTJBAsaM-onVATJ44vTmBu-OAbg9nZJpey86egszX0wfBY3x0Pxw2D6D7a-bHBzMwhlQzRjQ%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=f60690bb&sv=2) Order Placements with Low Passiveness **Low Passiveness (e.g., 0.2) – Faster Execution, Higher Fill Probability** * Orders are placed **closer to the top of the book**, increasing **fill probability**. * Suitable for **urgent trades**, **volatile markets**, and **short execution windows**. This setting allows traders to **fine-tune execution behavior**, balancing **cost efficiency and execution speed** based on market conditions. [PreviousSpot Leverage](https://docs.tread.fi/advanced-settings/spot-leverage) [NextDiscretion](https://docs.tread.fi/advanced-settings/discretion) Last updated 4 months ago Was this helpful? --- # Order History | tread.fi Documentation Clicking "Orders" on the top navigation bar opens a table displaying all historical orders for the selected user account. Traders can filter this list using various parameters to locate specific trades efficiently. ### [](https://docs.tread.fi/order-management/order-history#available-filters) Available Filters ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FyU2T9eMCIvekQt6DOWn2%2Fimage.png&width=768&dpr=4&quality=100&sign=62dd7e53&sv=2) Filter Menu in Order Management * Date Range – Narrow down the timeframe of displayed orders. * [Trading Pair](https://docs.tread.fi/submitting-orders/pair-naming) – View orders for a specific asset pair. * Side – Filter by buy or sell orders. * [Strategy](https://docs.tread.fi/strategies) – Display orders based on the selected execution strategy. * Market Type – Choose between different market types (e.g., spot, perps, futures and options). * Order Status – Select from Active, Canceled, Finished, Scheduled, Paused, Conditional. * Order Type – Refine by Single, [Multi](https://docs.tread.fi/multi-spread-orders) , or Chained orders. ### [](https://docs.tread.fi/order-management/order-history#order-history-table) Order History Table There is no limit to the number of historical orders displayed, but pagination helps navigate through large datasets efficiently. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FvM3ZuqKH0yEQTKp2I6bS%2Fimage.png&width=768&dpr=4&quality=100&sign=b608af72&sv=2) Order History Table in Order Management Each row in the order history table includes key details such as: * Accounts – The account associated with the order. * [Pair](https://docs.tread.fi/submitting-orders/pair-naming) – The trading pair for the order (e.g., BTC:PERP-USDT). * Side – Whether the order is a Buy or Sell or [Multi](https://docs.tread.fi/multi-spread-orders) . * Executed Notional – The total value of the executed portion of the order. * Target Quantity – The originally intended trade size. * Average Executed Price – The price at which the order was filled on average. * Filled Percentage – The proportion of the order that has been completed. * Time Start – The timestamp when the order was initiated. * [Strategy](https://docs.tread.fi/strategies) – The trading strategy used for execution. * Status – The current state of the order (e.g., Active, Finished, Canceled). * Order Actions – Available actions such as Resubmit, Amend, Pause, Cancel, or View Order Details. [PreviousOrder Management](https://docs.tread.fi/order-management) [NextManage Order](https://docs.tread.fi/order-management/manage-order) Was this helpful? --- # Order Management | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FJ1tHqBIqkCXIr9WfDqg9%2Fimage.png&width=768&dpr=4&quality=100&sign=f830427d&sv=2) Order Management Interface #### [](https://docs.tread.fi/order-management#the-order-management-page-provides-a-comprehensive-record-of-all-past-and-active-orders-placed-on-th) The **Order Management** page provides a **comprehensive record** of all past and active orders placed on the platform. Traders can **filter, review, and manage orders** to optimize execution and refine future trading strategies. #### [](https://docs.tread.fi/order-management#key-features) **Key Features** * **Order Filtering** – Traders can refine search results using filters such as **Date Range, Account, Trading Pair, Side, Strategy, Market Type,** and more. * **View Execution Insights** – View details on order fills, market conditions, and execution efficiency. * **Manage Orders** – Take action on orders, including **submitting remaining quantities, resubmitting, pausing, and canceling orders**. [PreviousMarket Maker Bot](https://docs.tread.fi/market-maker-bot) [NextOrder History](https://docs.tread.fi/order-management/order-history) Last updated 9 months ago Was this helpful? --- # Reduce Only | tread.fi Documentation **Reduce Only** ensures that orders **strictly decrease an existing position**, preventing accidental increases. When enabled, this safeguard helps traders **close or trim positions** without inadvertently expanding them. #### [](https://docs.tread.fi/advanced-settings/reduce-only#how-it-works) **How It Works** * The **Reduce Only instruction** is passed to the exchange on **every order slice**, ensuring that only position-reducing trades are executed. * Prevents new position openings, limiting execution to **position reductions only**. #### [](https://docs.tread.fi/advanced-settings/reduce-only#considerations) **Considerations** * **Not available on OKX**, as the exchange does not support this functionality. * Helps maintain **risk control** by preventing **accidental exposure increases**. This setting is useful for traders who need to **exit or scale down positions** without risking unintended position growth. [PreviousActive Limit](https://docs.tread.fi/advanced-settings/active-limit) [NextStrict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Last updated 9 months ago Was this helpful? --- # Superuser Management | tread.fi Documentation > Note: This feature is exclusive to users on our Institutional and Self-Hosted (Whitelabel) plans. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Ft9sJCwXab76ZHW7ijqsz%252Ftelegram-cloud-photo-size-5-6294177880149265494-y.jpg%3Falt%3Dmedia%26token%3Dbdf14726-d45f-4efd-b868-22220ae36f69&width=768&dpr=4&quality=100&sign=49d272c0&sv=2) #### [](https://docs.tread.fi/superuser-management#overview) Overview The Admin Panel (`/admin_panel`) is the centralized hub for superusers and staff to manage your organization's trading environment. From here, you can control user access, create trading groups, manage permissions, and link the exchange accounts that your teams will use. The panel is organized into three main sections: Dashboard, Trading Groups, and Users. #### [](https://docs.tread.fi/superuser-management#accessing-the-admin-panel) Accessing the Admin Panel * Who: Available to signed-in users with `Staff` or `Superuser` privileges. * How: Navigate to Admin Panel from the main navigation bar or go directly to `https:///admin_panel`. #### [](https://docs.tread.fi/superuser-management#core-concepts) Core Concepts * **Trading Groups:** A trading group is a collection of users linked to one or more exchange accounts. Permissions are assigned to users on a per-group basis, allowing you to control who can do what with specific accounts. * **Users**: These are the individual accounts for your team members. You can create users and assign them to various trading groups. * **Exchange Accounts**: These are the API credentials for your exchange accounts. By attaching them to a trading group, you grant that group's members access to trade or view through those specific credentials. * **Permissions (Roles)**: Permissions define what a user can do within a specific trading group. We provide predefined roles for convenience, but you can also set custom permissions. #### [](https://docs.tread.fi/superuser-management#navigating-the-admin-panel) Navigating the Admin Panel The Admin Panel is divided into three primary sections: * **Dashboard**: Provides a high-level overview of your setup and quick links to common actions. * **Trading Groups**: The core section for creating and managing the groups that link users to exchange accounts. * **Users**: A complete directory for creating users and managing their account details and group memberships. * * * #### [](https://docs.tread.fi/superuser-management#id-1.-dashboard) 1\. Dashboard ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Ft9sJCwXab76ZHW7ijqsz%252Ftelegram-cloud-photo-size-5-6294177880149265494-y.jpg%3Falt%3Dmedia%26token%3Dbdf14726-d45f-4efd-b868-22220ae36f69&width=768&dpr=4&quality=100&sign=49d272c0&sv=2) The Dashboard is your landing page, offering at-a-glance insights and shortcuts. * **Key Statistics**: View totals for Users, Trading Groups, and linked Exchange Accounts. * **Recent Trading Groups**: See recently active groups, their key details, and quickly navigate to them. * **Recent Users:** A list of the newest members and the groups they belong to. * **Quick Actions**: Use the New Group and Add User buttons to perform common tasks instantly. #### [](https://docs.tread.fi/superuser-management#id-2.-trading-groups) 2\. Trading Groups ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FgVfaUmrflB6CX60f8kK5%252FScreenshot%25202568-10-12%2520at%252018.46.22.png%3Falt%3Dmedia%26token%3D7d018c13-2df8-4473-b056-c2a915f78e09&width=768&dpr=4&quality=100&sign=66750cc0&sv=2) The Trading Groups section is where you can assign who can trade on which exchange accounts. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FjwYAM2cKxAiQFgrAGAX3%252FScreenshot%25202568-10-12%2520at%252018.47.07.png%3Falt%3Dmedia%26token%3De4d0800f-1102-447d-8e75-ba1ae87030b1&width=768&dpr=4&quality=100&sign=640540d0&sv=2) * **Create a Group:** Define a new group with a name and description. You can optionally add members and link exchange accounts during creation. * **Manage an Existing Group:** Click on any group to view and edit its details. * **Details**: Update the group's name or description. * **Accounts**: Attach or remove exchange accounts to control the group's market access. * **Members**: Add new users with a specific role, edit an existing member's permissions, or remove a member from the group. * **Delete a Group**: Permanently remove a group and all its member associations. This action requires confirmation. #### [](https://docs.tread.fi/superuser-management#id-3.-users) 3\. Users ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FScaZUhg6PqvTM669HbPg%252FScreenshot%25202568-10-12%2520at%252018.48.05.png%3Falt%3Dmedia%26token%3Da2bb7c80-2729-45d4-a891-4ffb19fb78e4&width=768&dpr=4&quality=100&sign=f2447cc1&sv=2) This section serves as your user directory, where you can perform all user-level administration. * **Create a User**: Set up a new user account with a username, email, and password. You can also grant `Staff` or `Superuser` privileges here. * **Edit a User:** Update a user's details, set a new password, or change their `Staff`/`Superuser` status. * **Manage Group Memberships**: This feature lets you see and manage all groups a single user belongs to from one place. You can quickly add the user to new groups or remove them from existing ones. * **Delete a User**: Permanently delete a user account. This action requires confirmation. * **Search and Filter**: Easily find users by searching for their name, email, or a group they belong to. * * * #### [](https://docs.tread.fi/superuser-management#permissions-and-roles-explained) Permissions and Roles Explained Permissions are granular and assigned to a user _within a specific group_. A user can have different roles in different groups. Role Can Trade Can View Description Trader `Yes` `Yes` Can execute trades and view all activity for the group. Viewer `No` `Yes` Read-only access to view the group's activity. Isolated Trader `Yes` `No` Can execute trades but cannot view activity. Custom \- \- Create a custom role by toggling permissions individually. #### [](https://docs.tread.fi/superuser-management#key-considerations) Key Considerations * `Real-Time Updates`: All changes made in the Admin Panel—such as adding a user, changing permissions, or linking an account—are applied immediately. * `Safety Prompts`: Destructive actions, like deleting a user or removing someone from a group, will always prompt for confirmation to prevent accidents. * `Multiple Group Membership`: A single user can belong to multiple trading groups, each with a different set of permissions and account access. This is useful for segmenting responsibilities. * `Superuser Privileges`: Grant `Staff` or `Superuser` status with caution, as these roles provide full administrative control over the platform. #### [](https://docs.tread.fi/superuser-management#quick-start-guide-a-typical-setup) Quick Start Guide: A Typical Setup Follow these steps to get your team set up quickly: 1. Create a Trading Group: Navigate to the Trading Groups section (or use the Dashboard shortcut) and click Create Group. Give it a descriptive name (e.g., "Quant Team," "Market Making Desk"). 2. Attach Exchange Accounts: Open your newly created group, go to the Accounts tab, and link the exchange API credentials that this group should use. 3. Add Users to the Group: Go to the Members tab and start adding users. Assign each user a role (Trader, Viewer, etc.) that matches their responsibilities. 4. Iterate and Adjust: As your team evolves, you can easily return to the Admin Panel to add new members, create new groups, or adjust permissions as needed. [PreviousGlossary](https://docs.tread.fi/glossary) [NextAPI Reference](https://docs.tread.fi/interacting-with-the-api/api-reference) Last updated 1 month ago Was this helpful? --- # Limit | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FKoAJiUd8v9HiepuLslSg%2Fimage.png&width=768&dpr=4&quality=100&sign=fda0832b&sv=2) Execution with Limit A **Limit Order** allows traders to set a **maximum purchase price (for buys)** or **minimum selling price (for sells)**. Unlike market orders, limit orders provide **price control** but do **not guarantee execution**. **How It Works** * A **buy limit order** executes **only at the limit price or lower**. * A **sell limit order** executes **only at the limit price or higher**. * If the market price does not reach the limit price, the order remains **open until filled, modified, or canceled**. **When to Use a Limit Order** * **Price Control** – Ensures execution at a **desired price or better**. * **Avoiding Slippage** – Protects against **unfavorable price movements**, especially in volatile markets. * **Passive Execution** – Helps **reduce trading fees** by avoiding taker fees. * **Retail-Sized Orders** – Works well for **smaller trades** that do not significantly impact market liquidity. **Considerations** * **No Execution Guarantee** – If the market **never reaches the limit price**, the order may remain unfilled. * **Partial Fills Possible** – Orders may be **partially executed** if there is **insufficient liquidity** at the limit price. * **Not Ideal for Large Trades** – Large limit orders may become **visible in the order book**, potentially influencing market behavior. This order type is best for traders who **prioritize price control over immediate execution** and are willing to wait for optimal conditions. [PreviousMarket](https://docs.tread.fi/strategies/market) [NextIOC](https://docs.tread.fi/strategies/ioc) Last updated 9 months ago Was this helpful? --- # Resubmit Order | tread.fi Documentation #### [](https://docs.tread.fi/order-management/manage-order/resubmit-order#resubmit-orders) **Resubmit Orders** The **Resubmit Orders** feature allows traders to **create a new order** using the same configuration as a previously **active, paused, or canceled order**. This enables quick re-entry into the market without manually setting up a new order. #### [](https://docs.tread.fi/order-management/manage-order/resubmit-order#how-it-works) **How It Works** 1. Click **Resubmit** on any **active, paused, or canceled order**. 2. A new order is created with **the same parameters** as the original order. 3. Execution **starts fresh**, following the market conditions at the time of resubmission rather than the original schedule. This feature provides **flexibility in managing execution**, allowing traders to efficiently restart or replicate an order in response to market conditions. [PreviousResubmit Remaining Order](https://docs.tread.fi/order-management/manage-order/resubmit-remaining-order) [NextAmend Order](https://docs.tread.fi/order-management/manage-order/amend-order) Last updated 9 months ago Was this helpful? --- # Points Program | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FtaiYkoiyRnX2PJ5t6Lgl%252FScreenshot%25202568-11-27%2520at%252015.07.10.png%3Falt%3Dmedia%26token%3D62b09f2f-7289-4694-9ea1-848fa3a4c16d&width=768&dpr=4&quality=100&sign=8b84cba0&sv=2) The tread.fi Points Program rewards active traders with points based on trading activity. Points are allocated weekly from a fixed pool, with multipliers available for high-volume traders and specific exchange boosts. Points can be used to vote for the next perp DEX integration through a staking mechanism. For more information please refer to this [page](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot) . **Season 1 ends on May 18, 2026** #### [](https://docs.tread.fi/season-1-trade-earn-vote/points-program#how-points-work) How Points Work **Weekly Allocation System** * **Fixed weekly pool**: Each week a fixed pool of **100,000 points** is split among all eligible users. * **Proportional distribution**: A user’s award equals 100,000 multiplied by that user’s adjusted volume for the week divided by the total adjusted volume of all eligible users that week. * **Week reset**: The week resets every Wednesday at 00:00 UTC. Weekly adjusted volume is calculated daily and posted on the leaderboard. Users with less than **$100,000** in adjusted volume during the rolling 7-day period are not eligible for that week’s points distribution nor part of the leaderboard. This eligibility rule helps reduce dilution of the total adjusted volume and keeps allocations meaningful. **Points Formula** Points are awarded for activities that generate volume across supported exchanges. Adjusted volume applies existing exchange multipliers and volume-buff multipliers. The platform reserves the right to adjust mechanics and parameters as needed. **Current multipliers** 1. **Exchange Multipliers:** Exchange multipliers are displayed on the points page. 2. **Volume Buff Multiplier** (based on weekly volume) * Weekly volume < $1M: 1x (no buff) * Weekly volume ≥ $1M: 1.1x (each $1 traded counts as $1.10) * Weekly volume ≥ $5M: 1.2x (each $1 traded counts as $1.20) * Weekly volume ≥ $10M: 1.3x (each $1 traded counts as $1.30) 3. **Referral Volume** * 20% of the total weekly volume of referred users is added to the referrer’s weekly activity. * Referred users must trade at least $100,000 in a week before the referrer earns from their activity. #### [](https://docs.tread.fi/season-1-trade-earn-vote/points-program#eligibility-and-anti-gaming-notes) Eligibility and anti-gaming notes * To receive a share of the weekly 100,000 point pool, a user must have **at least $100,000** in adjusted volume during the rolling 7-day period that starts on Monday. * Accounts suspected of abusive behavior will be investigated and may be excluded from weekly allocations and points burned. **Modifications of Terms and Conditions** tread.fi reserves the right to modify, suspend, or terminate the points program at any time, including program rules, eligibility requirements, points rates, exchange multiplier policies, and these terms and conditions. Continued participation after any such change constitutes acceptance of the modified terms. [PreviousSeason 1: Trade, Earn, Vote](https://docs.tread.fi/season-1-trade-earn-vote) [NextExchange Integration Voting Ballot](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot) Last updated 3 days ago Was this helpful? --- # Settings Page | tread.fi Documentation * Three main tabs: **Account**, **Security**, and **Settings** ### [](https://docs.tread.fi/settings-page#account-tab-features) Account Tab Features ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Fs3KBMyliojphRxs6yCJL%252FScreenshot%25202568-09-19%2520at%252017.53.43.png%3Falt%3Dmedia%26token%3D4cdb029d-9c62-4e49-91d0-b4d62b536ba8&width=768&dpr=4&quality=100&sign=fde05532&sv=2) * **Profile Management:** Username, email editing, account creation date, referral code * **Email Update Process:** Step-by-step instructions including 2FA requirements * **Telegram Integration:** Connection, status display, and unlinking. For further instructions on setting up your Telegram bot setup, see [here](https://docs.tread.fi/telegram-bot/setup-guide) . * **Telegram Notifications:** 7 different notification types with descriptions ### [](https://docs.tread.fi/settings-page#security-tab-features) Security Tab Features ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FvomvuYInw3aCN7zKUFh0%252FScreenshot%25202568-09-19%2520at%252017.57.50.png%3Falt%3Dmedia%26token%3D37f37cfc-69b0-4701-84fa-bd6af8258019&width=768&dpr=4&quality=100&sign=6a5739ab&sv=2) * **Password Management:** Change your password here. * **Two-Factor Authentication:** Enable/Disable your Two-factor Authentication here. ### [](https://docs.tread.fi/settings-page#settings-tab-features) Settings Tab Features ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FzYmkDbv3yyUPFoF69kuo%252FScreenshot%25202568-09-19%2520at%252017.59.12.png%3Falt%3Dmedia%26token%3D21566d1f-c162-43ea-b8b0-79eab223dd0f&width=768&dpr=4&quality=100&sign=66ea208c&sv=2) * **Preferences**: Order submission behavior and chart timezone selection * **Theme Selection**: 9 different theme options [PreviousReferral Program](https://docs.tread.fi/referral-program) [NextTwo-factor authentication](https://docs.tread.fi/settings-page/two-factor-authentication) Last updated 2 months ago Was this helpful? --- # Glossary | tread.fi Documentation This glossary provides definitions specific to how terms are used within the platform. Some definitions may differ from traditional trading terminology to align with the platform's unique functionalities and strategies. **Algo Execution:** Automated trading strategies that execute orders based on pre-defined algorithms within tread.fi, optimizing for speed, cost, or market impact. **Alpha Tilt:** A parameter that skews the execution schedule, front-loading or back-loading trades based on market expectations. **Active Limit:** A parameter that enables dynamic limit order placement, adjusting prices in real-time according to market conditions. **Arbitrage:** A strategy that exploits price differences between markets or exchanges, facilitated through tread.fi multi-leg execution features. **Assets Under Management (AUM)/Total Equity:** The current net worth of a portfolio, reflecting all assets and trading results. On the platform, "Assets Under Management (AUM)" visually tracks this historical value. Calculated as cash, stablecoins, current market value of spot holdings, and net unrealized PnL from open derivative positions. **Basis Trading:** A strategy involving simultaneous buying of a spot asset and selling of a futures contract to profit from price discrepancies. **Cross-Exchange Arbitrage:** Buying an asset on one exchange and selling it on another to exploit price differences, automated through tread.fi's smart order routing. **Directional Bias:** Indicates a portfolio's overall tendency to profit from either upward (long bias) or downward (short bias) market movements, derived from the net notional value of open contracts. A positive bias signifies a net bullish stance, while a negative bias indicates a net bearish stance. **Discretion:** A parameter that introduces controlled randomness into order execution, reducing predictability and minimizing detection by the market. **Dynamic Limit Spread:** A setting that defines the minimum price difference required for executing spread trades, ensuring profitability thresholds are met. **Exposure Tolerance:** Adjusts execution speed between legs in multi-leg trades to maintain balance and reduce market exposure when one leg fills faster than the other. **Funding Rate Arbitrage:** A strategy that exploits differences in funding rates between perpetual swaps and spot markets. **Good 'Til Canceled (GTC):** An order that remains active on the tread.fi platform until executed or manually canceled. **Gross Market Value (GMV):** The notional value of all open positions, representing the aggregate size of assets controlled through leverage. Calculated as the sum of spot, cash, and absolute notional values of all open derivative contracts. **Iceberg Order:** A large order split into smaller "slices" to reduce visibility and market impact, managed automatically by the tread.fi engine. **Immediate-Or-Cancel (IOC):** An order that executes all or part immediately, with any unfilled portion canceled. The tread.fi Smart Order Router selects the best venue for execution. **Implementation Shortfall (IS):** An execution trajectory designed to minimize the difference between the arrival price and the final execution price. **Limit Order:** An order to buy or sell at a specified price or better. **Maker:** A trader or order that adds liquidity to the market by placing limit orders that are not immediately filled, earning maker fees when executed. **Market Impact:** The influence that large trades have on the price of an asset. tread.fi strategies aim to minimize this through intelligent execution. **Market Maker (Strategy):** A strategy within tread.fi that places passive limit orders to reduce taker fees and minimize market impact. Unlike traditional market making, this strategy does not provide continuous bid-ask spreads. **Market Order:** An order to buy or sell immediately at the best available price. **Max Clip Size:** Defines the maximum size of individual passive orders in a larger trade to control visibility and execution speed. **Max OTC Percentage:** The maximum portion of an order that can be executed through over-the-counter (OTC) channels. **Out-of-Limit (OOL) Pause:** Pauses execution when the market price moves outside the set limit, preventing trades from executing at unfavorable prices. **Passive Only:** A setting that ensures the engine only places maker orders, avoiding taking liquidity from the market. **Participation Rate:** The percentage of total market volume a trader aims to participate in over a specified period. **Participation Rate Limit:** Sets the maximum percentage of market volume an order can engage with at any time to prevent overexposure. **Pre-Trade Analytics:** Insights provided before execution, including expected costs, participation rates, and market conditions, tailored to tread.fi's algorithms. **Reduce Only:** Ensures that trades can only decrease an existing position, preventing accidental increases. **Smart Order Router (SOR):** Directs orders to the exchange or liquidity venue offering the best price and execution conditions, a core feature of tread.fi. **Slices:** Smaller portions of a parent order, automatically managed by the engine to minimize market impact and maintain order anonymity. **Spread Trade:** A strategy involving the simultaneous buying and selling of related assets to profit from price differences, easily configured through tread.fi. **Statistical Arbitrage:** Uses quantitative models to exploit pricing inefficiencies between correlated assets. **Strict Duration:** Ensures execution stops at the set end time, regardless of whether the full target quantity has been completed. **Taker:** A trader or order that removes liquidity from the market by executing against existing orders in the order book, typically incurring taker fees. **Target Participation Rate:** A strategy that aims to maintain a consistent participation rate in the market without a fixed duration. **Target Time:** A strategy that concentrates execution around a specific future event, optimizing for timing. **Time Weighted Average Price (TWAP):** Executes orders at a steady rate over a specified period, regardless of market conditions. **Triangular Arbitrage:** Exploits price discrepancies between three different assets within the same exchange. **Unrealized PnL (Profit & Loss):** The theoretical profit or loss on open trading positions, based on current market prices versus entry prices. It is "on paper" and not yet realized by closing the position. **Volume Weighted Average Price (VWAP):** Adjusts execution based on market volume to match or improve upon the market’s volume-weighted average price. [PreviousSetup Guide](https://docs.tread.fi/telegram-bot/setup-guide) [NextSuperuser Management](https://docs.tread.fi/superuser-management) Last updated 5 months ago Was this helpful? --- # Amend Order | tread.fi Documentation The **Amend Orders** feature allows traders to **modify specific parameters** of an active order, providing flexibility to adjust execution strategies **without canceling and resubmitting**. #### [](https://docs.tread.fi/order-management/manage-order/amend-order#how-it-works) **How It Works** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F5UxBUTm2TRDzKvdmNMag%2Fimage.png&width=768&dpr=4&quality=100&sign=14daf260&sv=2) Amend Order Pop-up 1. Click **Amend** on an **active order** to adjust its parameters in real time. 2. The engine **applies changes immediately**, allowing the order to continue execution with the updated settings. #### [](https://docs.tread.fi/order-management/manage-order/amend-order#adjustable-parameters-and-limitations) **Adjustable Parameters & Limitations** * **Duration** – Can be **extended** but **not shortened** to less than the time already elapsed. * **Quantity** – Can be **increased** but **not reduced** below the amount already executed. * **Participation Rate Target** – Adjustable for orders using the **Target Participation Rate strategy**. * **Target Time and Interval** – For **Target Time strategy orders**, both can be modified, but the new **Target Time must be set in the future**. * **Limit Price** – Can be adjusted to reflect **changing market conditions**. The **Amend Orders** feature provides **real-time flexibility**, ensuring that orders remain aligned with **evolving market conditions** while maintaining execution continuity. [PreviousResubmit Order](https://docs.tread.fi/order-management/manage-order/resubmit-order) [NextPause Order](https://docs.tread.fi/order-management/manage-order/pause-order) Last updated 9 months ago Was this helpful? --- # vCefi (Verified CeFi) | tread.fi Documentation ### [](https://docs.tread.fi/portfolio/vcefi-verified-cefi#overview) Overview The vCeFi (Verifiable Centralized Finance) tab offers on-chain verified trading performance data, allowing you to share proof of your centralized exchange activity. It merges decentralized transparency with centralized efficiency, enabling you to build a verifiable trading reputation while keeping your individual positions private. You have full control over what data to publicly show or keep private. ### [](https://docs.tread.fi/portfolio/vcefi-verified-cefi#trader-profile-dashboard) Trader Profile Dashboard The main dashboard displays comprehensive trading performance metrics: **Performance Charts** **Unrealized PnL Chart** * **Displays:** Your profit/loss over time * **Data Source:** On-chain verified trading data * **Time Range:** Based on selected date range * **Color Coding:** Green for profits, red for losses **Notional Exposure Chart** * **Displays:** Your total market exposure over time * **Data Source:** On-chain verified position data * **Usage:** Track how your position sizes change over time * **Risk Management:** Helps identify periods of high/low exposure **Cumulative Volume Chart** * **Displays**: Your total trading activity over time * **Chart Type:** Column chart showing daily trading volume * **Exchange Breakdown:** Volume separated by exchange (if multiple accounts) * **Total Display:** Shows cumulative volume for the selected period **Key Terminology** * **Epoch:** Time period for the proof (blockchain timestamp) * **Volume:** Trading volume for the epoch * **Proof:** Link to view detailed proof data * **Share:** Generate shareable image of the proof [](https://docs.tread.fi/portfolio/vcefi-verified-cefi#proofs-table) Proofs Table -------------------------------------------------------------------------------------- ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FFf1Fr3dbqoeTJ28eA2bu%252FScreenshot%25202568-06-26%2520at%252011.23.24.png%3Falt%3Dmedia%26token%3De3ba8f0b-4d7f-43ca-a666-9b4eaa4dd1f9&width=768&dpr=4&quality=100&sign=7fbae744&sv=2) Below the charts, you'll find the **Proof Table**. This table displays your trading activity, which has been **cryptographically secured and verified on-chain**. Your trading activity is captured in **10-minute intervals**, as shown under the **Trade Window** column. For each time interval, one or more metrics can be verified. This is indicated by icons under the **Data** column. You can hover over these icons to see which specific metrics have been verified. To verify the trade data status for a specific window, click the **Proof button** in that row. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FNT7JMt2374pqcUa5b8wE%252FScreenshot%25202568-06-26%2520at%252011.28.24.png%3Falt%3Dmedia%26token%3D33aa287b-d91a-4bb1-9eee-8866afb0693c&width=768&dpr=4&quality=100&sign=e25cdf1&sv=2) The image above shows the computed and verified metrics. It also displays the number of validators for each data point. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F1Fvdzah2yWrT1USQoGbN%252FScreenshot%25202568-06-26%2520at%252011.31.25.png%3Falt%3Dmedia%26token%3D75fcaa93-5400-4aca-86c2-aa99610b7001&width=768&dpr=4&quality=100&sign=4011bc7b&sv=2) Expanding a metric reveals further details about its validation status and attestor information. Clicking the "Proof" button takes you directly to the transaction details on MonVision. The lower table shows the raw trade data, balance data, and pricing data captured during this time interval. This data is used to compute the metrics displayed above. [PreviousFunding Rate Analytics](https://docs.tread.fi/portfolio/funding-rate-analytics) [NextTransaction Cost Analysis](https://docs.tread.fi/transaction-cost-analysis) Last updated 2 months ago Was this helpful? --- # Manage Order | tread.fi Documentation ### [](https://docs.tread.fi/order-management/manage-order#manage-order) Manage Order ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FGGeNV0t3p43zPn6obPqg%2Fimage.png&width=768&dpr=4&quality=100&sign=f0c47c1f&sv=2) Manage Order in Order Management From the Order History table, traders can also take the following actions on each orders: * [Pause](https://docs.tread.fi/order-management/manage-order/pause-order) : Temporarily halt execution of an active order. (Only available for active orders) * [Resubmit Order](https://docs.tread.fi/order-management/manage-order/resubmit-order) : Submit a new order identical to the original order, with the same target quantity. * [Resubmit Remaining Order](https://docs.tread.fi/order-management/manage-order/resubmit-order) : Submit a new order using the same configuration, but with the quantity set to the unfilled portion of the original order. (Only available for incomplete orders) * [Cancel](https://docs.tread.fi/order-management/manage-order/cancel-order) : Terminate an active order before completion. (Only available for active orders) ### [](https://docs.tread.fi/order-management/manage-order#viewing-order-details) Viewing Order Details ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FNGuCyx35U7AfgAmDcBi1%2Fimage.png&width=768&dpr=4&quality=100&sign=a6379b5e&sv=2) Clicking on view order in the manage order section brings up a [detailed order viewer](https://docs.tread.fi/real-time-algo-order-tracking) , displaying a breakdown of individual executions, price movements, and strategy performance. For multi-leg trades, child orders are displayed in this table, while the parent order structure remains accessible through the Multi-Order Viewer. [PreviousOrder History](https://docs.tread.fi/order-management/order-history) [NextResubmit Remaining Order](https://docs.tread.fi/order-management/manage-order/resubmit-remaining-order) Was this helpful? --- # Max OTC Percentage | tread.fi Documentation **Max OTC Percentage** defines how much of an order can be executed via **RFQs (Request for Quotes)** instead of public exchanges. This setting helps balance **cost efficiency** and **execution speed** by determining the share of an order that can be filled **off-exchange** through OTC channels. #### [](https://docs.tread.fi/advanced-settings/max-otc-percentage#how-it-works) **How It Works** * **Higher Max OTC Percentage** – More execution via **RFQs**, reducing **taker fees** and minimizing **market impact**. * **Lower Max OTC Percentage** – More execution on **exchanges**, prioritizing **speed and liquidity access**. #### [](https://docs.tread.fi/advanced-settings/max-otc-percentage#considerations) **Considerations** * **High Max OTC Percentage (e.g., 80%) – More RFQ Execution** * Best for **large trades**, minimizing **slippage and exchange fees**. * **Low Max OTC Percentage (e.g., 20%) – More Exchange Execution** * Ideal for **fast execution** in **highly liquid markets**. This setting allows traders to **optimize execution costs** while maintaining **control over order placement** between **OTC and exchange execution**. [PreviousAlpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) [NextMax Clip Size](https://docs.tread.fi/advanced-settings/max-clip-size) Last updated 9 months ago Was this helpful? --- # Participation Rate Limit | tread.fi Documentation The **Participation Rate Limit** sets a **maximum cap** on the rate at which an order participates in the market, ensuring that execution **does not exceed a predefined percentage of total market volume**. This helps **control market impact** and maintain **order pacing**. #### [](https://docs.tread.fi/advanced-settings/participation-rate-limit#how-it-works) **How It Works** * Defined as a **maximum percentage of total market volume** (e.g., a 15% limit means the order will never account for more than 15% of the market’s traded volume at any time). * The engine **will not exceed this rate** during execution. * If market volume **decreases**, the order may **slow down or pause** to maintain the limit. #### [](https://docs.tread.fi/advanced-settings/participation-rate-limit#considerations) **Considerations** * **Constrained Execution** – If market volume is **insufficient**, orders may be **underfilled** or take longer to execute. * **Slower Execution** – In **low-liquidity conditions**, the **time to complete the order** may be extended. This setting is ideal for traders looking to **limit market impact**, ensuring that **execution remains controlled** and does not **excessively influence market dynamics**. [PreviousAdvanced Settings](https://docs.tread.fi/advanced-settings) [NextSpot Leverage](https://docs.tread.fi/advanced-settings/spot-leverage) Last updated 9 months ago Was this helpful? --- # Delta Neutral Bot | tread.fi Documentation ### [](https://docs.tread.fi/delta-neutral-bot#overview) Overview The Delta Neutral Bot lets you open simultaneous long and short positions to capture funding rate differentials while neutralizing directional price risk. The bot executes both legs using a [TWAP (Time-Weighted Average Price)](https://docs.tread.fi/trajectories/twap) strategy. * * * ### [](https://docs.tread.fi/delta-neutral-bot#key-terms-and-definitions) Key Terms and Definitions ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FSFd17k3Pls78Rv1NujIB%252FScreenshot%25202568-11-07%2520at%252016.12.17.png%3Falt%3Dmedia%26token%3D4c0b7bc7-2f0e-4bb5-af40-a2ab96f9df39&width=768&dpr=4&quality=100&sign=bd80bee1&sv=2) #### [](https://docs.tread.fi/delta-neutral-bot#entry-form-terms) Entry Form Terms **Long Leg / Short Leg** * **Long Leg**: The buy side of the delta neutral position. You profit when the asset price increases, but in a delta neutral strategy this is offset by the short leg. * **Short Leg**: The sell side of the delta neutral position. You profit when the asset price decreases, but in a delta neutral strategy this is offset by the long leg. **Account** * The exchange account used for each leg. You can use different accounts for cross-exchange arbitrage **Pair** * The trading pair (e.g., `BTC:PERP-USDT`, `ETH:PERP-USDT`). Each leg can use a different pair, allowing cross-asset delta neutral strategies. **Leverage** * The leverage multiplier for the position. Higher leverage increases position size but also risk. Only applicable to perpetual futures contracts, not spot markets. **Notional** * The total dollar value of the delta neutral position. This amount is split equally between the long and short legs (each leg receives 50% of the notional value). **Mode** * The execution speed and aggressiveness of the order: * **Aggressive**: Fast execution (~5 minutes), higher market impact, higher urgency * **Normal**: Balanced execution (~15 minutes), moderate market impact, medium urgency * **Passive**: Slow execution (~30 minutes), lower market impact, lower urgency **Funding Rate (Long)** * The funding rate displayed for the selected long pair. Shows the rate you would pay (negative) or receive (positive) as a long position holder. Funding rates are typically paid every 8 hours. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FCrs8tYqTQ8yfBbawiTDQ%252FScreenshot%25202568-11-07%2520at%252016.17.24.png%3Falt%3Dmedia%26token%3D83abc8fd-6294-4d21-bdba-5c9116c23361&width=768&dpr=4&quality=100&sign=5195e18c&sv=2) **Available Margin** * The available quote currency (e.g., USDT) balance in the selected account that can be used to open the position. This includes both margin and asset balances. **Target Amount** * The notional value allocated to each leg (long or short). This equals half of your total notional input. **Estimated Fees** * The total estimated trading fees for each leg, including: * **Builder Fee**: A fixed 2 basis points (0.02%) fee * **Maker Fee**: Exchange-specific maker fees (varies by exchange and VIP Tier) **Sided Funding Rate** * The funding rate from your perspective for each leg: * **Long Sided Funding Rate**: For long positions, this is the negative of the raw funding rate (if funding is positive, longs pay, so your rate is negative) * **Short Sided Funding Rate**: For short positions, this equals the raw funding rate (if funding is positive, shorts receive, so your rate is positive) **Net Sided Funding Rate** * The combined funding rate across both legs. This represents your net funding income (positive) or cost (negative) for the entire delta neutral position. Calculated as: Long Sided Funding Rate + Short Sided Funding Rate. **Total Exposure** * The total executed notional value of the position, calculated as the sum of both legs' executed notional values. This represents the total capital deployed in the delta neutral strategy. **Net Exposure** * The net directional exposure of your position, expressed as a percentage of total exposure. In a perfectly balanced delta neutral position, this should be close to 0%. * **Positive values** indicate you have more long exposure than short * **Negative values** indicate you have more short exposure than long * Values above 1% may trigger an "Unbalanced" warning **Funding Rate** * The net combined funding rate for the position (same as Net Sided Funding Rate). Shows your net funding income (green/positive) or cost (red/negative) for the entire position. **Status** * The current state of the position: * **Opening**: The opening order is still executing * **Open**: The opening order is complete and the position is active * **Closing**: A closing/wind-down order is executing * **Complete**: The position has been fully closed * **Unbalanced**: Warning indicator when net exposure exceeds 1% of total exposure **Orders** * Links to view the opening and closing orders: * **↑ (Up Arrow)**: Opens the opening order details * **↓ (Down Arrow)**: Opens the closing order details (if applicable) **Actions** * Available actions for each position: * **Cancel (X icon)**: Cancels any active opening or closing orders * **Wind Down (Swap icon)**: Reverses the position by submitting a closing order that unwinds both legs * * * ### [](https://docs.tread.fi/delta-neutral-bot#how-it-works) How It Works 1. **Setup**: Select accounts and pairs for both long and short legs, set your total notional value, and choose an execution mode. 2. **Execution**: The bot simultaneously places buy orders for the long leg and sell orders for the short leg using a TWAP strategy to minimize market impact. 3. **Funding Capture**: While the position is open, you earn or pay funding rates based on the net difference between the long and short funding rates. 4. **Wind Down**: When ready to close, use the "Wind Down" action to reverse both positions simultaneously. * * * ### [](https://docs.tread.fi/delta-neutral-bot#important-notes) Important Notes * **Delta Neutral Strategy**: This strategy aims to be market-neutral, profiting from funding rate differentials rather than price movements. * **Cross-Asset Support**: You can use different pairs for long and short legs, enabling cross-asset delta neutral strategies. * **Unbalanced Positions**: If net exposure exceeds 1%, the position is marked as "Unbalanced" and you may have directional risk. * **Funding Rates**: Funding rates change every 8 hours and can be positive or negative. Monitor the net funding rate to ensure profitability. * **Fees**: Both legs incur trading fees, which reduce your net funding income. Consider fees when evaluating profitability. * * * [PreviousMarkouts](https://docs.tread.fi/real-time-algo-order-tracking/markouts) [NextMarket Maker Bot](https://docs.tread.fi/market-maker-bot) Last updated 22 days ago Was this helpful? --- # Passive Only | tread.fi Documentation **Passive Only** ensures that the engine **does not cross the spread or take liquidity**, meaning all fills will be **maker-type (limit) orders**. This setting helps traders **add liquidity to the market** while reducing execution costs, as **maker fees are typically lower than taker fees**. #### [](https://docs.tread.fi/advanced-settings/passive-only#how-it-works) **How It Works** * The engine **only places passive limit orders**, preventing orders from executing immediately as taker orders. * Helps traders **optimize execution costs** by avoiding **higher taker fees**. #### [](https://docs.tread.fi/advanced-settings/passive-only#considerations) **Considerations** * **Fill quantities may occasionally fall below the trajectory's lower bound**, as the engine **cannot guarantee fills without taking liquidity**. * **Orders may not reach the full target quantity** if the **duration expires** before all fills are completed. This setting is useful for traders prioritizing **cost efficiency over execution speed**, ensuring all orders contribute to market liquidity. [PreviousMax Clip Size](https://docs.tread.fi/advanced-settings/max-clip-size) [NextActive Limit](https://docs.tread.fi/advanced-settings/active-limit) Last updated 9 months ago Was this helpful? --- # Telegram Bot | tread.fi Documentation The tread.fi Telegram bot provides on-the-go access to algo-trading functions and real-time updates. For setup instructions please [here](https://docs.tread.fi/telegram-bot/setup-guide) . Please note the Telgram bot is still in beta, please use with caution. ### [](https://docs.tread.fi/telegram-bot#key-commands) Key Commands The bot uses interactive buttons for most actions, allowing for fast and intuitive trading. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252Fajn4wPII86ULEqSjxdBS%252Fimg_1710.png%3Falt%3Dmedia%26token%3Ddd78fb03-9cbe-4384-b4ec-904aa179f40d&width=768&dpr=4&quality=100&sign=e49c24ba&sv=2) Telegram Bot Menu * **/order**: Place new trades. * Choose the account you want to trade from. * Select your desired trading pair. * Use preset amounts (e.g., 1,000 USDT, 10,000 USDT), percentages of your balance (50% or 100% for quick exits), or enter a custom quantity. * Specify the urgency of your order (Very Low, Low, Medium, High, Very High). * **/balance**: Get a summary of your current account holdings. You can view balances for a specific account or for all accounts combined. * **/portfolio**: Track your account's historical performance. This command generates graphical charts of your PnL and balance history over the last 7 days. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FMhWLYxNt8DxD6mXY85TQ%252Fphoto_2025-06-20_14-39-27.jpg%3Falt%3Dmedia%26token%3D78dceb14-c1c5-41ee-9fce-f4f99f59fea2&width=768&dpr=4&quality=100&sign=16a99c38&sv=2) Unrealized PNL Graph ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F26NL1TdYrzf4CyVjWXuM%252Fphoto_2025-06-20_14-39-33.jpg%3Falt%3Dmedia%26token%3D3ca97f44-db1b-47ed-81d0-c9a380ef7608&width=768&dpr=4&quality=100&sign=c37f9baa&sv=2) Total Balance & GMV Graph * **/status:** Check the status of any active or recent order. This displays perecentage filled, average execution price and a direct link to the order page. * **/cancel:** Cancel an active order. If you have multiple active orders, you'll be prompted to select which one to cancel. * **/price:** View a candlestick price chart for a specific market. Use the format `/price [period]` * Time period can be hour, day, week, month * Example: /price Binance ETH-USDT day ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FNbgkTBqgKc2pV4gpYzcr%252FIMG_20250618_170236_454.jpg%3Falt%3Dmedia%26token%3Da69d6fdf-f10f-4372-9497-f1cccab8a0f1&width=768&dpr=4&quality=100&sign=52b1a07c&sv=2) Candlestick Price Chart * **/exit**: Exit the current workflow. * **/help:** Display the full list of available bot commands. ### [](https://docs.tread.fi/telegram-bot#getting-alerts) Getting Alerts You can customize Telegram alerts in the Settings page to stay informed on key trading events. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FOHAcRscMjg4pcWezChBh%252FScreenshot%25202568-06-17%2520at%252010.10.12%25E2%2580%25AFAM.png%3Falt%3Dmedia%26token%3Df7c4d203-a5ee-4e4d-86a9-26940dc9ddaa&width=768&dpr=4&quality=100&sign=96809527&sv=2) ### [](https://docs.tread.fi/telegram-bot#alerts) Alerts Below is an example of an order's notifications in Telegram ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F03fUQYgTgSBirbhqm6TM%2Fimage.png&width=768&dpr=4&quality=100&sign=f6fdebf0&sv=2) [PreviousTwo-factor authentication](https://docs.tread.fi/settings-page/two-factor-authentication) [NextSetup Guide](https://docs.tread.fi/telegram-bot/setup-guide) Last updated 5 months ago Was this helpful? --- # Strategies | tread.fi Documentation Strategies are **pre-configured execution methods** designed to help traders achieve specific trading objectives. Each strategy is built on a core execution trajectory—such as [**VWAP**](https://docs.tread.fi/trajectories/vwap) **,** [**TWAP**](https://docs.tread.fi/trajectories/twap) **,** [**Target Time**](https://docs.tread.fi/trajectories/target-time) **, or** [**Implementation Shortfall**](https://docs.tread.fi/trajectories/is) **-** with additional pre-configured advanced settings that control how trades interact with the market. These strategies streamline execution decisions, allowing traders to optimize for **speed, cost efficiency, and market impact**. **Available Strategies** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F5Q4yASV7aT68MrxD6gru%252FScreenshot%25202568-09-02%2520at%252010.18.47.png%3Falt%3Dmedia%26token%3Dfce40920-3451-43c5-ad72-c7479aa5f393&width=768&dpr=4&quality=100&sign=a1449434&sv=2) * [**Impact Minimization**](https://docs.tread.fi/strategies/impact-minimization) – Spreads orders over time to reduce market impact using a **VWAP trajectory**. Ideal for large trades requiring discreet execution. * [**Time Constant**](https://docs.tread.fi/strategies/time-constant) – Executes trades at a **consistent rate** over a fixed duration. Suitable for traders who need steady, predictable execution. * [**Target Participation Rate**](https://docs.tread.fi/strategies/target-participation-rate) – Adjusts execution dynamically to maintain a **fixed percentage of market volume**. Ensures proportional participation based on real-time trading activity. * [**Market Maker**](https://docs.tread.fi/strategies/market-maker) – Places **passive-only limit orders** to maintain market presence while minimizing taker fees. Best suited for cost-sensitive strategies. * [**Aggressive Taker**](https://docs.tread.fi/strategies/aggressive-taker) – Prioritizes **speed** with front-loaded execution, ensuring quick fills. Ideal for urgent trades requiring immediate liquidity. * [**Aggressive Maker**](https://docs.tread.fi/strategies/aggressive-maker) – Uses **passive-only limit orders** with a 25% participation target, balancing execution speed and cost efficiency. * [**Target Time**](https://docs.tread.fi/strategies/target-time) – Concentrates execution around a **specific future event**, making it ideal for event-driven trading strategies. Each strategy is designed to align execution with **market conditions and specific trading goals**. For detailed configurations and use cases, refer to individual strategy sections. [PreviousPre-Trade Analytics](https://docs.tread.fi/pre-trade-analytics) [NextImpact Minimization](https://docs.tread.fi/strategies/impact-minimization) Last updated 2 months ago Was this helpful? --- # Market Maker | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FwZ8Hy9wvoicPYuCCChF1%2Fimage.png&width=768&dpr=4&quality=100&sign=68b27d3e&sv=2) Execution with Market Maker The Market Maker algorithm is designed for users who want to execute a large order while acting as a liquidity provider. The primary goal is to get filled passively by placing limit orders, which can lead to better execution prices and lower trading fees. **How It Works** * It essentially follows the [**VWAP (Volume Weighted Average Price) trajectory**](https://docs.tread.fi/trajectories/vwap) , but primarily relying on **passive limit orders** to avoid taker fees and minimize market impact. * It only resorts to urgent 'taker' fills if the execution falls seignificantly behind schedule, or in other words, breaches the lower discretionary bound. In short, the goal of this strategy is: be passive first, only become aggressive when necessary to stay on track. **When to Use This Strategy** * **High Taker Fee Markets** – Ideal for trading in environments where **taker fees significantly impact profitability**. * **Non-Alpha-Driven Trades** – Best for execution-focused trades where **price prediction is not a priority**. * **High Sensitivity to Market Impact** – Suitable for traders aiming to **reduce order visibility and market influence**. **Potential Drawbacks** * **Extended Execution Time** – If market conditions limit passive fills, orders may take **longer than expected** to complete. * **Uncertain Completion** – Relying solely on passive orders means the strategy may face **execution delays or incomplete fills** in low-liquidity conditions. This strategy is best for traders seeking **cost-efficient execution** with minimal market impact, particularly in **high-fee environments** where avoiding taker orders improves profitability. #### [](https://docs.tread.fi/strategies/market-maker#market-maker-configurations) **Market Maker Configurations** [Trajectory](https://docs.tread.fi/trajectories) [VWAP](https://docs.tread.fi/trajectories/vwap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Participation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) 1% _(required)_ [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Enabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousTarget Participation Rate](https://docs.tread.fi/strategies/target-participation-rate) [NextAggressive Maker](https://docs.tread.fi/strategies/aggressive-maker) Last updated 4 months ago Was this helpful? --- # Portfolio | tread.fi Documentation ### [](https://docs.tread.fi/portfolio#overview) Overview The Portfolio section is your comprehensive trading account management hub, providing detailed insights into your account's financial position, performance, and trading activity. This section is organized into three main tabs, each offering unique perspectives on your trading account data. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F8oyCwOn2j0pOdrWPjGPQ%252FPortfolioSep.png%3Falt%3Dmedia%26token%3Dc97324e8-77a2-4dca-a6d4-5e1a88b33458&width=768&dpr=4&quality=100&sign=7d8ca1cb&sv=2) ### [](https://docs.tread.fi/portfolio#tab-overview) Tab Overview #### [](https://docs.tread.fi/portfolio#portfolio-tab) [Portfolio Tab](https://docs.tread.fi/portfolio/portfolio-tab) Your primary account dashboard and asset overview. The Portfolio tab serves as your main command center, providing a complete view of your account's financial health and performance. This tab is available for all account types (CEX and DEX). * **Real-time Portfolio Metrics:** Total equity, directional bias, and unrealized PnL * **Interactive Equity Charts:** Historical performance with Total Equity and Gross Market Value (GMV) tracking * **Comprehensive Asset Breakdown:** Detailed tables organized by market type (Perpetual Futures, Spot, Cash, etc.) * **Risk Management Tools:** Liquidation risk assessment for leveraged positions * **Historical Trends:** Multiple time frames (1d, 7d, 30d, 1y) for performance tracking * **Data Export:** CSV download functionality for external analysis For further details specific to this tab please see [here](https://docs.tread.fi/portfolio/portfolio-tab) . * * * #### [](https://docs.tread.fi/portfolio#funding-tab) [Funding Tab](https://docs.tread.fi/portfolio/funding-rate-analytics) The Funding tab provides in-depth analysis of your funding-related costs and activities, helping you understand the true cost of maintaining leveraged positions. This tab is only available for Non-DEX accounts. **Key Features:** * **Funding Cost Analysis:** Daily and cumulative funding payments/receipts * **Borrowing Activity:** Track borrowing costs and patterns over time * **Position-specific Funding:** Individual funding rates and costs per trading pair * **Historical Trends:** Visual charts showing funding patterns across different time periods * **Performance Impact:** How funding costs affect your overall returns * **Time Frame Controls:** Analyze funding data across 1d, 7d, 30d, and 1y periods For further details specific to this tab please see [here](https://docs.tread.fi/portfolio/funding-rate-analytics) . * * * #### [](https://docs.tread.fi/portfolio#vcefi-tab) [vCeFi Tab](https://docs.tread.fi/portfolio/vcefi-verified-cefi) The vCeFi tab provides transparency and verification of your trading activity through on-chain proofs. This feature enables you to share verifiable trading performance data while maintaining privacy. This tab is only available for Non-DEX accounts. **Key Features:** * **Trading Proofs:** Blockchain-verified records of your trading activity * **Performance Metrics:** Total equity, unrealized PnL, and notional exposure tracking * **Volume Analysis:** Cumulative trading volume and activity patterns * **Shareable Performance:** Generate shareable images of your trading proofs * **Privacy Controls:** Toggle between private and public proof sharing * **Historical Data:** Track performance and volume over time For further details specific to this tab please see [here](https://docs.tread.fi/portfolio/vcefi-verified-cefi) . ### [](https://docs.tread.fi/portfolio#account-type-differences) Account Type Differences #### [](https://docs.tread.fi/portfolio#non-dex-accounts-centralized-exchanges--hyperliquid) Non-DEX Accounts (Centralized Exchanges + Hyperliquid) * All three tabs available: Portfolio, Funding, and vCeFi * Full feature set: Complete risk management, funding analysis, and proof generation * Advanced metrics: Liquidation risk, funding costs, and detailed position analysis #### [](https://docs.tread.fi/portfolio#dex-accounts-on-chain-swaps-trading-via-okxdex-integration) DEX Accounts (On-Chain Swaps/Trading via OKXDEX Integration) * **Portfolio tab only:** Simplified view focused on asset holdings * **Chain-specific organization**: Assets grouped by blockchain (Ethereum, BSC, Base, Solana) * **Streamlined interface**: Optimized for multi-chain portfolio management [PreviousCancel Order](https://docs.tread.fi/order-management/manage-order/cancel-order) [NextPortfolio (Tab)](https://docs.tread.fi/portfolio/portfolio-tab) Last updated 2 months ago Was this helpful? --- # Target Time | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FaW9AEE0c8MgXnZ3aVk1e%2Fimage.png&width=768&dpr=4&quality=100&sign=14d336a7&sv=2) Execution with Target Time The **Target Time** strategy is designed for traders who need to **execute trades around a specific future event**. It provides **precise timing control**, using a [**Target Time trajectory**](https://docs.tread.fi/trajectories/target-time) to optimize execution around a designated point in time. **How It Works** * Traders configure two key parameters: * **Target Time (UTC)** – The point at which execution is most concentrated. * **Interval (in minutes)** – The total execution window, defining how far trades are spread before and after the target time. * The engine follows a **normal distribution** for order execution: * The **mean** is the target time. * The **standard deviation** is **10% of the total order duration**. * **68% of executions** occur within the **middle 20% of the total duration**, ensuring most trades happen near the target time. **When to Use This Strategy** * **Event-Driven Trading** – Ideal for executing trades around **scheduled market events, announcements, or economic releases**. * **Precise Timing Requirements** – Best when **trades must be concentrated around a specific time**. * **Controlled Execution** – Helps **manage market exposure** within a defined execution window. **Potential Drawbacks** * **Market Volatility Risks** – If the market **moves unpredictably** near the target time, execution may be impacted. * **Timing Sensitivity** – Misjudging the event’s impact or timing could lead to **suboptimal execution**. * **Symmetric Execution** – The strategy **does not adapt to real-time market shifts**, potentially missing favorable conditions outside the set window. This strategy is best for traders looking to **align execution with key events** while maintaining **controlled exposure and precise timing**. #### [](https://docs.tread.fi/strategies/target-time#target-time-configurations) **Target Time Configurations** [Trajectory](https://docs.tread.fi/trajectories) [Target Time](https://docs.tread.fi/trajectories/target-time) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Disabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousAggressive Taker](https://docs.tread.fi/strategies/aggressive-taker) [NextMarket](https://docs.tread.fi/strategies/market) Last updated 4 months ago Was this helpful? --- # API Reference | tread.fi Documentation To receive your API Token and access all other API capabilities please contact us [here](https://www.tread.fi/contact) . ### [](https://docs.tread.fi/interacting-with-the-api/api-reference#list-of-apis) List of APIs [Core Order API](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api) [Simple Orders (Market, Limit, IOC, Iceberg)](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg) [Algorithmic Orders (VWAP, TWAP, POV)](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov) [Multi Order](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order) [Accounts](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts) [Admin](https://docs.tread.fi/interacting-with-the-api/api-reference/admin) ### [](https://docs.tread.fi/interacting-with-the-api/api-reference#non-primitive-types) Non-Primitive Types There are types referenced in the API docs which are enums and complex types (structures). They are characterized by their upper case naming. Refer to the [type reference page](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) for more detail. [Type Reference](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) [PreviousSuperuser Management](https://docs.tread.fi/superuser-management) [NextCore Order API](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api) Last updated 4 months ago Was this helpful? --- # Funding Rate Analytics | tread.fi Documentation ### [](https://docs.tread.fi/portfolio/funding-rate-analytics#overview) Overview The Funding tab provides comprehensive analysis of your funding costs and borrowing activities, helping you understand the true cost of maintaining leveraged positions. This tab is exclusively available for CEX (Centralized Exchange) and Hyperliquid accounts and offers detailed insights into your funding costs/payments. ### [](https://docs.tread.fi/portfolio/funding-rate-analytics#key-features) Key Features #### [](https://docs.tread.fi/portfolio/funding-rate-analytics#summary-metrics-cards) Summary Metrics Cards ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FYiPffEl2fhb5c2Tro1Kh%252FScreenshot%25202568-09-03%2520at%252015.22.12.png%3Falt%3Dmedia%26token%3Df7e0052c-fd8c-473e-b8d4-37c7c5976d2f&width=768&dpr=4&quality=100&sign=b4f17df8&sv=2) The top section displays four key funding metrics: **Total Equity** * **Displays:** Your current overall portfolio value in USD * **Purpose:** Provides context for funding cost analysis relative to your total account value * **Usage:** Used to calculate funding return percentage **Cumulative Funding** * **Displays:** Total accumulated funding payments/receipts over time * **Calculation:** Sum of all funding payments/costs since account inception **Cumulative Borrow** * **Displays:** Total accumulated borrowing costs over time **Funding Return** * **Displays:** Funding impact as a percentage of your total equity * **Calculation:** `(Total Funding in Period / Total Equity) × 100` * **Color coding:** * Green: Positive funding return (net funding received) * Red: Negative funding return (net funding paid) * **Purpose:** Shows how funding costs affect your overall returns #### [](https://docs.tread.fi/portfolio/funding-rate-analytics#funding-payments-chart) Funding Payments Chart ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F0VIXkFTEvsDihduLT3Jv%252FScreenshot%25202568-09-03%2520at%252015.26.45.png%3Falt%3Dmedia%26token%3Da05d5461-f405-4c76-ac9d-649a93dea697&width=768&dpr=4&quality=100&sign=8c771313&sv=2) A comprehensive stacked bar chart showing funding activity in 4-hour intervals: **Chart Features** * **4-Hour Intervals:** Funding rates are paid every 4 hours at 00:00, 04:00, 08:00, 12:00, 16:00, 20:00 UTC * **Stacked Bars:** Multiple data series combined in each bar * **Time Frame Controls:** Buttons to switch between 1D, 7D, 30D, and 1Y views **Data Series** * **4-Hour Funding (Green/Red bars)** * Green: Positive funding (you received payments) * Red: Negative funding (you paid costs) * **Calculation:** Net funding payments for each 4-hour period * **Borrow Costs (Orange bars)** * **Deposits (Blue bars)** * Shows deposits made during each 4-hour period * **Withdrawals (Pink bars)** * Shows withdrawals made during each 4-hour period * Displayed as negative values (subtracted from the stack) **Chart Interactions** * **Hover Tooltips:** Show exact values for each data series * **Time Period Selection:** Use 1D, 7D, 30D, 1Y buttons to change the analysis window **Average Funding Rate Chart** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FZSokkEfqqBqzkylZlMDk%252FScreenshot%25202568-09-03%2520at%252015.34.05.png%3Falt%3Dmedia%26token%3D0c8321a5-8f8f-4bbe-b1ae-2554a3ae689b&width=768&dpr=4&quality=100&sign=fa2563d&sv=2) * **Displays:** Column chart showing funding rates by trading pair * **Y-Axis:** Funding rate as percentage * **Purpose:** Compare funding rates across different trading pairs * **Tooltip:** Shows exact funding rate percentage on hover **Funding Contribution Chart** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FePRxQKfe1PpTmLrakcWL%252FScreenshot%25202568-09-03%2520at%252015.34.12.png%3Falt%3Dmedia%26token%3D9a92727d-2022-4354-a2d7-0ded5924d3cf&width=768&dpr=4&quality=100&sign=be372deb&sv=2) * **Dispalys:** Pie chart showing each position's contribution to total funding * **Purpose:** Identify which positions contribute most to your funding costs/benefits * **Legend:** Shows percentage contribution for each position #### [](https://docs.tread.fi/portfolio/funding-rate-analytics#positions-table) Positions Table A detailed table showing funding metrics for each trading pair: **Table Columns** * **Symbol:** Trading pair (e.g., BTCUSDT, ETHUSDT) * **Avg Funding Rate**: Average funding rate as percentage (e.g., 0.0123% = 0.000123) * **Total Funding:** Net funding amount in USD for the selected time period * **Contribution:** Percentage of total funding attributed to this position. ### [](https://docs.tread.fi/portfolio/funding-rate-analytics#integration-with-other-tabs) Integration with Other Tabs #### [](https://docs.tread.fi/portfolio/funding-rate-analytics#portfolio-tab-connection) Portfolio Tab Connection * Funding costs directly impact your unrealized PnL * Total equity from Portfolio tab is used in funding return calculations * Monitor both tabs together for complete performance picture #### [](https://docs.tread.fi/portfolio/funding-rate-analytics#vcefi-tab-connection) vCeFi Tab Connection * Funding activity is included in your trading proofs * Verifiable funding data supports your trading performance claims * Historical funding data contributes to your trading reputation The Funding tab is essential for understanding the true cost of leveraged trading and optimizing your position management strategy. Regular monitoring of funding costs helps ensure that funding payments don't erode your trading profits over time. [PreviousPortfolio (Tab)](https://docs.tread.fi/portfolio/portfolio-tab) [NextvCefi (Verified CeFi)](https://docs.tread.fi/portfolio/vcefi-verified-cefi) Last updated 2 months ago Was this helpful? --- # Aggressive Maker | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FUuNNBPwttQjpx5CxYy36%2Fimage.png&width=768&dpr=4&quality=100&sign=4cbb9b34&sv=2) Execution with Aggressive Maker The **Aggressive Maker** strategy is designed for traders who want to **maintain a strong order book presence** while ensuring a **high execution rate**. This strategy follows a [**VWAP (Volume Weighted Average Price) trajectory**](https://docs.tread.fi/trajectories/vwap) and targets a **25% volume participation rate**, placing **only passive limit orders** to optimize execution costs. **How It Works** * The engine places [**passive-only**](https://docs.tread.fi/advanced-settings/passive-only) **limit orders dynamically**, ensuring **25% market volume participation**. * The [**passiveness**](https://docs.tread.fi/advanced-settings/passiveness) **configuration** controls how far orders are placed from the market price, while [**active limit**](https://docs.tread.fi/advanced-settings/active-limit) **mode** allows for more flexible limit order placement. * Execution follows a **VWAP trajectory**, balancing **participation and cost efficiency**. **When to Use This Strategy** * **Markets with High Taker Fees** – Best for traders looking to **avoid costly taker fees** while ensuring steady execution. * **Active Market Participation** – Suitable for those who want **consistent market presence** without incurring high costs. * **Moderate Execution Urgency** – A good balance between **execution speed and cost-efficiency**, leveraging strategic passive order placement. **Potential Drawbacks** * **Potential Execution Delays** – Passive orders may take **longer to fill**, depending on market conditions. * **Market Impact Risks** – A **high participation rate** may signal trading intentions, potentially influencing price behavior. This strategy is ideal for traders seeking **cost-effective execution** with **steady market participation**, while avoiding **taker fees** and maintaining a **controlled execution footprint**. #### [](https://docs.tread.fi/strategies/aggressive-maker#aggressive-maker-configurations) **Aggressive Maker Configurations** [Trajectory](https://docs.tread.fi/trajectories) [VWAP](https://docs.tread.fi/trajectories/vwap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Participation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) 25% _(required)_ [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Enabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Enabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousMarket Maker](https://docs.tread.fi/strategies/market-maker) [NextAggressive Taker](https://docs.tread.fi/strategies/aggressive-taker) Last updated 4 months ago Was this helpful? --- # Active Limit | tread.fi Documentation **Active Limit** enables limit orders to **dynamically follow the market’s midpoint**, ensuring they adjust in real-time as prices fluctuate. This setting helps traders stay **competitive** by continuously updating order placement to reflect market movements. #### [](https://docs.tread.fi/advanced-settings/active-limit#how-it-works) **How It Works** * **Limit orders are pegged to dynamic price levels**, adjusting as the market moves. * **Orders are re-pegged every second**, maintaining alignment with current market conditions. #### [](https://docs.tread.fi/advanced-settings/active-limit#considerations) **Considerations** * **Enhances responsiveness**, ensuring limit orders remain near the market price. * **May increase visibility in the order book**, potentially signaling trading intent. This setting is useful for traders looking to **stay competitive in fast-moving markets** while maintaining control over order execution. [PreviousPassive Only](https://docs.tread.fi/advanced-settings/passive-only) [NextReduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Last updated 9 months ago Was this helpful? --- # Cancel Order | tread.fi Documentation The **Cancel Orders** feature allows traders to **manually terminate an active order** before completion, preventing further execution. This provides flexibility to **lock in profits, limit exposure, or respond to unfavorable market conditions**. #### [](https://docs.tread.fi/order-management/manage-order/cancel-order#how-it-works) **How It Works** 1. Click **Cancel** on an **active order** to immediately stop further execution. 2. The **order status updates to Canceled**, and no further trades will be executed for that order. 3. **Any unfilled portion remains unexecuted**, and no new placements will be made. #### [](https://docs.tread.fi/order-management/manage-order/cancel-order#limitations) **Limitations** * **Irreversible Action** – Once an order is canceled, it **cannot be resumed** and must be resubmitted as a **new order** if execution is needed. #### [](https://docs.tread.fi/order-management/manage-order/cancel-order#cancel-all-orders) **Cancel All Orders** Traders can **cancel all active orders at once** from the **main execution page** or **order management page**. Clicking **Cancel All** will: * **Immediately stop execution for all open orders** across selected accounts. * Provide a **fast way to manage risk** and exit multiple trades simultaneously. The **Cancel Orders and Cancel All** feature gives traders **full control over execution**, allowing them to quickly **exit positions, manage risk, and adapt to changing market conditions**. [PreviousPause Order](https://docs.tread.fi/order-management/manage-order/pause-order) [NextPortfolio](https://docs.tread.fi/portfolio) Last updated 9 months ago Was this helpful? --- # Strict Duration | tread.fi Documentation **Strict Duration** ensures that order execution **stops exactly at the specified duration or end time**, regardless of whether the full target quantity has been filled. When enabled, the strategy adheres **strictly to the defined execution window** without extensions. #### [](https://docs.tread.fi/advanced-settings/strict-duration#how-it-works) **How It Works** * Execution **automatically stops** after the **specified duration or at the predefined end time**. * Ensures the strategy **does not extend beyond the defined timeframe**, even if the order is only partially filled. #### [](https://docs.tread.fi/advanced-settings/strict-duration#considerations) **Considerations** * The order may **remain partially filled** if market conditions **do not support full execution within the set timeframe**. * Ideal for traders requiring **time-bound execution** with **no flexibility for extensions**. * **Strict Duration cannot be used with participation rate strategies**, such as **Target Participation Rate, Market Maker, and Aggressive Maker**. This setting is useful for traders who **prioritize execution within a fixed timeframe**, ensuring orders do not extend beyond the intended trading window. [PreviousReduce Only](https://docs.tread.fi/advanced-settings/reduce-only) [NextConditional Order](https://docs.tread.fi/conditional-order) Last updated 9 months ago Was this helpful? --- # Discretion | tread.fi Documentation **Discretion** introduces **controlled randomness** into order execution, making **trading patterns less predictable** and reducing the risk of detection by other market participants. This setting adjusts the balance between **passive execution for better pricing** and **aggressive execution for closer benchmark tracking**. #### [](https://docs.tread.fi/advanced-settings/discretion#how-it-works) **How It Works** * **Higher discretion** – Orders rely more on **passive fills**, leading to **better pricing** but greater **variance from the benchmark**. * **Lower discretion** – Orders track the **benchmark price more closely** but **increase reliance on market orders**, potentially raising execution costs. #### [](https://docs.tread.fi/advanced-settings/discretion#considerations) **Considerations** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdf0VvfxXwJI_mj5l__VAlfry2Uum2xgFgHRo6C_S2vYEv6ED42ybJnMQPIH87cvag0JTpUvKQ43IjFUQIaokGWFnHXSKnf44VWsA-FeRq1arL4i1N6apeVosi7OyfaXhfIN9pTTA%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=5c7b96df&sv=2) Discretionary Band with High Discretion **High Discretion (e.g., 0.2) – More Passive Fills, Higher Benchmark Variance** * Optimizes for **better pricing** by favoring **limit orders**. * Works well with **Post-Only mode**, helping reduce **taker fees**. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXc04ljqYF5980i6Mj0CIHYIvUwUopMW31iPpsVAkK9ZaeqM7DMgNyo9geO-QGaBbj-rv167PAtAj9fSctoTke3MW_C8qG6uwQEHCEH-I2hPcWAiW0BKjjucMV4UNe6zVSVhHY73Ow%3Fkey%3D2WiiUTnIpT80_43pMWB-IUW2&width=768&dpr=4&quality=100&sign=c632f736&sv=2) Discretionary Band with Low Discretion **Low Discretion (e.g., 0.04) – Closer Benchmark Tracking, More Aggressive Execution** * Prioritizes **staying close to the benchmark** with **faster execution**. * Relies more on **taker orders**, increasing **execution costs**. This setting allows traders to **fine-tune execution behavior**, balancing **cost efficiency, order visibility, and benchmark tracking**. [PreviousPassiveness](https://docs.tread.fi/advanced-settings/passiveness) [NextAlpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) Last updated 9 months ago Was this helpful? --- # Impact Minimization | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FJtJGBBpgR5Uk9zBtYZcw%2Fimage.png&width=768&dpr=4&quality=100&sign=5c3715ac&sv=2) Execution with Impact Minimization The **Impact Minimization** strategy is designed for traders who prioritize reducing market impact while maintaining execution efficiency. It follows a [**VWAP (Volume Weighted Average Price) trajectory**](https://docs.tread.fi/trajectories/vwap) , ensuring trades are distributed over time to minimize price disruption. **How It Works** * Users specify a **duration**, defining the execution time frame. * The engine prioritizes **maker execution** to optimize cost efficiency but will use **taker execution** when necessary to stay within the set duration. * Orders are executed **incrementally** along a VWAP trajectory, ensuring small portions of the trade are spread out over time. * Market impact relative to **arrival price** is minimized through passive execution. * Execution dynamically adjusts based on **real-time market conditions**. **When to Use This Strategy** * **Fixed Duration Execution** – Suitable for traders who need execution over a **specific time frame**. * **High Sensitivity to Market Impact** – Helps reduce market disruption when executing **large orders**. * **Manageable Taker Fees** – Works best when taker fees are reasonable, ensuring cost-effective execution. * **Market-Aware Execution** – The engine continuously adapts to market conditions to optimize order placement. **Potential Drawbacks** * **Higher Variance in Execution Outcomes** – Market conditions can impact final trade results. * **Fixed Duration Constraints** – If liquidity shifts unexpectedly, taker execution may increase to meet the deadline. * **Limited Flexibility for Short Durations** – Shorter execution windows may reduce the ability to optimize order placement. This strategy is ideal for **large trades requiring minimal market impact** while leveraging **market-aware execution** for cost efficiency. #### [](https://docs.tread.fi/strategies/impact-minimization#impact-minimization-configurations) **Impact Minimization Configurations** [Trajectory](https://docs.tread.fi/trajectories) [VWAP](https://docs.tread.fi/trajectories/vwap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.06 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Disabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousStrategies](https://docs.tread.fi/strategies) [NextTime Constant](https://docs.tread.fi/strategies/time-constant) Last updated 4 months ago Was this helpful? --- # Setup Guide | tread.fi Documentation To setup Telegram bot: 1. Login and go to your [Settings](https://app.tread.fi/settings?tab=account) Page, Accounts Tab. 2. Click **Connect Telegram.** 3. Enter your Telegram phone number and click next 4. You will receive a message from the official Telegram account prompting you to confirm the login request. Click Confirm. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FBUUKMiCyQTqDE1rTLrs3%252FScreenshot%25202568-05-28%2520at%252017.19.08.png%3Falt%3Dmedia%26token%3Db9d09f43-0b19-4d19-a7d6-fd966b789148&width=768&dpr=4&quality=100&sign=b4719480&sv=2) 5. The pop-up should now prompt you to accept the access request. Click accept. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252F6v3ZMTBMbv8JTqnrRGQU%252FScreenshot%25202568-05-28%2520at%252017.16.51.png%3Falt%3Dmedia%26token%3Dbf37f9b0-4476-4078-a6ec-b8b77db985fd&width=768&dpr=4&quality=100&sign=2726c918&sv=2) After setting up the bot you can access the bot via [@treadfi\_bot](https://t.me/treadfi_bot) [](https://docs.tread.fi/telegram-bot/setup-guide#for-institutional-users) For Institutional Users ------------------------------------------------------------------------------------------------------- After deploying TaaS with the `telegram_token` [App Configuration](https://docs.tread.fi/self-hosted-service/app-configurations#optional) parameter, you can connect TaaS to Telegram on the Account and Settings page to be alerted to changes in order status. [PreviousTelegram Bot](https://docs.tread.fi/telegram-bot) [NextGlossary](https://docs.tread.fi/glossary) Last updated 5 months ago Was this helpful? --- # Resubmit Remaining Order | tread.fi Documentation The **Resubmit Remaining Orders** feature allows traders to **execute only the unfilled portion** of a previously **paused or canceled order**, ensuring efficient management of incomplete trades. #### [](https://docs.tread.fi/order-management/manage-order/resubmit-remaining-order#how-it-works) **How It Works** * Click **Resubmit Remaining** on a **partially filled order** with **Paused** or **Canceled** status. * Review the **Remaining Order Execution Summary**, which displays the **unfilled quantity** and order parameters. * Click **Place Buy/Sell Order** to confirm and submit the order for execution. #### [](https://docs.tread.fi/order-management/manage-order/resubmit-remaining-order#limitations) Limitations * This feature is **only available for orders that were partially filled** before being **paused or canceled**. * The **resubmitted order adpats to the market conditions at the time of execution** and does not attempt to match the original schedule. * **Execution configuration remain the same**, ensuring consistency with the original strategy. The **Resubmit Remaining Orders** feature provides a **streamlined way to complete partially filled trades**, allowing traders to efficiently manage execution without creating a new order from scratch. [PreviousManage Order](https://docs.tread.fi/order-management/manage-order) [NextResubmit Order](https://docs.tread.fi/order-management/manage-order/resubmit-order) Last updated 9 months ago Was this helpful? --- # Portfolio (Tab) | tread.fi Documentation ### [](https://docs.tread.fi/portfolio/portfolio-tab#overview) Overview The Portfolio tab provides a comprehensive view of your account's financial position, including real-time balance information, performance metrics, and detailed asset breakdowns. This tab is the central hub for monitoring your trading account's health and performance. ### [](https://docs.tread.fi/portfolio/portfolio-tab#key-features) Key Features #### [](https://docs.tread.fi/portfolio/portfolio-tab#portfolio-summary-cards) Portfolio Summary Cards ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FvXM7ayUith3z0tzvF0S8%252FScreenshot%25202568-09-03%2520at%252014.03.28.png%3Falt%3Dmedia%26token%3D997037d3-b0b1-46bf-b30e-dc35adf90377&width=768&dpr=4&quality=100&sign=b1fdb904&sv=2) The top section displays three key summary cards. **Total Equity** * **Displays:** Your current overall portfolio value in USD * **Calculation:** Sum of cash, spot asset holdings, and net profit/loss from all open perpetual futures positions * **Time comparisons:** Shows percentage changes over 1 day and 7 days **Directional Bias** * **Displays:** Your portfolio's overall lean towards long or short positions and an overall net exposure value in USDT with bias classification * **Classifications:** * **Long Bias:** More long positions than short * **Short Bias:** More short positions than long * **Delta Neutral:** Balanced long/short exposure * **Adjusted L/S Ratio:** Shows the percentage breakdown of your long/short exposure **Unrealized PnL (Not available for DEX accounts)** * **Displays:** Current profit or loss on your open positions * **Display:** Value in USDT with ROI percentage #### [](https://docs.tread.fi/portfolio/portfolio-tab#total-equity-chart) Total Equity Chart ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FpmC6paoCbKzBSl2nDuto%252FScreenshot%25202568-09-03%2520at%252014.27.06.png%3Falt%3Dmedia%26token%3De6d68396-8ef8-4235-a879-4297f24c95d5&width=768&dpr=4&quality=100&sign=34e3a2d9&sv=2) A comprehensive chart showing your portfolio's performance over time: **Chart Features** * **Total Equity Line:** Your portfolio value over time (white line) * **Components included:** Cash/stablecoins + spot holdings + unrealized PnL from perpetual futures positions * **Gross Market Value (GMV) Line:** Gross Market Value showing total market exposure (orange line) calculated as: * **Sum of absolute notional values** from all perpetual futures positions only * **Excludes:** Cash, spot holdings, and other non-position assets * **Purpose:** Shows your total leveraged exposure to the market, regardless of direction * **Time Frame Controls:** Buttons to switch between 1d, 7d, 30d, and 1y views * **CSV Export:** Download button to export historical equity data **Chart Interactions** * Hover over data points to see exact values * Transfer markers show the amount and asset type of deposits/withdrawals * Multiple transfers near the same time are grouped and offset for clarity ### [](https://docs.tread.fi/portfolio/portfolio-tab#additional-charts-non-dex-accounts-only) Additional Charts (Non-DEX accounts only) **Notional Exposure Chart** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FvZ7bQf5EXWVYPQP5HMpz%252FScreenshot%25202568-09-03%2520at%252014.39.44.png%3Falt%3Dmedia%26token%3D6440356a-7d7b-4d48-8779-3947a1581f17&width=768&dpr=4&quality=100&sign=c5d76442&sv=2) * Shows your net market exposure over time * Helps track how your position sizes change * Color-coded: Green for positive exposure, red for negative **Unrealized PnL Chart** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FWhRfXmOiVJDRYX07Ukzt%252FScreenshot%25202568-09-03%2520at%252014.39.51.png%3Falt%3Dmedia%26token%3Db7b0d3d8-389d-4635-bbae-d660f401c1d3&width=768&dpr=4&quality=100&sign=a604c5ea&sv=2) * Displays your unrealized profit/loss over time * Useful for tracking performance trends * Shows the impact of market movements on your positions **Liquidation Risk Panel (Perpetual Futures only)** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FSTSCMuLzwC92AIfZICUA%252FScreenshot%25202568-09-03%2520at%252014.39.58.png%3Falt%3Dmedia%26token%3D03fe69a5-6022-4e5e-9a61-6b3e6e0dc382&width=768&dpr=4&quality=100&sign=10858d8b&sv=2) * **When shown:** Only appears if you have open perpetual futures positions * **Key metrics:** * **Liquidation Buffer:** Available funds above maintenance margin * **Maintenance Margin:** Required margin to maintain positions * **Margin Ratio:** Maintenance margin as percentage of wallet balance * **Average Leverage:** Weighted average leverage across positions * **Risk Assessment:** Color-coded risk levels from safe to high risk * **Progress Bar:** Visual representation of liquidation risk #### [](https://docs.tread.fi/portfolio/portfolio-tab#id-4.-asset-breakdown-tables) 4\. Asset Breakdown Tables Your assets are organized into expandable sections by market type: **Market Type Categories** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FFypAL4vFaWHIQejbrXz5%252FScreenshot%25202568-09-03%2520at%252014.42.36.png%3Falt%3Dmedia%26token%3Dc9335aee-b3eb-4ba8-b401-a75db5e2b044&width=768&dpr=4&quality=100&sign=aabbbf24&sv=2) * **Perpetual Futures:** Leveraged positions with funding fees * **Spot:** Regular cryptocurrency holdings * **Spot Margin:** Leveraged spot positions * **Cash:** Stablecoins and fiat currencies [PreviousPortfolio](https://docs.tread.fi/portfolio) [NextFunding Rate Analytics](https://docs.tread.fi/portfolio/funding-rate-analytics) Last updated 2 months ago Was this helpful? --- # Markouts | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2Fa91A8vMLoiX0Sdg7m1PL%2FScreenshot%25202024-08-21%2520at%25202.26.49%2520PM.png&width=768&dpr=4&quality=100&sign=6bf3ea5e&sv=2) Markouts are an aggregation of prices (in log return space) 10, 5 and 1 seconds before and after each individual fill. * Red Line \- Taker markouts with error bars (1 SD in orange) * Green Line \- Maker markouts with errors bars (1 SD in blue) * Orange Bars - Spread in basis points The first thing to remember about markouts are that they are defined by sample bias. Maker fills tend to only get filled if the market moves into your resting orders and the engine may rely on taker fills more often when prices are moving away (and resting orders aren't getting filled). Rest assured, as long as you keep this bias in mind, markouts can be immensely helpful in understanding the behavior of other participants on the limit order book and market microstructure that affect your maker/taker rates. #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#terminology) Terminology: * **Drift-away** - Positive sided returns. If buying, increasing prices and if selling, decreasing prices. Generally a bad thing because prices are getting worse. * **Drift-towards**. Negative sided returns. If buying, decreasing prices and if selling, increasing prices. Generally a good thing because prices are getting better. * **Flat returns**: No changes in prices, 0 returns. ### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#taker-fills) Taker Fills #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-want-to-see) What you want to see * **Minimal impact (flat returns) post-fill**. If you see that the price does not move after you get your fill, it is a sign that your aggressive liqudity taking is equaled by resting orders on the other side. * **No drift-away pre-fill.** If you see the prices moving away before you get your fill, you may be waiting too much on a competitive side to take liquidity. Front-loading your order could coerce the engine to send out more taker orders earlier on the in the order. _Note_, if your taker fills are very close together, they could be interfering with each other. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FtHYAnzxH1LcLE3dw9ne6%2Fnewplot%2520-%25202024-08-22T091915.442.png&width=768&dpr=4&quality=100&sign=bff35956&sv=2) #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-dont-want-to-see) What you don't want to see * **Drift-away post-fill.** If prices move away after the fill, especially 5 and 10 seconds post-fill, your taker orders could be signaling to the makers on the other side about your working order. Once again, if taker fills are coming in very frequently, they may be interfering with each other, so more caution should be given to return profiles that are flat pre-fill and moves away post-fill. If the slope is constant pre/post-fill, there may be external factors at play. * **Drift-towards throughout the entire period**. You should be getting passive resting orders filled in these drift profiles. You are probably placing too deep in the book and reverting to taking liquidity as a result. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FahiTvwxIBEOACurSbtBw%2Fnewplot%2520-%25202024-08-22T092200.111.png&width=768&dpr=4&quality=100&sign=58859a0d&sv=2) ### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#maker-fills) Maker Fills #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-want-to-see-1) What you want to see * **Drift-towards pre-fill, flat returns post-fill**. This is the ideal scenario for when resting orders should get filled. It will almost always be the case as the market has to move towards you for resting orders to get filled, but with the flat returns post-fill, you can be certain that you couldn't have placed deeper in the book and got the resting order filled (adverse selection). * **Flat returns throughout**. If trading on an illiquid market, this is the best case scenario as you were able to get your resting order filled at near. Had this kind of return profile not resulted in a fill because you were too passive, the engine may have not got the fill at all (if post-only) or had to rely on aggressive taker fills, both scenarios are objectively worse. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FzDP4BiQJc4eEgdPV7Ypw%2Fnewplot%2520-%25202024-08-22T092349.037.png&width=768&dpr=4&quality=100&sign=f02b48f6&sv=2) #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-dont-want-to-see-1) What you don't want to see * **Drift-towards pre/post-fill.** Although the pre-fill returns is normal, seeing drift-towards post-fill indicates that you could have placed deeper in the book and the aggressive parties on the other side would have filled your order (adverse selection). ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FLw1A7yvuejfHPwZ5pmbG%2Fnewplot%2520-%25202024-08-22T092535.157.png&width=768&dpr=4&quality=100&sign=7cbc480&sv=2) ### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#otc-fills) OTC Fills #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-want-to-see-2) What you want to see * **Flat**. If your OTC trade is making the price move on exchange, your trade may carry too much context to market makers who have influence over prices. #### [](https://docs.tread.fi/real-time-algo-order-tracking/markouts#what-you-dont-want-to-see-2) What you don't want to see * **Drift-away pre-fill**. If you see prices move away from you pre-fill, you are leaking information at the RFQ stage. This is inevitable, but something that should be scrutinized. In crypto, RFQs are generally two sided, so there may be even more suspicious behavior going on by market makers. [PreviousManage Order](https://docs.tread.fi/real-time-algo-order-tracking/manage-order) [NextDelta Neutral Bot](https://docs.tread.fi/delta-neutral-bot) Was this helpful? --- # Referral Program | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FgEYdRLENQbNRqcy0m9FK%252FScreenshot%25202568-10-14%2520at%252011.37.27.png%3Falt%3Dmedia%26token%3De3314de0-0cda-42f8-9bbf-ad90acce9db0&width=768&dpr=4&quality=100&sign=ee4eb5a2&sv=2) Invite friends to trade on tread and earn commissions on eligible fees. ### [](https://docs.tread.fi/referral-program#terms) **Terms** * **Eligible Criteria:** * Referral commissions are earned on trading fees from Hyperliquid, Pacifica and OKX DEX. * **Eligibility start date:** Only Hyperliquid fees from **October 14, 2025** onward are counted and OKXDEX trading fees from November 11, 2025 * **Commission rate:** * **Hyperliquid:** 0.8 basis points (0.008%) applied to eligible Hyperliquid exchange fees. * **Pacifica:** 0.8 basis points (0.008%) applied to eligible Pacifica exchange fees. * **OKX DEX:** * Referral commission: 0.16% (1.6 basis points) of trading fees, calculated as 40% of the 0.4 basis points (0.004%) fee rate. * Additional boost: 0.04% (0.4 basis points) bonus commission, calculated as 50% of the 0.08 basis points (0.0008%) OKX DEX boost rate. * Total OKX DEX commission: Up to 0.20% (2.0 basis points) of trading fees when both the referral share and boost apply. * **Payouts: Minimum withdrawal is $1,000** * Only new users who complete signup using your referral link are eligible. * Self‑referrals (e.g., multiple accounts for personal use) are not allowed and may result in forfeiture of rewards. * tread may update program rules, eligibility, rates, or payout policies at any time. #### [](https://docs.tread.fi/referral-program#how-it-works) How it works * Your referral link is automatically generated after you set up your account * Share your link with friends * When they sign up, they’re automatically attributed to you. * Earn commissions as they trade on Hyperliquid and OKX DEX. #### [](https://docs.tread.fi/referral-program#payouts-and-tracking) Payouts and tracking * KPIs shown on the Referral page: * Pending Earnings: projected commissions to date. * Available Earnings: $0 until payouts launch (min. $1,000 to withdraw). * Lifetime Earnings: cumulative projected earnings to date. * “Referrals” tab lists all referred users with masked IDs and registration dates. * Statistics may have a short delay; values are displayed in USD in the dashboard. * Modification of terms: tread reserves the right to modify, suspend, or terminate the referral program, including but not limited to program rules, eligibility requirements, commission rates, payout policies, and these terms and conditions, at any time and without prior notice. Continued participation in the referral program after any such changes constitutes acceptance of the modified terms. #### [](https://docs.tread.fi/referral-program#privacy-and-data-visibility) Privacy and Data Visibility * Only aggregated activity is shown: your referrer sees high-level totals (e.g., eligible Hyperliquid fees/volume) and registration date. No individual trades, orders, positions, or token balances are visible. * Referrers cannot see your trade details or assets. Your username and email are masked on their dashboard. * Referees (the friends you invite) cannot see your trades or assets either. * Personally identifiable info is redacted in referral lists. Last updated: November 10 2025 [PreviousExchange Integration Voting Ballot](https://docs.tread.fi/season-1-trade-earn-vote/exchange-integration-voting-ballot) [NextSettings Page](https://docs.tread.fi/settings-page) Last updated 5 days ago Was this helpful? --- # Aggressive Taker | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FCV2KQgOoEOyYXe2ZLTIe%2Fimage.png&width=768&dpr=4&quality=100&sign=d1a7be06&sv=2) Execution with Aggressive Taker The **Aggressive Taker** strategy is designed for traders who **prioritize speed and execution urgency** over cost efficiency. It follows a [**VWAP (Volume Weighted Average Price) trajectory**](https://docs.tread.fi/trajectories/vwap) but with an **aggressive, front-loaded execution profile**, driven by an [**alpha tilt**](https://docs.tread.fi/advanced-settings/alpha-tilt) **setting of 1**. This results in **faster fills**, with a higher proportion of taker orders to ensure rapid execution. **How It Works** * The engine sets **alpha tilt to 1**, creating a **front-loaded execution profile** that prioritizes early fills. * While following a **VWAP trajectory**, the strategy **aggressively executes trades**, focusing on more **taker orders**. * This approach sacrifices **cost efficiency** in favor of **minimized opportunity cost** and **quick execution**. **When to Use This Strategy** * **High Trading Urgency** – Ideal when **immediate execution** is more important than cost efficiency. * **Aversion to Opportunity Cost** – Best for traders looking to **avoid missing price movements** due to slow execution. * **Markets with Low Taker Fees** – Suitable when **taker fees are negligible** relative to execution speed benefits. **Potential Drawbacks** * **Higher Market Impact** – Aggressive taker behavior can **move the market**, leading to **less favorable fills**. * **Higher Fees** – A **higher proportion of taker orders** results in **increased trading costs**. This strategy is best for traders who need **fast execution and market certainty**, even if it means **paying higher fees and accepting potential market impact**. #### [](https://docs.tread.fi/strategies/aggressive-taker#aggressive-taker-configurations) **Aggressive Taker Configurations** [Trajectory](https://docs.tread.fi/trajectories) [VWAP](https://docs.tread.fi/trajectories/vwap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 1 [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Disabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousAggressive Maker](https://docs.tread.fi/strategies/aggressive-maker) [NextTarget Time](https://docs.tread.fi/strategies/target-time) Last updated 4 months ago Was this helpful? --- # Examples | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/examples#python) Python ------------------------------------------------------------------------------ ### [](https://docs.tread.fi/interacting-with-the-api/examples#setup) Setup Copy import requests import json SERVER_URL = 'http://localhost:8000' # Or whereever your server is hosted API_PREFIX = '/api/' ORDERS_RESOURCE_PATH = 'orders/' SINGLE_ORDER_PATH = 'order/' ACCOUNT_BALANCES_PATH = 'balances/' ORDERS_URL = SERVER_URL + API_PREFIX + ORDERS_RESOURCE_PATH API_TOKEN = '' required_headers = { 'Authorization': f'Token {API_TOKEN}', } ### [](https://docs.tread.fi/interacting-with-the-api/examples#submit-order) Submit Order Copy submit_order_post_body = { 'accounts': ['', ''], # Use the account "name" you picked 'pair': 'BTC-USD', 'side': 'buy', 'sell_token_amount': 500, 'duration': 120, 'strategy': 'TWAP', 'engine_passiveness': 0.1, } response = requests.post(ORDERS_URL, headers=required_headers, json=submit_order_post_body) if response.status_code >= 400: # Handle error response print(response.json()) else: body = response.json() print(body) ### [](https://docs.tread.fi/interacting-with-the-api/examples#get-order) Get Order Copy order_id = body['id'] response = requests.get(SERVER_URL + API_PREFIX + SINGLE_ORDER_PATH + order_id, headers=required_headers) print(response.json()) ### [](https://docs.tread.fi/interacting-with-the-api/examples#cancel-order) Cancel Order Copy response = requests.delete(SERVER_URL + API_PREFIX + SINGLE_ORDER_PATH + order_id, headers=required_headers) print(response.json()) ### [](https://docs.tread.fi/interacting-with-the-api/examples#account-management) Account Management Copy response = requests.get(SERVER_URL + API_PREFIX + ACCOUNT_BALANCES_PATH, headers=required_headers) print(response.json()) [PreviousWebsocket Reference](https://docs.tread.fi/interacting-with-the-api/websocket-reference) Was this helpful? --- # Pause Order | tread.fi Documentation The **Pause Orders** feature allows traders to **temporarily stop an in-progress order** without canceling it, providing flexibility to respond to market conditions in real time. #### [](https://docs.tread.fi/order-management/manage-order/pause-order#how-it-works) **How It Works** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FXCCpY3h9T20dh1aBuEQh%2Fimage.png&width=768&dpr=4&quality=100&sign=dd5affa7&sv=2) Execution with Pause Orders 1. Click **Pause** on an **active order** to halt execution. 2. The **execution trajectory chart** will display a **gray area** indicating paused periods (see image). 3. When resumed, the order **continues execution based on current market conditions** without attempting to "catch up" to the original schedule. #### [](https://docs.tread.fi/order-management/manage-order/pause-order#limitations) **Limitations** * **Unavailable for Target Time Orders** – The **Pause function is not supported** for orders using the **Target Time strategy**. * **Automatic Cancellation** – Orders **paused for more than 24 hours** will be **automatically canceled**. The **Pause Orders** feature provides traders with **greater execution control**, allowing them to **adjust their strategy** without committing to a full cancellation. [PreviousAmend Order](https://docs.tread.fi/order-management/manage-order/amend-order) [NextCancel Order](https://docs.tread.fi/order-management/manage-order/cancel-order) Last updated 9 months ago Was this helpful? --- # Time Constant | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2FTQuL49FFa3iXQPk2BA40%2Fimage.png&width=768&dpr=4&quality=100&sign=444f00a4&sv=2) Execution with Time Constant The **Time Constant** strategy is designed for traders who need execution at a steady, predictable pace over a fixed duration. It follows a [**TWAP (Time Weighted Average Price) trajectory**](https://docs.tread.fi/trajectories/twap) , ensuring trades occur evenly across the order’s timeframe. **How It Works** * Users specify a **duration**, setting the total execution period. * The engine prioritizes **maker execution** when possible but will switch to **taker execution** if necessary to maintain the schedule. * Trades execute at a **consistent rate**, independent of market conditions. * Execution is evenly distributed over time, maintaining a steady flow. **When to Use This Strategy** * **Shorter-Duration Orders** – Best for trades requiring execution within a **limited timeframe**. * **TWAP Benchmarking** – Useful when the goal is to **match the TWAP price** over a set period. * **Fixed Duration Execution** – Ensures a **steady execution pace** without adapting to market fluctuations. **Potential Drawbacks** * **Easily Detectable** – Other market participants may recognize and react to the strategy. * **Lacks Market Awareness** – Trades at a **fixed rate** without adjusting to liquidity or volatility changes. * **Less Efficient During Off-Hours** – Executes the same volume at **low-liquidity times (e.g., 3 AM) and high-liquidity times (e.g., 3 PM)**, potentially missing optimal trading windows. This strategy is ideal for traders who require **consistent execution** and **TWAP benchmarking**, but it may not be optimal for those looking to adapt to real-time market conditions. #### [](https://docs.tread.fi/strategies/time-constant#time-constant-configurations) **Time Constant Configurations** [Trajectory](https://docs.tread.fi/trajectories) [TWAP](https://docs.tread.fi/trajectories/twap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Disabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousImpact Minimization](https://docs.tread.fi/strategies/impact-minimization) [NextTarget Participation Rate](https://docs.tread.fi/strategies/target-participation-rate) Last updated 4 months ago Was this helpful? --- # Target Participation Rate | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F9THYME3KFe7Lu4MZ8NH4%2Fimage.png&width=768&dpr=4&quality=100&sign=f8b3506f&sv=2) Execution with Target Participation Rate The **Target Participation Rate** strategy is designed for traders who want to maintain a consistent market presence by executing a defined proportion of total market volume. Functionally-speaking, it is identical to the Impact Minimization (VWAP) strategy, but with a different user-facing input method. **How It Works** **Set Participation Rate Target:** Instead of setting a fixed duration (like "1 hour"), you set a Participation Rate Target. This tells the algorithm what percentage of the total market volume your order should represent. For example, setting a 10% participation rate means the algorithm will spread your order out over a period in which the market is expected to trade 9x your order size, ensuring your order is only 1/10th of the total trading volume. **Duration Calculation:** The algorithm takes your order size and their desired participation rate to calculate the necessary duration required to complete the order. The simplified formula is: Copy Target Market Volume = Your Order Size / Participation Rate Target Upon calculating the above it then analyzes predictive volume data to determine the duration required to complete the order based on its forecasts. This dynamically calculated time becomes the order's execution duration. A lower participation rate will result in a longer duration, while a higher rate will lead to a shorter, more aggressive execution. If you want to ensure your clip size does not get excessively large, you can set a [maximum clip size.](https://docs.tread.fi/advanced-settings/max-clip-size) **Order Execution:** Once the duration is calculated, the order follows the [VWAP](https://docs.tread.fi/trajectories/vwap) execution algorithm. **When to Use This Strategy** * **Flexible Duration** – Ideal when execution time isn’t fixed, allowing the strategy to adjust based on market volume. * **Intuitive Participation Goals** – Best for traders with a specific market participation rate in mind, ensuring a clear and predictable execution footprint. * **Non-Alpha-Driven Trades** – Suitable for execution-focused trades without a strong directional market view. **Potential Drawbacks** * **Uncertain End Time** – Since execution is volume-dependent, the order may take longer in low-volume markets or finish faster if volume spikes. * **Market Dependency** – Performance varies based on real-time trading conditions, leading to fluctuating execution outcomes. This strategy is best for traders looking to **stay in line with market activity** while maintaining execution efficiency and minimizing market impact. #### [](https://docs.tread.fi/strategies/target-participation-rate#target-participation-rate-configurations) **Target Participation Rate Configurations** [Trajectory](https://docs.tread.fi/trajectories) [VWAP](https://docs.tread.fi/trajectories/vwap) [Passiveness](https://docs.tread.fi/advanced-settings/passiveness) 0.02 [Discretion](https://docs.tread.fi/advanced-settings/discretion) 0.08 [Alpha Tilt](https://docs.tread.fi/advanced-settings/alpha-tilt) 0 [Participation Rate Target](https://docs.tread.fi/submitting-orders/participation-rate-target) 1% _(required)_ [Max OTC Percentage](https://docs.tread.fi/advanced-settings/max-otc-percentage) 0% [Passive Only](https://docs.tread.fi/advanced-settings/passive-only) Disabled [Active Limit](https://docs.tread.fi/advanced-settings/active-limit) Disabled [Reduce Only](https://docs.tread.fi/advanced-settings/reduce-only) Disabled [Strict Duration](https://docs.tread.fi/advanced-settings/strict-duration) Disabled [PreviousTime Constant](https://docs.tread.fi/strategies/time-constant) [NextMarket Maker](https://docs.tread.fi/strategies/market-maker) Last updated 4 months ago Was this helpful? --- # Market Maker Bot | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FXYG7rPOkqAVTewQSTrsP%252FScreenshot%25202568-11-27%2520at%252014.53.15.png%3Falt%3Dmedia%26token%3Dad3add0b-56ba-4d90-9402-4473bf5ae772&width=768&dpr=4&quality=100&sign=dae4f2bd&sv=2) #### [](https://docs.tread.fi/market-maker-bot#overview) Overview The Market Maker Bot (also known as Volume Bot) allows you to run an automated market-making strategy in just a few clicks. The bot simultaneously places buy and sell orders around the current market price. This feature helps traders earn spreads while providing market liquidity through a [TWAP](https://docs.tread.fi/trajectories/twap) (Time-Weighted Average Price) strategy with [passive only](https://docs.tread.fi/advanced-settings/passive-only) and [active limit](https://docs.tread.fi/advanced-settings/active-limit) execution. #### [](https://docs.tread.fi/market-maker-bot#key-features) Key Features **Automated Market Making** * Simultaneously places buy and sell limit orders around current market price * Uses TWAP strategy for optimal execution timing * Automatically manages limit order placements and execution * Splits the notional amount equally between buy and sell orders **Execution Strategy** * **TWAP Execution:** Orders are executed over time using the TWAP algorithm to minimize market impact. Your notional amount is split equally between the buy and sell sides * **Passive Orders:** The bot exclusively uses limit orders (maker orders) to capture spreads and avoid paying taker fees. This may result in slower execution if market conditions don't align with your order placements * **Dynamic Pricing:** Orders are placed around the current market price with appropriate spreads to stay competitive #### [](https://docs.tread.fi/market-maker-bot#pre-trade-analytics) **Pre-Trade Analytics** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FQqaVXXPj0mzOY3alhzSF%252FScreenshot%25202568-10-31%2520at%252014.33.23.png%3Falt%3Dmedia%26token%3D6412b8e9-44b2-4d73-b8c8-3f0807192d09&width=768&dpr=4&quality=100&sign=45f15bb0&sv=2) * **Real-time margin calculations:** * **Available Balance/Margin:** The total amount of quote-asset funds available in your selected account(s) to open new positions * **Recommended Margin:** An estimate of the minimum margin required to safely execute your trade, including a dynamic safety buffer to mitigate liquidation risk * **Dynamic safety buffers based on trading mode:** * **Aggressive**: 2x safety buffer * **Normal**: 1x safety buffer * **Passive**: 0.5x safety buffer * **Fee estimation before execution:** Builder + maker fees for the trade #### [](https://docs.tread.fi/market-maker-bot#duration-calculations) Duration Calculations Calculated based on: * Selected trading mode (aggressive, normal and passive) * 24-hour trading volume of the selected pair * Notional amount entered * Mode-specific minimum duration requirements **Real-Time Monitoring** * Live order status tracking with 3-second updates * PnL calculations based on executed spreads * Historical performance analytics and detailed table of fills ### [](https://docs.tread.fi/market-maker-bot#lifetime-summary) Lifetime Summary The Lifetime Summary shows cumulative statistics across all your Market Maker Bot orders. **Volume**: Sum total of executed traded volume (in USD) across all your Volume Bot orders. **Net Fees:** The cumulative net fees (or PnL) across all your Volume Bot orders. This represents your total maker fees - MM PnL #### [](https://docs.tread.fi/market-maker-bot#order-creation) **Order Creation** **Select Account**: Choose from your connected exchange accounts #### [](https://docs.tread.fi/market-maker-bot#setting-amount-to-trade) **Setting Amount to Trade**: 1. There are two interconnected fields for you to input to determine how much in exchange fees you want to spend on this trade (budget) or how much volume you want to generate. 2. **Volume:** Total dollar value you want to generate in volume (it then calculates and displays the estimated fees involved). This amount is split equally between your buy and sell sides (e.g., $10,000 volume = $5,000 in buy orders + $5,000 in sell orders) 3. **Budget:** Represents the estimated fees (builder fees + exchange maker fees) you would like to spend, and how much volume that would generate. If you set a $100 budget, the bot will calculate how much volume you can generate while staying within that fee limit. 4. **Which field should you use?** * **Start with Budget:** If you want to control your trading costs, enter your desired fee budget first * **Start with Volume:** If you have an idea of how much notional (dollar value) of volume you would like to generate, use the volume input box. **Choose Trading Pair:** Select from available spot and perpetual pairs * For perps, the bot automatically detects set leverage, which is factored into margin calculations #### [](https://docs.tread.fi/market-maker-bot#select-trading-modes) **Select Trading Modes** * **Aggressive**: Fast execution, higher costs (5% target participation rate, 5 min minimum duration) * **Normal**: Balanced speed and cost (1% target participation, 15 min minimum duration) * **Passive**: Slower execution, lower costs (0.5% target participation, 30 min minimum duration) #### [](https://docs.tread.fi/market-maker-bot#directional-bias-control) **Directional Bias Control** Directional bias control allows you to influence the timing and distribution of your buy and sell orders based on your market outlook. **How Directional Bias Works** * **Long Bias**: Favors long positions by front-loading buy orders and back-loading sell orders * **Short Bias:** Favors short positions by front-loading sell orders and back-loading buy orders * **Neutral**: Equal timing distribution for both buy and sell orders **Additional Notes on Directional Bias** * **Alpha Tilt Adjustment**: Directional bias maps linearly to alpha tilt adjustments (±1 → ±0.2 alpha tilt) * **Buy Orders**: Positive bias adds positive alpha tilt (front-loads), negative bias adds negative alpha tilt (back-loads) * **Sell Orders**: Positive bias adds negative alpha tilt (back-loads), negative bias adds positive alpha tilt (front-loads) * **Risk Management**: Extreme bias values (±1) require up to 20% additional margin to account for increased directional exposure **Use Cases** * **Bullish Outlook**: Set positive bias to capture upward price movements more aggressively * **Bearish Outlook**: Set negative bias to benefit from downward price movements * **Market Neutral**: Keep at 0 for balanced market making without directional exposure #### [](https://docs.tread.fi/market-maker-bot#reaction-time) Reaction Time The bot places limit orders and monitors the market. If an order isn't filled after a period, it "chases" by canceling and replacing it at a new price. Reaction Time sets how long it waits before refreshing. #### [](https://docs.tread.fi/market-maker-bot#the-three-settings) The Three Settings 1. **Quick**: Refreshes more frequently * Calculated as 1/1000th of order duration (minimum 1 second) * Best for, fast execution, shorter orders or when you want faster reactions * Automatically disabled for orders longer than 30 minutes 2. **Normal**: Uses backend defaults (typically 15–30 seconds) * Balanced for most scenarios * **Recommended default** 3. **Slow**: Refreshes less frequently * Calculated as 1/100th of order duration (minimum 1 second) * Best for longer orders to, minimize cancellations, reduce churn and trading costs **Review Order**: Check estimated fees, duration, and margin requirements **Submit Order**: The bot creates simultaneous buy/sell orders ### [](https://docs.tread.fi/market-maker-bot#risk-and-margin-management) **Risk and Margin Management** * **Exposure Tolerance**: Default 6% exposure tolerance for risk management * **Schedule Discretion**: Configurable discretion levels (3-4% based on mode) * **Duration Limits**: Each mode enforces a minimum duration to ensure the strategy can be executed properly **Margin Calculations** The Market Maker Bot features sophisticated margin calculations that account for directional bias and updated exposure tolerances. **Base Margin Requirements** **Spot Markets:** * **Exposure Tolerance**: 8% (increased from 6%) * **Formula**: `baseMargin = notional × 0.08` * **Rationale**: Higher tolerance accounts for spot market volatility and margin requirements **Perpetual Markets:** * **Formula**: `baseMargin = (notional ÷ leverage) × safetyBuffer` * **Safety Buffers by Mode:** * **Aggressive**: 2.0x safety buffer for higher risk tolerance * **Normal**: 1.0x safety buffer for balanced risk management * **Passive**: 0.5x safety buffer for conservative trading **Directional Bias Adjustments** * **Additional Margin**: Up to 20% more margin for extreme bias * **Formula**: `adjustedMargin = baseMargin × (1 + |directionalBias| × 0.2)` * **Examples:** * **Neutral (0)**: No additional margin * **Moderate Bias (±0.5)**: 10% additional margin * **Extreme Bias (±1.0)**: 20% additional margin **Risk Monitoring** * **Critical Warning**: Triggered when available margin < 10% of recommended margin * **Color-coded Indicators:** * **Green**: Safe (recommended < available) * **Orange**: Caution (recommended ≤ 5× available) * **Red**: Insufficient (recommended > 5× available) **Real-time Updates** Margin requirements automatically recalculate when you change: * Notional amount * Trading pair * Trading mode * Directional bias setting * Account selection **Best Practices** * **Conservative Approach**: Use moderate directional bias (±0.3 to ±0.5) to minimize additional margin requirements * **Adequate Funding**: Maintain available margin at least 20% above recommended margin * **Mode Selection**: Choose trading modes based on your risk tolerance and available capital * **Regular Monitoring**: Check margin requirements when market conditions or account balances change #### [](https://docs.tread.fi/market-maker-bot#best-practices) Best Practices **Choosing the Right Market Conditions** * **Find the Optimal Spread:** An ideal market has a spread that isn't too narrow (which limits profit) but also isn't excessively wide (which may indicate very low liquidity and make it difficult to get orders filled) * **Balance Liquidity:** While less liquid pairs can have profitable spreads, avoid highly illiquid markets where there may be no traders to fill your orders. Conversely, an overly crowded order book can also create too much competition, making it difficult for your orders to execute **Recommended Starting Strategy** * **Notional Size:** For optimal performance, a notional amount of **$5,000 or more** is recommended (minimum $1,000) * **A Good First Trade:** For a balanced starting point, consider using the Normal mode on a top 5-20 ranked perpetual contract during periods of sideways market movement * **Spot Market Making:** When trading a spot pair (e.g., ETH/USDT), you must hold at least half of the total trade value in the base asset (e.g., ETH) * **Handling Cancellations:** If you cancel an order before it is complete, you are responsible for manually managing and closing any residual positions on the exchange **Order History Interface** ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FREHpSjoFbSWuPXbheE6C%252FScreenshot%25202568-10-14%2520at%252014.48.01.png%3Falt%3Dmedia%26token%3Db5b101f5-8909-4646-ac2a-4be336e3121d&width=768&dpr=4&quality=100&sign=d4fbfaae&sv=2) **Order List** * Paginated list of all market making orders * Status updates every 3 seconds * Click to view detailed order information * Color coding on the pair text to indicate your bias: short, neutral bias. **Order Details** * **Pair**: Trading pair used * **Accounts**: Exchange accounts involved * **Volume**: Total volume generated * **Fees**: Total fees paid * **PnL**: Calculated profit/loss from spreads * **Filled:** Percent of order filled * **Status**: Active, Completed, Cancelled, etc. #### [](https://docs.tread.fi/market-maker-bot#supported-exchanges-and-pairs) Supported Exchanges and Pairs * **Supported Exchanges:** Perpetual DEXes, [Centralized Exchanges](https://docs.tread.fi/connecting-to-exchanges) * **Supported Pair Types:** Spot, Perpetuals (Perps) * **Excluded:** Futures contracts, options, and direct DEX contract addresses **Fee Structure** * **Builder Fee**: 0.02% (0.0002) * **Maker Fee**: Exchange-specific maker rates * **Total Estimated**: Builder fee + maker fee × notional amount #### [](https://docs.tread.fi/market-maker-bot#troubleshooting) Troubleshooting **Insufficient Margin** * If you receive an "Insufficient Margin" error (often indicated by a red warning), your available collateral is too low. Running the bot with insufficient margin will likely lead to your order being cancelled. To resolve this: * Add more funds (collateral) to your exchange account * Reduce the notional amount of your order * Check your account's margin settings (e.g., cross vs. isolated) on the exchange website **'Paused' Status** * If you see your bot's status change to 'Paused', do not be alarmed. This is a built-in safety feature. The bot pauses itself automatically when its market exposure in one direction (long or short) grows too large. It will resume trading once its net exposure is reduced to a safe level **Insufficient Balance for Spot** * For spot market making, ensure you have at least half the recommended margin/balance in the base token to fund sell orders **Order Not Submitting** * Verify all required fields are filled, check your API key permissions, and ensure you have a sufficient balance **Order with Residuals** * Orders that are paused and later resumed may sometimes have small, unfilled residual amounts **Cancelled Market Maker Orders** * Upon canceling a market maker bot order, an automatic order will be placed to close any residual positions, ensuring a net zero balance. [PreviousDelta Neutral Bot](https://docs.tread.fi/delta-neutral-bot) [NextOrder Management](https://docs.tread.fi/order-management) Last updated 3 days ago Was this helpful? --- # Admin | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/api-reference/admin#generate-api-auth-token) Generate API auth token --------------------------------------------------------------------------------------------------------------------------- `POST` `/api/reset_auth_token/` Delete old token, generate and return new token. 500: Internal Server Error Unknown server error 200: OK Success 422: Unprocessable Entity Unexpected failure to persist changes Copy { "error": "Internal server error" } Copy { "new_token": "4b933af81699070ae624ed4651eea343910108ec" } Copy { "error": "Error message." } [PreviousAccounts](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts) [NextAnalytics](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics) Was this helpful? --- # Type Reference | tread.fi Documentation Strategy \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#strategy-enum) **TWAP** - Time weighted average price **VWAP** - Volume weighted average price **IS** \- Implementation shortfall (arrival price) **Target Time** - Volume weighted average price **Market** - Market order **Limit** - Limit order **Iceberg** - Iceberg order **IOC** - [Immediate or Cancel](https://docs.tread.fi/strategies/ioc) StrategyParams \[Structure\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#strategyparams-structure) passive\_only boolean Passive position when placing a take order active\_limit boolean Aggressively repegs child orders reduce\_only boolean Only send orders that reduce the size of a current position ool\_pause boolean See [OOL Pause](https://docs.tread.fi/submitting-orders/ool-pause) [strict\_duration](https://tread-labs.gitbook.io/api-docs/interacting-with-the-api/api-reference/orders#submit-an-order) boolean Ensure the order finishes at the end time, regardless of fills dicy boolean Enable DiCy spot\_leverage boolean Sets the isLeverage parameter for BinancePM and Bybit orders max\_clip\_size integer Maximum clip size, if not set, uses dynamic (_optional)_ OrderStatus \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#orderstatus-enum) SCHEDULED - Order has been scheduled and will be executed (skipped if started immediately) ACTIVE - Order is being executed within the designated time window FINISHER - Last portion of order is being executed COMPLETE - Execution is complete CANCELED - Order has been cancelled PAUSED - Order has been paused MultiOrderStatus \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#multiorderstatus-enum) ACTIVE - Order is being executed within the designated time window COMPLETE - Execution is complete CANCELED - Order has been cancelled PAUSED - Order has been paused MarketType \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#markettype-enum) spot - spot market perp - perpetual futures/swaps market \# Not yet available future option \# only for balances unified - unified wallet AssetType \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#assettype-enum) token - asset is a token position - asset is a contract/position Exchange \[Enum\][](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#exchange-enum) Binance Bybit OKX [PreviousMiscellaneous](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous) [NextWebsocket Reference](https://docs.tread.fi/interacting-with-the-api/websocket-reference) Last updated 3 months ago Was this helpful? --- # Websocket Reference | tread.fi Documentation The _Order Status WebSocket_ allows you to receive real-time updates about your single/multi orders directly into your application or script. You can subscribe using your API access token and get instant notifications when an order event occurs. `wss:///ws/orders/` ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#authentication) Authentication Pass your API token as a query parameter in the WebSocket URL. _If authentication fails, the connection will be automatically closed_. Copy wss:///ws/orders/?token= ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#subscribing-to-order-updates) Subscribing to Order Updates After connecting, you must send a subscription message to start receiving updates. #### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#subscribe) **Subscribe** Copy { "command": "subscribe", "data_type": "user_orders" } **Keep-Alive** _To prevent disconnects (after 30s inactivity), send this message every 5–10 seconds:_ Copy { "command": "keep_alive" } **Unsubscribe (optional)** Copy { "command": "unsubscribe", "data_type": "user_orders" } ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#order-updates) Order Updates Copy { "type": "order_update", "data": { "order_id": "", "update_type": "", "order": { /* order details */ } } } After successfully subscribing, you will receive `order_update` messages with an `update_type` field for your orders. The possible values depend on whether the update is for a single order or a multi-order (parent/child). #### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#single-orders-update-types) Single Orders Update Types * `order_created` — The order was created. * `order_activated` — The order became active. * `order_canceled` — The order was canceled. * `order_completed` — The order was fully completed. * `order_fill_received` — The order received a fill (partial or full execution). * `order_paused` — The order was paused. #### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#multi-orders-update-types) Multi-Orders Update Types * `order_created` — The parent order was created. * `order_activated` — The parent order became active. * `order_canceled` — The parent order was canceled. * `order_completed` — The parent order was completed (all child orders finished). * `order_paused` — The parent order was paused. * `child_order_created` — A child order was created. * `child_order_activated` — A child order became active. * `child_order_canceled` — A child order was canceled. * `child_order_completed` — A child order was completed. * `child_order_fill_received` — A child order received a fill. ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#example-update) Example Update #### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#single-orders) Single Orders Copy { "type": "order_update", "data": { "order_id": "0c31d512-f2c8-4600-9002-493bada22b39", "update_type": "order_fill_received", "order": { "id": "0c31d512-f2c8-4600-9002-493bada22b39", "custom_order_id": "", "parent_order_id": null, "notes": "", "pair": "BTC:PERP-USDT", "side": "buy", "exchanges": [\ "Bybit"\ ], "buy_token": "BTC:PERP", "buy_token_amount": "1", "sell_token": "USDT", "sell_token_amount": "118841.3044", "executed_qty": "9388.5216", "executed_buy_qty": "0.079", "average_executed_price": "118842.0455696411", "executed_notional": "9388.5216", "target_order_qty": "1", "target_remaining_qty": "0.921", "target_token": "BTC:PERP", "target_executed_qty": "0.079", "pct_filled": "7.9", "total_fee": "3.37511478", "strategy": "VWAP", "super_strategy": "Impact Minimization", "duration": 120, "accounts": [\ "f574fe0f-f188-47d0-a348-9ea8fefb9d37"\ ], "account_names": [\ "test_bybit"\ ], "engine_passiveness": "0.02", "schedule_discretion": "0.06", "pov_limit": null, "pov_target": null, "alpha_tilt": "0", "strategy_params": { "ool_pause": false, "max_clip_size": null }, "user": "2", "status": "ACTIVE", "active": true, "is_simple": false, "failure_reason": "", "limit_price": "", "is_reverse_limit_price": false, "time_start": "2025-07-15T01:21:45.448162+00:00", "time_end": "2025-07-15T01:23:45.448162+00:00", "created_at": "2025-07-15T01:21:45.481837+00:00", "updated_at": "2025-07-15T01:21:45.499214+00:00" } } } #### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#multi-orders) Multi-Orders Copy { "type": "order_update", "data": { "order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0", "update_type": "order_activated", "order": { "id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0", "created_at": "2025-07-15T01:23:07.588678+00:00", "updated_at": "2025-07-15T01:23:07.588700+00:00", "time_start": "2025-07-15T01:23:07.567613+00:00", "duration": 60, "exposure_tolerance": "0.1", "notional_exposure": "0.462", "executed_notional": "14255.514", "child_order_ids": [\ "4c1b8f6b-a204-43f6-aac9-4ed06198fe27",\ "f0a78f07-f52c-4a7f-aa32-5b80fa0ff78e"\ ], "accounts": [\ "test_bybit"\ ], "strategy": "TWAP", "strategy_params": { "max_clip_size": 10000 }, "engine_passiveness": "0.02", "schedule_discretion": "0.06", "alpha_tilt": "0", "limit_price_spread": null, "failure_reason": "", "pct_filled": "6", "account_names": [\ "test_bybit"\ ], "pairs": "BTC:PERP-USDT,BTC-USDT", "status": "ACTIVE", "is_active": true, "is_paused": false, "fee_notional": "8.5531236", "order_condition": "", "child_orders": [\ {\ "id": "4c1b8f6b-a204-43f6-aac9-4ed06198fe27",\ "custom_order_id": "",\ "parent_order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0",\ "notes": "",\ "pair": "BTC:PERP-USDT",\ "side": "buy",\ "exchanges": [\ "Bybit"\ ],\ "buy_token": "BTC:PERP",\ "buy_token_amount": "1",\ "sell_token": "USDT",\ "sell_token_amount": "118799.9",\ "executed_qty": "7127.988",\ "executed_buy_qty": "0.06",\ "average_executed_price": "118799.8",\ "executed_notional": "7127.988",\ "target_order_qty": "1",\ "target_remaining_qty": "0.94",\ "target_token": "BTC:PERP",\ "target_executed_qty": "0.06",\ "pct_filled": "6",\ "total_fee": "1.4255976",\ "strategy": "TWAP",\ "super_strategy": null,\ "duration": 73,\ "accounts": [\ "f574fe0f-f188-47d0-a348-9ea8fefb9d37"\ ],\ "account_names": [\ "test_bybit"\ ],\ "engine_passiveness": "0.02",\ "schedule_discretion": "0.06",\ "pov_limit": null,\ "pov_target": null,\ "alpha_tilt": "0",\ "strategy_params": {\ "max_clip_size": 10000\ },\ "user": "2",\ "status": "ACTIVE",\ "active": true,\ "is_simple": false,\ "failure_reason": "",\ "limit_price": "",\ "is_reverse_limit_price": false,\ "time_start": "2025-07-15T01:23:07.639390+00:00",\ "time_end": "2025-07-15T01:24:20.639390+00:00",\ "created_at": "2025-07-15T01:23:07.722411+00:00",\ "updated_at": "2025-07-15T01:23:07.725840+00:00"\ },\ {\ "id": "f0a78f07-f52c-4a7f-aa32-5b80fa0ff78e",\ "custom_order_id": "",\ "parent_order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0",\ "notes": "",\ "pair": "BTC-USDT",\ "side": "sell",\ "exchanges": [\ "Bybit"\ ],\ "buy_token": "USDT",\ "buy_token_amount": null,\ "sell_token": "BTC",\ "sell_token_amount": "1",\ "executed_qty": "0.06",\ "executed_buy_qty": "7127.526",\ "average_executed_price": "118792.1",\ "executed_notional": "7127.526",\ "target_order_qty": "1",\ "target_remaining_qty": "0.94",\ "target_token": "BTC",\ "target_executed_qty": "0.06",\ "pct_filled": "6",\ "total_fee": "7.127526",\ "strategy": "TWAP",\ "super_strategy": null,\ "duration": 73,\ "accounts": [\ "f574fe0f-f188-47d0-a348-9ea8fefb9d37"\ ],\ "account_names": [\ "test_bybit"\ ],\ "engine_passiveness": "0.02",\ "schedule_discretion": "0.06",\ "pov_limit": null,\ "pov_target": null,\ "alpha_tilt": "0",\ "strategy_params": {\ "max_clip_size": 10000\ },\ "user": "2",\ "status": "ACTIVE",\ "active": true,\ "is_simple": false,\ "failure_reason": "",\ "limit_price": "",\ "is_reverse_limit_price": false,\ "time_start": "2025-07-15T01:23:07.643916+00:00",\ "time_end": "2025-07-15T01:24:20.643916+00:00",\ "created_at": "2025-07-15T01:23:07.914559+00:00",\ "updated_at": "2025-07-15T01:23:07.916364+00:00"\ }\ ] } } } Copy { "type": "order_update", "data": { "order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0", "update_type": "child_order_fill_received", "order": { "id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0", "created_at": "2025-07-15T01:23:07.588678+00:00", "updated_at": "2025-07-15T01:23:07.588700+00:00", "time_start": "2025-07-15T01:23:07.567613+00:00", "duration": 60, "exposure_tolerance": "0.1", "notional_exposure": "-7523.5824552", "executed_notional": "21779.5584552", "child_order_ids": [\ "4c1b8f6b-a204-43f6-aac9-4ed06198fe27",\ "f0a78f07-f52c-4a7f-aa32-5b80fa0ff78e"\ ], "accounts": [\ "test_bybit"\ ], "strategy": "TWAP", "strategy_params": { "max_clip_size": 10000 }, "engine_passiveness": "0.02", "schedule_discretion": "0.06", "alpha_tilt": "0", "limit_price_spread": null, "failure_reason": "", "pct_filled": "9.1668", "account_names": [\ "test_bybit"\ ], "pairs": "BTC:PERP-USDT,BTC-USDT", "status": "ACTIVE", "is_active": true, "is_paused": false, "fee_notional": "16.0771680552", "order_condition": "", "child_orders": [\ {\ "id": "4c1b8f6b-a204-43f6-aac9-4ed06198fe27",\ "custom_order_id": "",\ "parent_order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0",\ "notes": "",\ "pair": "BTC:PERP-USDT",\ "side": "buy",\ "exchanges": [\ "Bybit"\ ],\ "buy_token": "BTC:PERP",\ "buy_token_amount": "1",\ "sell_token": "USDT",\ "sell_token_amount": "118794.442",\ "executed_qty": "7127.988",\ "executed_buy_qty": "0.06",\ "average_executed_price": "118799.8",\ "executed_notional": "7127.988",\ "target_order_qty": "1",\ "target_remaining_qty": "0.94",\ "target_token": "BTC:PERP",\ "target_executed_qty": "0.06",\ "pct_filled": "6",\ "total_fee": "1.4255976",\ "strategy": "TWAP",\ "super_strategy": null,\ "duration": 73,\ "accounts": [\ "f574fe0f-f188-47d0-a348-9ea8fefb9d37"\ ],\ "account_names": [\ "test_bybit"\ ],\ "engine_passiveness": "0.02",\ "schedule_discretion": "0.06",\ "pov_limit": null,\ "pov_target": null,\ "alpha_tilt": "0",\ "strategy_params": {\ "max_clip_size": 10000\ },\ "user": "2",\ "status": "ACTIVE",\ "active": true,\ "is_simple": false,\ "failure_reason": "",\ "limit_price": "",\ "is_reverse_limit_price": false,\ "time_start": "2025-07-15T01:23:07.639390+00:00",\ "time_end": "2025-07-15T01:24:20.639390+00:00",\ "created_at": "2025-07-15T01:23:07.722411+00:00",\ "updated_at": "2025-07-15T01:23:07.725840+00:00"\ },\ {\ "id": "f0a78f07-f52c-4a7f-aa32-5b80fa0ff78e",\ "custom_order_id": "",\ "parent_order_id": "5092dba5-ec3c-4ae9-84ad-43aa29090bb0",\ "notes": "",\ "pair": "BTC-USDT",\ "side": "sell",\ "exchanges": [\ "Bybit"\ ],\ "buy_token": "USDT",\ "buy_token_amount": null,\ "sell_token": "BTC",\ "sell_token_amount": "1",\ "executed_qty": "0.123336",\ "executed_buy_qty": "14651.5704552",\ "average_executed_price": "118793.9486865149",\ "executed_notional": "14651.5704552",\ "target_order_qty": "1",\ "target_remaining_qty": "0.876664",\ "target_token": "BTC",\ "target_executed_qty": "0.123336",\ "pct_filled": "12.3336",\ "total_fee": "14.6515704552",\ "strategy": "TWAP",\ "super_strategy": null,\ "duration": 73,\ "accounts": [\ "f574fe0f-f188-47d0-a348-9ea8fefb9d37"\ ],\ "account_names": [\ "test_bybit"\ ],\ "engine_passiveness": "0.02",\ "schedule_discretion": "0.06",\ "pov_limit": null,\ "pov_target": null,\ "alpha_tilt": "0",\ "strategy_params": {\ "max_clip_size": 10000\ },\ "user": "2",\ "status": "ACTIVE",\ "active": true,\ "is_simple": false,\ "failure_reason": "",\ "limit_price": "",\ "is_reverse_limit_price": false,\ "time_start": "2025-07-15T01:23:07.643916+00:00",\ "time_end": "2025-07-15T01:24:20.643916+00:00",\ "created_at": "2025-07-15T01:23:07.914559+00:00",\ "updated_at": "2025-07-15T01:23:07.916364+00:00"\ }\ ] } } } ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#troubleshooting) Troubleshooting * **Connection closes immediately** * Check your API token and WebSocket URL. * **No updates received** * Make sure you sent the subscription message after connecting. * **Timeouts** * Ensure you are sending keep-alive messages regularly. ### [](https://docs.tread.fi/interacting-with-the-api/websocket-reference#best-practices) Best Practices * Send keep-alive messages to avoid disconnects. * Subscribe after connecting; unsubscribe when done. * Handle disconnection properly in your client. [PreviousType Reference](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) [NextExamples](https://docs.tread.fi/interacting-with-the-api/examples) Last updated 4 months ago Was this helpful? --- # Algorithmic Orders (VWAP, TWAP, POV) | tread.fi Documentation Algorithmic Orders are advanced strategies that execute trades over a specified period to achieve specific goals, such as minimizing market impact or achieving a target price. These orders are submitted through the same `POST /api/orders/` endpoint but use algorithmic `strategy` names and a different set of parameters. [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#general-parameters) **General Parameters** ------------------------------------------------------------------------------------------------------------------------------------------------ The following parameters are used across all algorithmic order types. ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#required-fields) **Required Fields:** * `strategy` (string): Must be one of `"TWAP"`, `"VWAP"`, or another supported algorithmic strategy. * `pair` (string): The trading pair symbol (e.g., "BTC-USD"). * `side` (string): The order side, either `"buy"` or `"sell"`. * `accounts` (array of strings): A list of account names to use for the order. * **One of the following quantity fields is required:** * `base_asset_qty` (decimal): The amount of the base asset to buy or sell. * `quote_asset_qty` (decimal): The amount of the quote asset to spend or receive. * `sell_token_amount` (decimal): The amount of the token you are selling. * **One of the following execution-time fields is required:** * `duration` (integer): The total time in seconds over which to execute the order. Required unless `pov_target` is provided. * `pov_target` (decimal): The target participation rate as a fraction of market volume (e.g., `0.1` for 10%). If provided, `duration` is not required. ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#optional-fields) **Optional Fields:** * `limit_price` (decimal): A price limit for the order. The engine will not execute at prices worse than this limit. * `is_reverse_limit_price` (boolean): If `true`, the engine will only trade at prices _worse_ than the `limit_price`. * `engine_passiveness` (decimal, 0 to 1): Controls how far from the spread the engine places orders. A higher value (e.g., 0.8) is more passive, while a lower value (e.g., 0.1) is more aggressive. * `schedule_discretion` (decimal, 0.02 to 0.5): The ratio of order size the engine can deviate from the target schedule, allowing for opportunistic execution. * `alpha_tilt` (decimal, -1 to 1): An implied short-term alpha signal. A positive value (e.g., 0.5) front-loads the execution schedule, while a negative value back-loads it. * `pov_limit` (decimal, 0 to 1): The maximum fraction of market volume the engine is allowed to participate in at any given time. * `start_datetime` (string, ISO 8601 format): A specific time to start the order execution. If not provided, the order starts immediately. * `notes` (string): An arbitrary string for personal notes. * `custom_order_id` (string): A unique client-side ID for the order (max 64 chars). * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#vwap-volume-weighted-average-price) VWAP (Volume-Weighted Average Price) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ **Strategy Name:** `"VWAP"` **Specific Parameters:** None. A VWAP order uses the general algorithmic parameters. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#example-request) **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "ETH-USD", "side": "sell", "accounts": ["coinbase_pro"], "strategy": "VWAP", "base_asset_qty": "50.0", "duration": 14400, "alpha_tilt": -0.2 } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#example-response) **Example Response** Copy { "id": "f6a7b8c9-d0e1-2345-6789-0abcdef12345", "custom_order_id": "", "notes": "", "pair": "ETH-USD", "side": "sell", "exchanges": ["coinbase_pro"], "buy_token": "USD", "sell_token": "ETH", "sell_token_amount": "50.0", "strategy": "VWAP", "duration": 14400, "alpha_tilt": -0.2, "status": "ACTIVE", "user": "user_789", "created_at": "2024-01-11T12:00:00Z", "updated_at": "2024-01-11T12:00:03Z" } * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#twap-time-weighted-average-price) TWAP (Time-Weighted Average Price) -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- **Strategy Name:** `"TWAP"` **Specific Parameters:** None. A TWAP order uses the general algorithmic parameters, with `duration` being the key component. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#example-request-1) **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "BTC-USD", "side": "buy", "accounts": ["binance_main"], "strategy": "TWAP", "base_asset_qty": "1.5", "duration": 7200, "limit_price": "46000.00", "engine_passiveness": 0.5, "schedule_discretion": 0.1 } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#example-response-1) **Example Response** Copy { "id": "e5f6a7b8-c9d0-1234-5678-90abcdef1234", "custom_order_id": "", "notes": "", "pair": "BTC-USD", "side": "buy", "exchanges": ["binance"], "buy_token": "BTC", "buy_token_amount": "1.5", "sell_token": "USD", "strategy": "TWAP", "duration": 7200, "limit_price": "46000.00", "engine_passiveness": 0.5, "schedule_discretion": 0.1, "status": "ACTIVE", "user": "user_789", "created_at": "2024-01-11T10:00:00Z", "updated_at": "2024-01-11T10:00:05Z" } * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov#pov-percentage-of-volume) POV (Percentage of Volume) ---------------------------------------------------------------------------------------------------------------------------------------------------------- A [POV](https://docs.tread.fi/strategies/target-participation-rate) (or participation rate) strategy executes an order by targeting a certain percentage of the market volume. **Strategy Name:** `"POV"` or any other algorithmic strategy name. **Specific Parameters:** * `pov_target` (decimal, **required**): The target participation rate (e.g., `0.1` for 10%). * `pov_limit` (decimal, **optional**): A cap on the participation rate to prevent overly aggressive trading during volume spikes. When `pov_target` is used, the `duration` parameter is not required, as the order's duration will be calculated based on how long it will take to fill the order at the target participation rate. **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "SOL-USD", "side": "buy", "accounts": ["ftx_us"], "strategy": "TWAP", "base_asset_qty": "2000.0", "pov_target": "0.05", "pov_limit": "0.1" } **Example Response** Copy { "id": "a7b8c9d0-e1f2-3456-7890-bcdef1234567", "custom_order_id": "", "notes": "", "pair": "SOL-USD", "side": "buy", "exchanges": ["ftx_us"], "buy_token": "SOL", "buy_token_amount": "2000.0", "sell_token": "USD", "strategy": "TWAP", "pov_target": "0.05", "pov_limit": "0.1", "status": "ACTIVE", "user": "user_789", "created_at": "2024-01-11T14:00:00Z", "updated_at": "2024-01-11T14:00:04Z" } [PreviousSimple Orders (Market, Limit, IOC, Iceberg)](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg) [NextMulti Order](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order) Last updated 4 months ago Was this helpful? --- # Accounts | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#account-balances) Account Balances ---------------------------------------------------------------------------------------------------------------- [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#get-account-balances) Get account balances ------------------------------------------------------------------------------------------------------------------------ `GET` `/api/balances/` Get token balances and positions in your configured accounts. Identity is inferred by API token. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#path-parameters) Path Parameters Name Type Description account\_names list of strings Optional. If specified, only balances for the accounts in this parameter are retrieved. Refer to MarketType and AssetType in [Type Reference](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) for more details on these balance attributes. **notional\_pct\_total** - calculated as the ratio of notional against total notional for all assets within the same market\_type 200: OK Account balances information 500: Internal Server Error Something went wrong, contact support 401: Unauthorized Not authorized Copy { "AccountABC": { "exchange": "Bybit", "assets": [\ {\ "symbol": "ETH:PERP-USDT",\ "size": 1.69,\ "notional": 3051.5284,\ "market_type": "perp",\ "asset_type": "position",\ "unrealized_profit": 24.6772,\ "initial_margin": 306.80066534,\ "maint_margin": 16.90546734,\ "margin_balance": 298.90609459,\ "leverage": 10.0,\ "notional_pct_total": 0.994565\ },\ {\ "symbol": "USDT",\ "size": 275.56989474,\ "notional": 275.569895,\ "market_type": "unified",\ "asset_type": "token",\ "unrealized_profit": 23.33619985,\ "initial_margin": 308.47710954,\ "maint_margin": 17.08121552,\ "margin_balance": 298.90609459,\ "leverage": null,\ "notional_pct_total": 0.817474\ },\ ...\ ] }, "Account123": { "exchange": "Binance", "assets": [\ {\ "symbol": "USDT",\ "size": 1414.06039641,\ "notional": 1414.060396,\ "market_type": "perp",\ "asset_type": "token",\ "unrealized_profit": 11.02638782,\ "initial_margin": 155.72429442,\ "maint_margin": 3.32015061,\ "margin_balance": 1425.08678423,\ "leverage": null,\ "notional_pct_total": 0.6449\ },\ {\ "symbol": "BTC:PERP-USDT",\ "size": 0.021,\ "notional": 572.956735,\ "market_type": "perp",\ "asset_type": "position",\ "unrealized_profit": 7.87343483,\ "initial_margin": 114.59134696,\ "maint_margin": 2.29182693,\ "margin_balance": null,\ "leverage": 5.0,\ "notional_pct_total": 0.261304\ },\ ...\ ] } } Copy { "message": "Something went wrong..." } Copy { "message": "Invalid credentials" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#create-an-account-for-an-exchange) Create an account for an exchange -------------------------------------------------------------------------------------------------------------------------------------------------- `POST` `/api/accounts/` Name must be unique under each user. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#request-body) Request Body Name Type Description name\* name of account api\_key\* String API key for exchange api\_secret\* String API secret for exchange password String password for exchange if required exchange\* String valid name of [Exchange](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#exchange-enum) 200: OK Account balances information 500: Internal Server Error Something went wrong, contact support 401: Unauthorized Not authorized 400: Bad Request Invalid request ex. missing required fields Copy { "message": "Successfully created abcdef" } Copy { "message": "Something went wrong..." } Copy { "message": "Invalid credentials" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#archive-account) Archive account -------------------------------------------------------------------------------------------------------------- `DELETE` `/api/accounts/` Soft delete the account. It will no longer be usable but reference to orders will be maintained. It will also be renamed to indicate it is archived: ex. {account\_name}\__archived_\_{uuid} #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#request-body-1) Request Body Name Type Description name\* string name of account 200: OK Account balances information 500: Internal Server Error Something went wrong, contact support 401: Unauthorized Not authorized 400: Bad Request Invalid request ex. missing required fields Copy { "message": "Successfully created abcdef" } Copy { "message": "Something went wrong..." } Copy { "message": "Invalid credentials" } ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#set-leverage) Set Leverage `POST` `/api/set_leverage/` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts#request-body-2) Request Body Name Type Description leverage\* string new leverage pair string pair name account\_ids list of strings list of account ids 200: OK Account balances information 400: Bad Request Invalid request ex. missing required fields 401: Unauthorized Not authorized 422: Unprocessable Entity Copy { "message": "Leverage changed successfully." } Copy { "errors": ["account_ids must be an array of strings"] } Copy { "message": "Invalid credentials" } Copy { "message": "Failed to set leverage" } [PreviousMulti Order](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order) [NextAdmin](https://docs.tread.fi/interacting-with-the-api/api-reference/admin) Last updated 1 month ago Was this helpful? --- # Miscellaneous | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous#get-token-pairs) Get Token Pairs ------------------------------------------------------------------------------------------------------------------- `GET` `/api/get_token_pairs` Get available trading pairs with metadata on available exchanges Name Type Description market\_type string \[Optional\] [MarketType](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#markettype-enum) **Response** 200 400 500 Copy ```json { "pairs": { "JFI-USDC": { "OKX": "JFI-USDC", "MockExchange": "JFI-USDC" }, "SHIBI-USDT": { "Bybit": "SHIBIUSDT" }, "ICX-USDC": { "OKX": "ICX-USDC", "MockExchange": "ICX-USDC" }, ... } } ``` Copy ```json { "message": "Error message" } ``` Copy { "error": "Internal server error" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous#get-order-book) Get Order Book ----------------------------------------------------------------------------------------------------------------- `GET` `/api/get_order_book` Get snapshot of order book from exchange Name Type Description pair\* string name of [trading pair](https://docs.tread.fi/submitting-orders/pair-naming) exchange\_name\* string name of supported [exchange](https://docs.tread.fi/connecting-to-exchanges#supported-exchanges) **Response** 200 400 500 Copy ```json { "bids": [\ {\ "price": 100425.3,\ "size": 550.82\ },\ ...\ ], "asks": [\ {\ "price": 100425.4,\ "size": 562.54\ },\ ...\ ] } ``` Copy ```json { "message": "Error message" } ``` Copy { "error": "Internal server error" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous#get-order-form-data) Get Order Form Data --------------------------------------------------------------------------------------------------------------------------- `GET` `/api/order_form_data` Data that is likely needed for an order form on the UI **Response** 200 500 Copy ```json { "accounts": [\ {\ "id": "b77d27fc-27d2-43a6-8ffc-ce6717097b11",\ "name": "blockchain_test_bybit",\ "user": 13,\ "username": "integ_test",\ "exchange": "Bybit",\ "hashed_api_key": "71744a6a0f3178224c8b245dac64a0d1ca1dd1dd39b7aa79875488816f9fd5fa",\ "valid": true,\ "authorized_groups": [],\ "margin_mode": "CROSS",\ "created_at": "2024-12-18T08:03:53.399795Z",\ "credential_options": {},\ "api_key": "KAM7Tm2k7LBuqjy8gK",\ "api_secret": "********************",\ "password": "********************"\ },\ ...\ ] "exchanges": [\ "Binance",\ "Bybit",\ "Deribit",\ "OKX",\ "Gate",\ ], "user_id": 13, "pairs": [\ {\ "name": "0DOG-USDT",\ "base": "0DOG",\ "quote": "USDT",\ "market_type": "spot",\ "is_inverse": false,\ "is_contract": false,\ "exchanges": [\ "Gate"\ ]\ },\ ...\ ], "strategies": [\ {\ "id": "a1e31843-cb6c-46aa-bca7-6216ef5739d8",\ "name": "VWAP",\ "params": {},\ "engine_passiveness": "0.10000000000000000555",\ "schedule_discretion": "0.08000000000000000167",\ "alpha_tilt": null,\ "strategy_params": {},\ "system": true,\ "schedule": "VWAP",\ "description": "Volume Weighted Average Price",\ "user": "admin"\ },\ ...\ ], "super_strategies": [\ {\ "id": "d960c28f-a6bd-4f55-9c5c-fc561cc95640",\ "strategy_id": "a1e31843-cb6c-46aa-bca7-6216ef5739d8",\ "name": "Impact Minimization",\ "presets": {\ "notes": null,\ "duration": 300,\ "discretion": 0.08,\ "limitPrice": null,\ "orderCondition": null\ },\ "is_super_strategy": true\ },\ ...\ ], "strategy_params": [\ "passive_only",\ "active_limit",\ "reduce_only",\ "strict_duration",\ "spot_leverage",\ "max_clip_size"\ ], "order_templates": [\ {\ "id": "94e5a389-90c2-4edc-9c24-b6a58350b7e9",\ "user_id": 13,\ "name": "pov",\ "values": {\ "pair": {\ "id": "ETH:PERP-USDT",\ "base": "ETH",\ "label": "ETH:PERP-USDT",\ "quote": "USDT",\ "exchanges": [\ "OKX",\ "Deribit",\ "Binance",\ "Bybit",\ "MockExchange"\ ],\ "is_inverse": false,\ "is_contract": true,\ "market_type": "perp"\ },\ "side": "buy",\ "accounts": [\ "test_okx"\ ],\ "strategy": "a1e31843-cb6c-46aa-bca7-6216ef5739d8",\ "pov_target": "5",\ "base_asset_qty": "5",\ "super_strategy": "d960c28f-a6bd-4f55-9c5c-fc561cc95640",\ "strategy_params": {\ "ool_pause": false\ },\ "engine_passiveness": 0.02,\ "schedule_discretion": 0.08\ },\ "created_at": "2024-06-23T21:37:27.825932Z"\ },\ ...\ ], "auto_order_urgencies": [\ {\ "key": "ULTRA_LOW",\ "name": "Very Low"\ },\ {\ "key": "LOW",\ "name": "Low"\ },\ {\ "key": "MEDIUM",\ "name": "Medium"\ },\ {\ "key": "HIGH",\ "name": "High"\ },\ {\ "key": "ULTRA_HIGH",\ "name": "Very High"\ }\ ] } ``` Copy { "error": "Internal server error" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous#validate-order-condition) Validate Order Condition ------------------------------------------------------------------------------------------------------------------------------------- `POST` `/api/validate_order_condition/` Validate the correctness of the order condition syntax Name Type Description order\_condition string Refer to [Conditional Order](https://docs.tread.fi/conditional-order) **Response** 200 400 500 Copy ```json { "order_condition": "( ETH-USDT@Binance - ETH:PERP-USDT@Binance ) > 1", "order_condition_vars": {}, "postfix_condition": "ETH-USDT@Binance ETH:PERP-USDT@Binance - 1 >", "is_valid": true } ``` Copy ```json { "error": "Error message", "is_valid": false } ``` Copy { "error": "Internal server error" } [PreviousAnalytics](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics) [NextType Reference](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) Was this helpful? --- # Analytics | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#get-aggregate-tca-statistics) Get aggregate TCA statistics ----------------------------------------------------------------------------------------------------------------------------------------- `GET` `/api/tca_stats/` Retrieves aggregate statistics for a set of orders, as filtered by query parameters below. Note that the output is a subset of the data shown on TaaS's [Analytics](https://docs.tread.fi/transaction-cost-analysis) page. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#query-parameters) Query Parameters Name Type Description accounts\_\_name string Account to include in aggregation pair string Example: `BTC-USDT` side string `buy` or `sell` strategy string [Trajectory](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#strategy-enum) to include (`VWAP`, `TWAP`, `IS`) super\_strategy string Strategy to include (`Impact Minimization`, `Aggressive Maker`, etc.) Note that only one of (`strategy`, `super_strategy`) should be specified in a call created\_at\_\_gte ISO 8601 date Include only orders created on or after this date, e.g., `2024-09-13` created\_at\_\_lte ISO 8601 date Include only orders created on or before this date, e.g., `2024-09-14` 200: OK 403: Forbidden 500: Internal Server Error Copy {'summary': {'num_orders': 1000, 'num_pairs': 8, 'avg_duration': 175.74219266221795, 'sum_notional': 12436204.142881382, 'orders_value': '$12.44M', 'sum_fee': 4741.834601611435, 'exch_fee': '$4.74K', 'fee_cost': 3.8129276000392065, 'pov': 0.0, 'departure_cost': 0.7686062896022027, 'arrival_cost': 0.6356043187543811, 'vwap_cost': 0.6395291279757329, 'interval_returns': -0.13300197084782164}, 'breakdowns': {'fill_role': {'cutbys': ['role'], 'labels': ['TAKE', 'MAKE', 'OTC'], 'data': {'TAKE': [58.74792384940719], 'MAKE': [40.844465220094875], 'OTC': [0.4076109304979441]}}, 'fill_exchange': {'cutbys': ['exchange'], 'labels': ['OKX', 'OKXOTC', 'Bybit'], 'data': {'OKX': [99.51157408033795], 'OKXOTC': [0.4076109304979441], 'Bybit': [0.08081498916409907]}}}} Copy {'detail': 'Invalid token.'} Copy {'error': 'Account name not found' | 'Invalid side' | 'Invalid date format' | 'Invalid super strategy' | 'Invalid strategy' } [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#get-orders-with-detailed-stats-tca-data) Get orders with detailed stats (TCA data) ----------------------------------------------------------------------------------------------------------------------------------------------------------------- `GET` `/api/orders_with_stats/` Similar to data from GET /orders endpoint, but includes more detailed execution info: list of fills and relevant transaction cost analysis data such as arrival and departure price. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#query-parameters-1) Query Parameters Name Type Description page\_size number size of paginated orders, max 1000 default: 500 page number 1-indexed page number default: 1 200: OK paginated orders with stats Copy { "orders": [\ {\ "id": "8cb8b3f6-d0ed-4dcc-97cb-d46baab928c9",\ "custom_order_id": "",\ "notes": "",\ "pair": "1INCH:PERP-USDT",\ "side": "buy",\ "buy_token": "1INCH:PERP",\ "sell_token": "USDT",\ "sell_token_amount": 376.4,\ "executed_qty": 376.5159,\ "average_executed_price": 0.37651596708133706,\ "executed_notional": 376.5159,\ "total_fee": 0.17899986,\ "strategy": "TWAP",\ "super_strategy": "Impact Minimization",\ "duration": 120,\ "accounts": [\ "8640fa74-c66f-44a9-8686-c71bf0491ec4"\ ],\ "account_names": [\ "okxtest"\ ],\ "engine_passiveness": 0.02,\ "schedule_discretion": 0.08,\ "strategy_params": {\ "reduce_only": true,\ "passive_only": false\ },\ "user": "2",\ "status": "COMPLETE",\ "is_simple": false,\ "failure_reason": "",\ "limit_price": -1.0,\ "time_start": "2024-01-25T23:25:54.712402Z",\ "time_end": "2024-01-25T23:27:54.712402Z",\ "created_at": "2024-01-25T23:25:54.762625Z",\ "updated_at": "2024-01-25T23:30:49.646518Z",\ "fills": [\ {\ "placement_id": "a5b2018a-173e-4972-b1c9-c4bbca81e7b6",\ "role": "TAKE",\ "executed_price": 0.3765,\ "executed_qty": 17.6955,\ "executed_notional": 17.6955,\ "fee": 0.00884775,\ "fill_time": "2024-01-25T23:26:13.346000Z"\ },\ //...\ ],\ "stats": {\ "order_id": "8cb8b3f6-d0ed-4dcc-97cb-d46baab928c9",\ "stat_id": 233531,\ "interval_volume": 544.5882,\ "vwap": 3214.6546467955054,\ "arrival_price": 3214.81,\ "departure_price": 3215.08\ }\ },\ //...\ ], "page_number": 1, "page_size": 500, "num_pages": 1, "order_count": 73 } [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#get-multi-order-tca) Get multi order TCA ----------------------------------------------------------------------------------------------------------------------- `GET` `/api/multi_order_tca` Similar to data from GET /orders endpoint, but includes more detailed execution info: list of fills and relevant transaction cost analysis data such as arrival and departure price. Refer to [Benchmark Costs](https://docs.tread.fi/transaction-cost-analysis#benchmark-costs) for detailed explanations on some of the metrics. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/analytics#query-parameters-2) Query Parameters Need either multi\_order\_id or custom\_order\_id Name Type Description multi\_order\_id string UUID of multi order custom\_order\_id string specified multi order 200: OK paginated orders with stats 422: Unprocessable Entity Copy { "notional_exposure": 57.451, // in USD "fee_notional": 9.94468e-7, // in USD "fee_cost": 0.00004, // in bps "vwap_cost": 39.23477228401562, // in bps "arrival_cost": 40.250532544640556, // in bps "pov": 0.19167316910751267 // participation rate in percent i.e. this is 0.19% } Copy { "message": "MultiOrder not found for identifier abcddd" } [PreviousAdmin](https://docs.tread.fi/interacting-with-the-api/api-reference/admin) [NextMiscellaneous](https://docs.tread.fi/interacting-with-the-api/api-reference/miscellaneous) Last updated 3 months ago Was this helpful? --- # Simple Orders (Market, Limit, IOC, Iceberg) | tread.fi Documentation Simple Orders provide a way to execute trades immediately with basic, exchange-level logic. Unlike algorithmic strategies ([VWAP](https://docs.tread.fi/trajectories/vwap) , [TWAP](https://docs.tread.fi/trajectories/twap) or POV) which execute over a specified duration, simple orders are submitted for immediate or conditional execution. These orders are submitted through the same `POST /api/orders/` endpoint as algorithmic orders, but with a different `strategy` name and a simplified set of parameters. [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#general-parameters) **General Parameters** ------------------------------------------------------------------------------------------------------------------------------------------------------ The following parameters are used across all simple order types. ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#required-fields) **Required Fields:** * `strategy` (string): Must be one of `"Market"`, `"Limit"`, `"IOC"`, or `"Iceberg"`. * `pair` (string): The trading pair symbol (e.g., "BTC-USD"). * `side` (string): The order side, either `"buy"` or `"sell"`. * `accounts` (array of strings): A list of account names to use for the order. * **One of the following quantity fields is required:** * `base_asset_qty` (decimal): The amount of the base asset to buy or sell. * `quote_asset_qty` (decimal): The amount of the quote asset to spend or receive. * `sell_token_amount` (decimal): The amount of the token you are selling. ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#optional-fields) **Optional Fields:** * `notes` (string): An arbitrary string for personal notes. * `custom_order_id` (string): A unique client-side ID for the order (max 64 chars). * `pos_side` (string): Use `"long"` or `"short"` for derivatives trading in hedge mode. * `updated_leverage` (integer): Update account leverage for the venue before placing the order. * `market_type` (string): The market type (e.g., `"spot"`, `"perp"`). ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#parameters-not-used-by-simple-orders) **Parameters NOT Used by Simple Orders:** The following algorithmic parameters are **ignored** for simple orders and should not be sent: * `duration` * `start_datetime` * `engine_passiveness` * `schedule_discretion` * `alpha_tilt` * `pov_target` * `pov_limit` * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#market-order) Market Order -------------------------------------------------------------------------------------------------------------------------------------- A [market order](https://docs.tread.fi/strategies/market) is the most basic order type. It executes immediately at the best available price on the market. It prioritizes speed of execution over price. **Specific Parameters:** None. A market order only requires the general parameters. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-request) **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "BTC-USD", "side": "buy", "accounts": ["coinbase_main"], "strategy": "Market", "quote_asset_qty": "1000.00", "notes": "Simple market buy for $1000 of BTC" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-response) **Example Response** Copy { "id": "a1b2c3d4-e5f6-7890-1234-567890abcdef", "custom_order_id": "", "notes": "Simple market buy for $1000 of BTC", "pair": "BTC-USD", "side": "buy", "exchanges": ["coinbase"], "buy_token": "BTC", "sell_token": "USD", "sell_token_amount": "1000.00", "strategy": "Market", "status": "ACTIVE", "user": "user_456", "created_at": "2024-01-10T14:30:00Z", "updated_at": "2024-01-10T14:30:01Z" } * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#limit-order) Limit Order ------------------------------------------------------------------------------------------------------------------------------------ A [limit order](https://docs.tread.fi/strategies/limit) places an order at a specific price or better. A buy limit order will execute at the limit price or lower, and a sell limit order will execute at the limit price or higher. These orders are inherently passive and will only fill if the market reaches the specified price. By default, they are submitted as "post-only," meaning they will be rejected if they would execute immediately. **Specific Parameters:** * `limit_price` (decimal, **required**): The specific price at which to execute the order. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-request-1) **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "BTC-USD", "side": "buy", "accounts": ["coinbase_main"], "strategy": "Limit", "base_asset_qty": "0.5", "limit_price": "45000.00" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-response-1) **Example Response** Copy { "id": "b2c3d4e5-f6a7-8901-2345-67890abcdef1", "custom_order_id": "", "notes": "", "pair": "BTC-USD", "side": "buy", "exchanges": ["coinbase"], "buy_token": "BTC", "buy_token_amount": "0.5", "sell_token": "USD", "strategy": "Limit", "limit_price": "45000.00", "status": "ACTIVE", "user": "user_456", "created_at": "2024-01-10T15:00:00Z", "updated_at": "2024-01-10T15:00:01Z" } * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#immediate-or-cancel-ioc-order) Immediate-Or-Cancel (IOC) Order -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- An [Immediate-Or-Cancel (IOC)](https://docs.tread.fi/strategies/ioc) order attempts to fill all or part of the order immediately. Any portion of the order that cannot be filled instantly is canceled. This is useful when you want to capture the current price but do not want the order to remain open if it's not filled. **Specific Parameters:** None. The IOC behavior is entirely defined by the strategy itself. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-request-2) **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "ETH-USD", "side": "sell", "accounts": ["binance_main"], "strategy": "IOC", "base_asset_qty": "10.0" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#example-response-2) **Example Response** Copy { "id": "c3d4e5f6-a7b8-9012-3456-7890abcdef12", "custom_order_id": "", "notes": "", "pair": "ETH-USD", "side": "sell", "exchanges": ["binance"], "buy_token": "USD", "sell_token": "ETH", "sell_token_amount": "10.0", "strategy": "IOC", "status": "ACTIVE", "user": "user_456", "created_at": "2024-01-10T16:00:00Z", "updated_at": "2024-01-10T16:00:01Z" } * * * [](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg#iceberg-order) Iceberg Order ---------------------------------------------------------------------------------------------------------------------------------------- An [Iceberg](https://docs.tread.fi/strategies/iceberg) order is used to place a large order without revealing the full order size to the market. The order is broken down into smaller "slices" or child orders, with only one slice visible on the order book at a time. Once a slice is filled, the next one is placed until the entire order is complete. **Specific Parameters:** * `order_slices` (integer, **recommended**): The number of visible child orders (slices) to break the total quantity into. Defaults to 10 if not provided. * `limit_price` (decimal, **optional**): You can optionally provide a limit price for the iceberg order. **Example Request** Copy POST /api/orders/ Authorization: Bearer Content-Type: application/json { "pair": "SOL-USD", "side": "buy", "accounts": ["coinbase_pro"], "strategy": "Iceberg", "base_asset_qty": "1000.0", "order_slices": 20, "limit_price": "140.00" } **Example Response** Copy { "id": "d4e5f6a7-b8c9-0123-4567-890abcdef123", "custom_order_id": "", "notes": "", "pair": "SOL-USD", "side": "buy", "exchanges": ["coinbase_pro"], "buy_token": "SOL", "buy_token_amount": "1000.0", "sell_token": "USD", "strategy": "Iceberg", "order_slices": 20, "limit_price": "140.00", "status": "ACTIVE", "user": "user_456", "created_at": "2024-01-10T17:00:00Z", "updated_at": "2024-01-10T17:00:02Z" } [PreviousCore Order API](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api) [NextAlgorithmic Orders (VWAP, TWAP, POV)](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov) Last updated 4 months ago Was this helpful? --- # Multi Order | tread.fi Documentation [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#get-multi-order) Get Multi Order ----------------------------------------------------------------------------------------------------------------- GET `/api/multi_order/{id}` Get detailed information about a specific multi-order including its child orders, execution status, and key parameters. This endpoint provides comprehensive information about the multi-order structure and its current state. **Path Parameters** Name Type Description `id` string UUID of multi order. **Required.** **Query Parameters** Name Type `include_child_orders` boolean Include full child order details in the response (default: false). **Example Request** Copy GET /api/multi_order/6debb950-614a-4366-b73b-7d7574fd9e15?include_child_orders=true Authorization: Bearer **Response Codes** 200: OK 400: Bad Request 404: Notfound Copy { "id": "397e42c1-a617-458b-9db9-dc51f326b918", "created_at": "2025-01-13T20:33:22.331268Z", "updated_at": "2025-01-13T20:33:22.331288Z", "start_datetime": "2025-01-13T20:33:22.323949Z", "duration": 600, "exposure_tolerance": "0.50000000000000000000", "notional_exposure": 34.554926518, "executed_notional": 93712.607473482, "is_active": false, "child_order_ids": [\ "5ee11fdd-334d-418a-b138-7df74f17e417",\ "54509111-7204-4626-8513-d7f040f76bf3"\ ], "strategy": "ccb82677-249d-4b01-8f60-7a02379e963a", "strategy_params": {}, "engine_passiveness": "0.02000000000000000000", "schedule_discretion": "0.06000000000000000000", "alpha_tilt": "0.00000000000000000000", "pov_limit": null, "limit_price_spread": null, "order_condition": "ETH-USDT@Binance ETH:PERP-USDT@Binance - 1 >", "order_condition_vars": {}, "order_condition_expiry": null, "user": "13", "status": "SCHEDULED", "failure_reason": "", "completely_filled": true, "is_paused": false, "pct_filled": 100.0, "account_names": [\ "mock"\ ], "pairs": "BTC-USDT,BTC:PERP-USDT", "calculated_status": "COMPLETE", "sell_token_amount": "0.50000000000000000000, 46871.66540000000000000000", "buy_token": "USDT, BTC:PERP", "sell_token": "BTC, USDT" } Copy { "error": "unable to get multi order" } Copy { "error": "multi order not found" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#get-multi-orders) Get Multi Orders ------------------------------------------------------------------------------------------------------------------- GET `/api/multi_orders/` Paginated multi orders fetched given the filter options **Query Parameters** Name Type `include_child_orders` boolean Include full child order details in the response (default: false). `custom_order_ids` string comma separated list of values `statuses` string comma separated list of order statuses[MultiOrderStatus \[Enum\]](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference#multiorderstatus-enum) `before` string iso format datetime ex. 2025-08-11T12:00:00 `after` string iso format datetime ex. 2025-08-11T12:00:00 `page_number` integer default: 1 `page_size` integer default: 100 **Example Request** Copy GET /api/multi_order/6debb950-614a-4366-b73b-7d7574fd9e15?include_child_orders=true Authorization: Bearer **Response Codes** 200: OK 400: Bad Request Copy { "multi_orders": [\ {\ "id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "created_at": "2023-12-01T10:00:00Z",\ "updated_at": "2023-12-01T10:30:00Z",\ "start_timedate": "2023-12-01T10:00:00Z",\ "duration": 3600,\ "exposure_tolerance": "0.05",\ "notional_exposure": "22500.00",\ "executed_notional": "22500.00",\ "child_order_ids": [\ "7fecb951-725b-5477-c84c-8e8685ge0f26",\ "8gfdca62-836c-6588-d95d-9f9796hf1g37"\ ],\ "accounts": ["binance_main", "coinbase_pro"],\ "strategy": "TWAP",\ "strategy_params": {\ "interval": 300,\ "slices": 12\ },\ "engine_passiveness": "0.5",\ "schedule_discretion": "0.3",\ "alpha_tilt": "0.1",\ "limit_price_spread": null,\ "failure_reason": null,\ "pct_filled": "100.00",\ "account_names": ["binance_main", "coinbase_pro"],\ "pairs": "BTC-USD,ETH-USD",\ "status": "COMPLETED",\ "is_active": false,\ "is_paused": false,\ "fee_notional": "22.50",\ "order_condition": "",\ "custom_order_id": "multi_order_123",\ "child_orders": [\ {\ "id": "7fecb951-725b-5477-c84c-8e8685ge0f26",\ "custom_order_id": "child_order_1",\ "parent_order_id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "notes": "",\ "pair": "BTC-USD",\ "side": "buy",\ "exchanges": ["binance"],\ "buy_token": "BTC",\ "buy_token_amount": "0.25",\ "sell_token": "USD",\ "sell_token_amount": "11250.00",\ "strategy": "TWAP",\ "strategy_params": {\ "interval": 300,\ "slices": 6\ },\ "status": "COMPLETED",\ "executed_notional": "11250.00",\ "pct_filled": "100.00",\ "created_at": "2023-12-01T10:00:00Z",\ "updated_at": "2023-12-01T10:30:00Z",\ "time_start": "2023-12-01T10:00:00Z",\ "duration": 1800,\ "limit_price": "45000.00",\ "engine_passiveness": "0.5",\ "schedule_discretion": "0.3",\ "alpha_tilt": "0.1",\ "is_active": false,\ "is_paused": false,\ "failure_reason": null,\ "fee": "11.25",\ "fills": [\ {\ "id": "fill_001",\ "timestamp": "2023-12-01T10:05:00Z",\ "quantity": "0.04166667",\ "price": "45000.00",\ "notional": "1875.00",\ "venue": "binance",\ "fee": "1.875"\ }\ ]\ }\ ]\ }\ ], "page_number": 1, "page_size": 100, "num_pages": 2, "multi_order_count": 144 } Copy { "errors": [" is invalid"] } [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#submit-multi-order) Submit Multi Order ----------------------------------------------------------------------------------------------------------------------- `POST` `/api/multi_orders/` Submit a multi-order containing multiple child orders for scheduling and execution. This endpoint allows you to create a group of related orders that share common parameters while allowing individual customization for each child order. **Request Body** Name Type Required Description `accounts` array\[string\] Yes List of account names to use for the multi-order `duration` integer Yes Duration of the multi-order in seconds `strategy` string Yes Strategy name to use for execution. Ex. VWAP `engine_passiveness` decimal Yes Engine passiveness value (0.0 to 1.0) `schedule_discretion` decimal Yes Schedule discretion value (0.0 to 1.0) `child_orders` array\[object\] Yes Array of child order objects `strategy_params` object No Strategy-specific parameters `alpha_tilt` decimal No Alpha tilt value for order execution `exposure_tolerance` decimal No Exposure tolerance for the multi-order `limit_price_spread` decimal No Dynamic limit price spread for spread trades `order_condition` string No Conditional order expression `start_timedate` string No ISO 8601 timestamp for order start (defaults to now) `custom_order_id` string No Custom identifier for the multi-order `notes` string No Additional notes for the multi-order ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#child-order-object) Child Order Object Name Type Required Description `pair` string Yes Trading pair symbol `side` string Yes Order side: buy or sell `base_asset_qty` decimal Yes Base asset quantity `accounts` array\[string\] No Specific accounts for this child order (overrides parent accounts) `quote_asset_qty` decimal No Quote asset quantity (alternative to `base_asset_qty`) `notes` string No Notes specific to this child order `alpha_tilt` decimal No Alpha tilt specific to this child order `pos_side` string No Position side: long or short. Required if exchange account is configured to be in Hedge Mode. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#example-request) Example Request Copy POST /api/multi_orders/ Authorization: Bearer Content-Type: application/json { "accounts": ["binance_main"], "duration": 3600, "strategy": "TWAP", "engine_passiveness": 0.5, "schedule_discretion": 0.3, "alpha_tilt": 0.1, "exposure_tolerance": 0.05, "custom_order_id": "multi_order_123", "notes": "for xyz", "child_orders": [\ {\ "pair": "BTC:PERP-USDT",\ "side": "buy",\ "quote_asset_qty": 100000,\ },\ {\ "pair": "ETH:PERP-USDT",\ "side": "sell",\ "quote_asset_qty": 100000,\ }\ ] } **Response** 201: Created 422: Unprocessable Entity Copy { "id": "397e42c1-a617-458b-9db9-dc51f326b918", "created_at": "2025-01-13T20:33:22.331268Z", "updated_at": "2025-01-13T20:33:22.331288Z", "start_datetime": "2025-01-13T20:33:22.323949Z", "duration": 600, "exposure_tolerance": "0.50000000000000000000", "notional_exposure": 34.554926518, "executed_notional": 93712.607473482, "is_active": false, "child_order_ids": [\ "5ee11fdd-334d-418a-b138-7df74f17e417",\ "54509111-7204-4626-8513-d7f040f76bf3"\ ], "strategy": "ccb82677-249d-4b01-8f60-7a02379e963a", "strategy_params": {}, "engine_passiveness": "0.02000000000000000000", "schedule_discretion": "0.06000000000000000000", "alpha_tilt": "0.00000000000000000000", "pov_limit": null, "limit_price_spread": null, "order_condition": "ETH-USDT@Binance ETH:PERP-USDT@Binance - 1 >", "order_condition_vars": {}, "order_condition_expiry": null, "user": "13", "status": "SCHEDULED", "failure_reason": "", "completely_filled": true, "is_paused": false, "pct_filled": 100.0, "account_names": [\ "mock"\ ], "pairs": "BTC-USDT,BTC:PERP-USDT", "calculated_status": "COMPLETE", "sell_token_amount": "0.50000000000000000000, 46871.66540000000000000000", "buy_token": "USDT, BTC:PERP", "sell_token": "BTC, USDT" } Copy { "errors": [\ "Need at least one top level account or individual child order accounts",\ "Cannot have more than one of the qty fields: ['base_asset_qty', 'quote_asset_qty', 'sell_token_amount']"\ ] } [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#cancel-multi-orders) Cancel Multi Orders ------------------------------------------------------------------------------------------------------------------------- `POST` `/api/cancel_multi_orders/` Cancel multi orders identified by the provided list of order IDs or custom order IDs, canceling all child orders and their active placements. Must provide either `order_ids` or `custom_order_ids`. **Request Body** Name Type Description `order_ids` array\[string\] list of multi order UUIDs `custom_order_ids` array\[string\] array of user specified custom order IDs **Response** 200 400 422 Copy { "message": "Multi orders canceled!" } Copy { "errors": ["Missing required field: order_ids or custom_order_ids"] } Copy { "errors": ["Unexpected failure while cancelling order"] } [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#pause-multi-order) Pause Multi Order --------------------------------------------------------------------------------------------------------------------- `POST` `/api/pause_multi_order/` Pause a multi-order and all its child orders, canceling all active placements and stopping execution until resumed. The multi-order will maintain its current state and can be resumed later. **Request Body** Name Type Description `multi_order_id`\* string Name of the user #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#example-request-1) Example Request Copy POST /api/pause_multi_order/ Authorization: Bearer Content-Type: application/json { "multi_order_id": "6debb950-614a-4366-b73b-7d7574fd9e15" } **Response Codes** 202: Accepted 400: Bad Request 401: Unauthorized 404: Not Found 422: Unprocessable Entity 500 Copy { "message": "Successfully paused multi order." } Occurs when: * The `multi_order_id` field is missing from the request body * The multi-order is already paused or terminated Copy { "error": "Multi Order already paused or terminated" } Occurs when: * The user does not have permission to pause the specified multi-order (not the owner or not a superuser) Sample Error Message Copy { "error": "Unauthorized" } Occurs when: * No multi-order exists with the given `multi_order_id` Sample Error Message Copy { "error": "No multi order found with given ID!" } Sample Error Message Copy { "error": "Failed to pause all child orders: " } Copy { "error": "Internal server error" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#resume-multi-order) Resume Multi Order ----------------------------------------------------------------------------------------------------------------------- `POST` `/api/resume_multi_order/` Resume all legs of the multi order **Request Body** Name Type Description `multi_order_id`\* string UUID of the multi-order to resume. **Required Field** #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#example-request-2) Example Request Copy POST /api/resume_multi_order/ Authorization: Bearer Content-Type: application/json { "multi_order_id": "6debb950-614a-4366-b73b-7d7574fd9e15" } **Response Codes** 202: Accepted 400: Bad Request 401: Unauthorized 422: Unprocessable Entity Copy { "message": "Successfully resumed multi order." } Occurs when: * The multi\_order\_id field is missing from the request body * The multi-order is not currently paused Sample Error Messages Copy { "error": "Missing required field: multi_order_id" } Occurs when: * The user does not have permission to resume the specified multi-order (not the owner or not a superuser) Sample Error Message Copy { "example": "Unauthorized" } Occurs when: * An error occurs while resuming one or more child orders * There is a backend error during the resume operation Sample Error Message Copy { "error": "Failed to resume all child orders: " } [PreviousAlgorithmic Orders (VWAP, TWAP, POV)](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov) [NextAccounts](https://docs.tread.fi/interacting-with-the-api/api-reference/accounts) Last updated 4 months ago Was this helpful? --- # Core Order API | tread.fi Documentation Provides the complete set of API endpoints for managing the lifecycle of single-leg orders. These endpoints allow you to submit, retrieve, amend, pause, resume, and cancel single-leg orders. For other order-specific API workflows, please refer to the documentation for [Simple Orders](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg) , [Algorithmic Orders](https://docs.tread.fi/interacting-with-the-api/api-reference/algorithmic-orders-vwap-twap-pov) , [Multi-Orders](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order) , and Chained Orders. [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#authentication) Authentication ------------------------------------------------------------------------------------------------------------------ All endpoints require Authorization. * Send Authorization: `Token ` with every request. * For write endpoints, include `Content-Type: application/json` ### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example) Example: * Header: Authorization: `Token 1a2b3c...` [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-all-orders) Get all orders ------------------------------------------------------------------------------------------------------------------ `GET` `/api/orders/` Get all orders within the past 12 months. Identity is inferred by API token. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters) Query Parameters Name Type Description `statuses` string Comma separate values of order statuses. (e.g., "ACTIVE,COMPLETED,CANCELED"). See the [Type Reference page](https://docs.tread.fi/interacting-with-the-api/api-reference/type-reference) for a list of available values. `account_names` string Comma separated values of account names. If using another user's account, must be scoped with prefix ex. username/account\_name `before` string ISO 8601 format timestamp, orders before this timestamp `after` string ISO 8601 format timestamp, orders after this timestamp `custom_order_ids` string Comma separated values of `custom_order_id` submitted with the order `page` string 1-indexed page number, default: 1 `page_size` string page size, default: 100 **Headers** `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request) Example Request Copy GET /api/orders/?statuses=ACTIVE,PAUSED&account_names=binance_main,coinbase_pro&page=1&page_size=50&after=2023-12-01T00:00:00Z&before=2023-12-31T23:59:59Z&custom_order_ids=order_123,order_456 #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response) Example Response Copy { "orders": [\ {\ "id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "custom_order_id": "order_123",\ "parent_order_id": null,\ "notes": "",\ "pair": "BTC-USD",\ "side": "buy",\ "exchanges": ["binance", "coinbase_pro"],\ "buy_token": "BTC",\ "buy_token_amount": "0.1",\ "sell_token": "USD",\ "sell_token_amount": "5000.00",\ "executed_qty": "0.05",\ "executed_buy_qty": "0.05",\ "average_executed_price": "50000.00",\ "executed_notional": "2500.00",\ "target_order_qty": "0.1",\ "target_remaining_qty": "0.05",\ "target_token": "BTC",\ "target_executed_qty": "0.05",\ "pct_filled": "50.00",\ "total_fee": "2.50",\ "strategy": "TWAP",\ "super_strategy": "Standard",\ "duration": 3600,\ "accounts": ["account_1", "account_2"],\ "account_names": ["binance_main", "coinbase_pro"],\ "engine_passiveness": "0.5",\ "schedule_discretion": "0.3",\ "pov_limit": null,\ "pov_target": null,\ "alpha_tilt": "0.0",\ "strategy_params": {},\ "user": "user_123",\ "status": "ACTIVE",\ "active": true,\ "is_simple": true,\ "failure_reason": null,\ "limit_price": "",\ "is_reverse_limit_price": false,\ "time_start": "2023-12-15T10:00:00Z",\ "time_end": "2023-12-15T11:00:00Z",\ "created_at": "2023-12-15T09:55:00Z",\ "updated_at": "2023-12-15T10:30:00Z"\ }\ ], "page_number": 1, "page_size": 50, "num_pages": 1, "order_count": 1 } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes) Response Codes: 200: OK 400: Bad Request 401: Unauthorized 500: Internal Server Error Copy ```json { "orders": [\ {\ "id": "984ffec9-f0bf-4b28-9dc1-81d5dfda1794",\ "custom_order_id": "custom1",\ "notes": "leverage: 10",\ "pair": "ETH:PERP-USDT",\ "side": "buy",\ "buy_token": "ETH:PERP",\ "sell_token": "USDT", \ "sell_token_amount": 500.0,\ "executed_qty": 0,\ "average_executed_price": null,\ "executed_notional": 0,\ "total_fee": 0,\ "strategy": "TWAP",\ "duration": 120,\ "accounts": ["d0d54d4f-e3a5-49ba-a2c9-559caf2c69d2"],\ "account_names": ["test"],\ "engine_passiveness": 0.1,\ "schedule_discretion": 0.08,\ "strategy_params": { "passive_only": true },\ "user": "2",\ "status": "ACTIVE",\ "is_simple": false,\ "failure_reason": "",\ "limit_price": -1.0,\ "start_datetime": "2023-05-24T19:15:25.026448Z",\ "time_end": "2023-05-24T19:17:25.026448Z",\ "created_at": "2023-05-24T19:15:25.043965Z",\ "updated_at": "2023-05-24T19:15:25.259855Z"\ }\ ], "page_number": 1, "page_size": 100, "num_pages": 1, "order_count": 36 } ``` Occurs when: * Invalid date format provided for before or after parameters (must be ISO 8601 format) * Account names provided don't exist or user doesn't have access to them * The specific error message will indicate which parameter caused the issue Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "Invalid date format for 'after' parameter",\ "response": {\ "message": "Invalid after date format"\ }\ },\ {\ "scenario": "Invalid date format for 'before' parameter", \ "response": {\ "message": "Invalid after date format"\ }\ },\ {\ "scenario": "Invalid account names",\ "response": {\ "error": "Account display name 'invalid_account' not found for user"\ }\ },\ {\ "scenario": "Missing required fields (POST)",\ "response": {\ "error": "Missing required fields: ['pair', 'accounts', 'side', 'duration', 'strategy']"\ }\ },\ {\ "scenario": "No quantity fields provided (POST)",\ "response": {\ "errors": "Need one of the qty fields: ['base_asset_qty', 'quote_asset_qty', 'sell_token_amount']"\ }\ },\ {\ "scenario": "Multiple quantity fields provided (POST)",\ "response": {\ "errors": "Cannot have more than one of the qty fields: ['base_asset_qty', 'quote_asset_qty', 'sell_token_amount']"\ }\ },\ {\ "scenario": "General validation errors (POST)",\ "response": {\ "errors": [\ "Invalid order data",\ "Pair is required", \ "Side must be either 'Buy' or 'Sell'"\ ]\ }\ },\ {\ "scenario": "Superuser restriction (POST)",\ "response": {\ "error": "Superusers on retail cannot place orders"\ }\ }\ ] } } Occurs when: * No valid authentication token provided in Authorization header * Token is expired or invalid * User account is not active Sample Error Messages: Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "No authentication credentials provided",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid or expired token",\ "response": {\ "detail": "Invalid token."\ }\ }\ ] } } Occurs when: * Database connection issues * Unexpected server errors during order retrieval Sample Error Message Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Unexpected server error",\ "response": {\ "errors": ["An unexpected error occurred. Please try again later."]\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-active-orders) Get active orders ------------------------------------------------------------------------------------------------------------------------ `get` `/api/active_orders/` Get all currently active orders for the authenticated user. Name Type Description `exclude_paused` string Whether to exclude paused orders. Default: true `account_names` string Comma separated values of account names to filter by `only_active` string Whether to return only active orders. Default: false **Headers** * `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-1) Example Request Copy GET /api/active_orders/?exclude_paused=true&account_names=binance_main,coinbase_pro&only_active=false #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-1) Example Response Copy { "orders": [\ {\ "id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "custom_order_id": "my_custom_order_123",\ "parent_order_id": null,\ "notes": "Buy BTC over 1 hour using TWAP strategy",\ "pair": "BTC-USD",\ "side": "buy",\ "exchanges": ["binance", "coinbase_pro"],\ "buy_token": "BTC",\ "buy_token_amount": "0.5",\ "sell_token": "USD",\ "sell_token_amount": "22500.00",\ "strategy": "TWAP",\ "duration": 3600,\ "status": "ACTIVE",\ "time_start": "2023-12-01T10:00:00Z",\ "time_end": "2023-12-01T11:00:00Z",\ "limit_price": "45000.00",\ "engine_passiveness": 0.5,\ "schedule_discretion": 0.3,\ "alpha_tilt": 0.1,\ "pos_side": "long",\ "user": "user_123",\ "created_at": "2023-12-01T09:55:00Z",\ "updated_at": "2023-12-01T09:55:00Z",\ "fills": [\ {\ "id": "fill_123",\ "order_id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "exchange": "binance",\ "pair": "BTC-USD",\ "side": "buy",\ "quantity": "0.1",\ "price": "44950.00",\ "timestamp": "2023-12-01T10:15:00Z",\ "fee": "0.001",\ "fee_currency": "BTC"\ }\ ]\ },\ {\ "id": "7fecb061-725b-5477-c84c-8e8685ge0f26",\ "custom_order_id": "my_custom_order_456",\ "parent_order_id": null,\ "notes": "Sell ETH using VWAP strategy",\ "pair": "ETH-USD",\ "side": "sell",\ "exchanges": ["coinbase_pro"],\ "buy_token": "USD",\ "buy_token_amount": "5000.00",\ "sell_token": "ETH",\ "sell_token_amount": "2.5",\ "strategy": "VWAP",\ "duration": 1800,\ "status": "PAUSED",\ "time_start": "2023-12-01T11:00:00Z",\ "time_end": "2023-12-01T11:30:00Z",\ "limit_price": "2000.00",\ "engine_passiveness": 0.3,\ "schedule_discretion": 0.2,\ "alpha_tilt": 0.0,\ "pos_side": "short",\ "user": "user_123",\ "created_at": "2023-12-01T10:45:00Z",\ "updated_at": "2023-12-01T11:10:00Z",\ "fills": []\ }\ ], "order_count": 2 } **Response Codes** 200: OK List active orders 400: Bad Request 401: Unauthorized Copy { "orders": [\ {\ "id": "984ffec9-f0bf-4b28-9dc1-81d5dfda1794",\ "status": "ACTIVE",\ "pair": "BTC-USDT",\ "side": "buy",\ "executed_qty": 0.5,\ "target_order_qty": 1.0,\ "pct_filled": 50.0\ }\ ], "order_count": 1 } Occurs when: * Invalid account names are provided in the account\_names query parameter * The user doesn't have access to the specified accounts * There's an issue resolving the account display names to account IDs The specific error message depends on what went wrong in the account lookup process, but the response structure is always: `{"error": "error message from account lookup"}S` Sample Error Message Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "Invalid account names",\ "response": {\ "error": "Account display name 'invalid_account' not found for user"\ }\ }\ ] } } Occurs when: * No valid authentication token provided * Token is expired or revoked Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "No authentication credentials provided",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid or expired token/session",\ "response": {\ "detail": "Invalid token."\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#submit-an-order) Submit an order -------------------------------------------------------------------------------------------------------------------- `POST` `/api/orders/` Submit an order for scheduling and execution. The request contains all the parameters necessary to carry out the execution until completion. The order is queued immediately if `start_datetime` is not set or is in the past. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#request-body) Request Body Name Type Required Description `pair` string Yes Symbol for the token pair, refer to token pairs reference `side` string Yes Order side: buy or sell `pos_side` string No short or long. Use when the account's position mode is set to "Hedge" `base_asset_qty` decimal Conditional Quantity of base asset. Must provide exactly one of: `base_asset_qty`, `quote_asset_qty`, or `sell_token_amount` `quote_asset_qty` decimal Conditional Quantity of quote asset. Must provide exactly one of: `base_asset_qty`, `quote_asset_qty`, or `sell_token_amount` `sell_token_amount` decimal Conditional Quantity of sell token. Must provide exactly one of: `base_asset_qty`, `quote_asset_qty`, or `sell_token_amount` `strategy` string Yes Trading algorithm UUID. See the Type Reference page for a list of values `strategy_params` object No Various options for configuring the strategy. See the Type Reference page for more details `accounts` array\[string\] Yes List of account names. You pick this name when linking a new exchange key under key management `duration` integer Conditional Duration of execution in seconds. **Required** unless `pov_target` is provided `start_datetime` string (ISO 8601) No Time represented in Epoch milliseconds of when to start execution. If not provided, defaults to now `limit_price` string No Limit price for passive orders. If not provided, the algorithm will decide `is_reverse_limit_price` boolean No Engine will only trade at prices worse than `limit_price` `engine_passiveness` decimal \[0, 1\] Yes Passiveness of the engine (accepted values: 0 to 1). A higher passiveness will result in the engine placing further from the spread. For more information, read about Passiveness `schedule_discretion` decimal \[0.02, 0.5\] Yes Ratio of order size allowed to deviate from the target i.e. decides the upper and lower bounds of the schedule. For more information, read about Discretion `alpha_tilt` decimal \[-1, 1\] No Implied short-term alpha. See Alpha Tilt for more detail `pov_limit` decimal (0, 1\] No The engine will trade at no more than this fraction of market volume. See Participation Rate Limit for more detail. Note that the GUI interprets this value as a percentage `pov_target` decimal (0, 1\] No Participation Rate Target. Note that the GUI interprets this value as a percentage `max_otc` decimal \[0, 1\] No Upper bound of the fraction of the parent order that will be executed via OTC. See Max OTC Percentage. Note that the GUI interprets this value as a percentage `order_condition` string No An expression representing the condition that would trigger the start of execution. Refer to Conditional Order `notes` string No Arbitrary string to add notes `custom_order_id` string No 64 max length string that can be used to filter in GET orders endpoint. When TaaS sends orders to supported exchanges, the client order id of the exchange orders will start with "TL" followed by first 9 alphanumeric characters of the custom\_order\_id `updated_leverage` integer No Leverage for the account can be updated prior to submitting the order (behavior varies based on the venue) `stop_price` decimal No Stop price for stop orders `order_slices` integer No Number of order slices to use for execution. Higher values create more granular execution with smaller individual placements. `target_asset` string No Specifies which asset (`base` or `quote`) the order quantity refers to. This determines how the order quantity is interpreted and calculated. `exposure_tolerance` decimal No Tolerance for exposure limits in multi-order scenarios `market_type` string No Market type for the order `super_strategy` string (UUID) No Super strategies are predefined configurations that include strategy parameters, engine passiveness, schedule discretion, and alpha tilt settings. **Headers** * `Authorization: Token ` * `Content-Type: application/json` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-2) Example Request `POST` `/api/orders/` **Body** Copy { "pair": "BTC-USD", "side": "buy", "accounts": ["binance_main", "coinbase_pro"], "strategy": "TWAP", "duration": 3600, "base_asset_qty": 0.5, "custom_order_id": "my_custom_order_123", "notes": "Buy BTC over 1 hour using TWAP strategy", "limit_price": "45000.00", "start_datetime": "2023-12-01T10:00:00Z", "engine_passiveness": 0.5, "schedule_discretion": 0.3, "alpha_tilt": 0.1, "pos_side": "long" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-2) Example Response Copy { "id": "6debb950-614a-4366-b73b-7d7574fd9e15", "custom_order_id": "my_custom_order_123", "parent_order_id": null, "notes": "Buy BTC over 1 hour using TWAP strategy", "pair": "BTC-USD", "side": "buy", "exchanges": ["binance", "coinbase_pro"], "buy_token": "BTC", "buy_token_amount": "0.5", "sell_token": "USD", "sell_token_amount": "22500.00", "strategy": "TWAP", "duration": 3600, "status": "ACTIVE", "time_start": "2023-12-01T10:00:00Z", "time_end": "2023-12-01T11:00:00Z", "limit_price": "45000.00", "engine_passiveness": 0.5, "schedule_discretion": 0.3, "alpha_tilt": 0.1, "pos_side": "long", "user": "user_123", "created_at": "2023-12-01T09:55:00Z", "updated_at": "2023-12-01T09:55:00Z" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-1) Response Codes 201: Created Order successfully submitted, returns uuid 400: Bad Request 401: Unauthorized 403: Forbidden 422: Unprocessable Entity 500: Internal Server Error Copy { "id": "6debb950-614a-4366-b73b-7d7574fd9e15", "buy_token": "ETH", "sell_token": "USDT", "side": "buy", "pair": "ETH-USDT", "sell_token_amount": 50000.0, "strategy": "6fe4ba3e-c578-45bd-824c-c523bf3c56de", "strategy_params": { "passive_only": true }, "limit_price": 1.0, "start_datetime": "2023-08-08T23:54:06.300319Z", "time_end": "2023-08-08T23:59:06.300319", "duration": 300, "accounts": ["09d3144b-9359-4ec3-8772-2dd1bfb86652"], "account_names": ["mock"], "user": "2", "status": "ACTIVE", "engine_passiveness": "0.2", "schedule_discretion": "0.08", "failure_reason": "", "executed_qty": 0, "executed_price": null, "executed_notional": null, "notes": "", "custom_order_id": "", "updated_leverage": null, "placements": [], "fills": [\ {\ "id": "44c82c49-1e9d-43f8-98cd-318a2c01a317",\ "created_at": 1660445425000,\ "fill_time": 1660445725000,\ "role": "MAKE",\ "external_id": "21949858",\ "executed_price": 1658.40,\ "executed_qty": 3.5,\ "exchange": "Binance",\ "fee": 0.0443\ },\ //...\ ] } Occurs when: * Missing required fields: pair, side, accounts, strategy, or duration (unless pov\_target provided) * No quantity field provided: must include exactly one of base\_asset\_qty, quote\_asset\_qty, or sell\_token\_amount * Multiple quantity fields provided: cannot have more than one of base\_asset\_qty, quote\_asset\_qty, or sell\_token\_amount * Invalid parameter values (e.g., negative quantities, invalid strategy UUID) * Invalid account names or insufficient permissions * Invalid pair format or unsupported trading pair * Invalid limit price format or value * Invalid strategy parameters * Invalid order condition expression * Invalid time format for start\_datetime * Invalid leverage value for the specified venue Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "Missing required fields",\ "response": {\ "errors": ["Need one of the qty fields: ['base_asset_qty', 'quote_asset_qty', 'sell_token_amount']"]\ }\ },\ {\ "scenario": "Multiple quantity fields",\ "response": {\ "errors": ["Cannot have more than one of the qty fields: ['base_asset_qty', 'quote_asset_qty', 'sell_token_amount']"]\ }\ },\ {\ "scenario": "Invalid strategy UUID",\ "response": {\ "errors": ["Invalid strategy: 6fe4ba3e-c578-45bd-824c-c523bf3c56de"]\ }\ },\ {\ "scenario": "Invalid account names",\ "response": {\ "error": "Account display name 'invalid_account' not found for user"\ }\ },\ {\ "scenario": "Invalid pair format",\ "response": {\ "errors": ["Invalid buy_token ASDF"]\ }\ },\ {\ "scenario": "Invalid limit price",\ "response": {\ "errors": ["Limit price must be a positive number"]\ }\ }\ ] } } Occurs when: * Missing or invalid API token * Token has expired * Insufficient permissions to access the specified accounts Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "Missing API token",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid API token",\ "response": {\ "detail": "Invalid token header. No credentials provided."\ }\ },\ {\ "scenario": "Expired token",\ "response": {\ "detail": "Token has expired."\ }\ }\ ] } } Occurs when: * Superusers on retail environment cannot place orders * Account access restrictions * Trading restrictions on the specified pair or venue Sample Error Message Copy { "403": { "description": "Forbidden", "examples": [\ {\ "scenario": "Superuser on retail environment",\ "response": {\ "error": "Superusers on retail cannot place orders"\ }\ },\ {\ "scenario": "Account access denied",\ "response": {\ "error": "Access denied to specified accounts"\ }\ },\ {\ "scenario": "Trading restrictions",\ "response": {\ "error": "Trading not allowed for this pair on the specified venue"\ }\ }\ ] } } Occurs when: * Insufficient balance for the order * Market restrictions prevent order execution * Exchange-specific limitations * Invalid order configuration for the selected strategy Sample Error Messages Copy { "422": { "description": "Unprocessable Entity", "examples": [\ {\ "scenario": "Insufficient balance",\ "response": {\ "errors": ["Insufficient balance for order execution"]\ }\ },\ {\ "scenario": "Market restrictions",\ "response": {\ "errors": ["Market is closed for the specified trading pair"]\ }\ },\ {\ "scenario": "Exchange limitations",\ "response": {\ "errors": ["Order size exceeds exchange limits"]\ }\ },\ {\ "scenario": "Invalid strategy configuration",\ "response": {\ "errors": ["Strategy parameters not compatible with selected trading pair"]\ }\ }\ ] } } Occurs when: * Database connection issues * External service failures * Unexpected system errors Sample Error Messages Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Database connection error",\ "response": {\ "error": "Database connection failed"\ }\ },\ {\ "scenario": "External service failure",\ "response": {\ "error": "Price feed service unavailable"\ }\ },\ {\ "scenario": "Unexpected system error",\ "response": {\ "error": "Something went wrong"\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-order-summary) Get order summary ------------------------------------------------------------------------------------------------------------------------ `GET` `/api/order_summary/{id}` Get basic order information including execution status, quantities, and key parameters. This endpoint provides a concise summary of the order without detailed fill information. * **Purpose**: Get a list of orders with statistics * **Scope**: Multiple orders (paginated) * **Data**: Basic order info + statistics + fills for each order * **Use Case**: Dashboard, order list view, bulk analytics * **Performance**: Optimized for bulk retrieval #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#path-parameters) Path Parameters Name Type Description id\* string (UUID) UUID of the order to retrieve **Query Parameters** * None. **Headers** `Authorization: Token ` **Example Request** `GET /api/order_summary/45a18223-aeab-4451-9253-c3135261d55b` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-2) Response Codes 200: OK 400: Bad Request 401: Unauthorized 404: Order Not Found 500: Internal Server Error Copy {'id': '45a18223-aeab-4451-9253-c3135261d55b', 'pair': 'BTC-USDT', 'side': 'buy', 'status': 'COMPLETE', 'start_datetime': '2024-10-25T16:55:03.842747Z', 'duration': 108, 'target_token': 'USDT', 'order_qty': 60000.0, 'remaining_qty': 3.38620187, 'executed_qty': 59996.61379813, 'executed_notional': 59996.61379813, 'exchange_names': ['MockExchange'], 'account_names': ['mock'], 'schedule_discretion': 0.08, 'engine_passiveness': 0.02, 'alpha_tilt': 0.01, 'strategy': None, 'trajectory': 'VWAP', 'strategy_params': {'passive_only': True}, 'participation_rate_target_percent': 8.0, 'market_type': 'spot', 'parent_order_id': None, 'failure_reason': '', 'limit_price': ''} Occurs when: * No order ID provided in the URL path * Invalid UUID format for the order ID * Order ID is malformed or contains invalid characters Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "No order ID provided",\ "response": "No order ID given!"\ },\ {\ "scenario": "Invalid UUID format",\ "response": "Invalid order ID format"\ }\ ] } } Occurs when: * Missing or invalid API token * Token has expired * User does not have permission to access the specified order Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "Missing API token",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid API token",\ "response": {\ "detail": "Invalid token header. No credentials provided."\ }\ },\ {\ "scenario": "Expired token",\ "response": {\ "detail": "Token has expired."\ }\ },\ {\ "scenario": "Order access denied",\ "response": "Unauthorized"\ }\ ] } } Occurs when: * Order with the specified ID does not exist * Order has been deleted or is not accessible * Order ID is valid but the order is not found in the database Copy { "404": { "description": "Not Found", "examples": [\ {\ "scenario": "Order does not exist",\ "response": "No order found with given ID!"\ },\ {\ "scenario": "Order not accessible",\ "response": "Order not found or access denied"\ }\ ] } } Occurs when: * Database connection issues * External service failures * Unexpected system errors during order retrieval Sample Error Message Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Database connection error",\ "response": {\ "error": "Database connection failed"\ }\ },\ {\ "scenario": "External service failure",\ "response": {\ "error": "Price feed service unavailable"\ }\ },\ {\ "scenario": "Unexpected system error",\ "response": {\ "error": "Something went wrong"\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-orders-with-statistics) Get orders with statistics ------------------------------------------------------------------------------------------------------------------------------------------ `GET /api/orders_with_stats/` Retrieve a paginated list of orders with their associated statistics and analytics data. This endpoint provides comprehensive order information including execution statistics, fill breakdowns, and performance metrics. * **Purpose**: Get a list of orders with statistics * **Scope**: Multiple orders (paginated) * **Data:** * **Basic Order Information**: ID, pair, side, status, duration, etc. * **Execution Statistics**: VWAP, arrival price, departure price, interval volume * **Fill Data**: Detailed fill information with placement details * **Performance Metrics**: Fee calculations, execution analytics * **Account Information**: Associated accounts and exchange details * **Use** Case: Dashboard, order list view, bulk analytics * Performance: Optimized for bulk retrieval #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters-1) **Query Parameters** Name Type Description `page` integer Page number for pagination (Default: 1; Optional) `page_size` integer Number of orders per page (Default: 500, Max: 100) **Headers** `Authorization: Token ` **Example Request** `GET /api/orders_with_stats/?page=1&page_size=100` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-3) Example Response Copy { "orders": [\ {\ "id": "550e8400-e29b-41d4-a716-446655440000",\ "pair": "BTC/USDT",\ "side": "buy",\ "status": "COMPLETE",\ "time_start": "2024-01-15T10:00:00Z",\ "duration": 3600,\ "target_token": "BTC",\ "order_qty": "1.00000000",\ "remaining_qty": "0.00000000",\ "executed_qty": "1.00000000",\ "executed_notional": "45000.00",\ "exchange_names": ["binance", "coinbase"],\ "account_names": ["main_account"],\ "schedule_discretion": "0.10000000",\ "engine_passiveness": "0.05000000",\ "alpha_tilt": "0.00000000",\ "strategy": "TWAP",\ "trajectory": "TWAP",\ "strategy_params": {},\ "participation_rate_target_percent": null,\ "market_type": "SPOT",\ "parent_order_id": null,\ "stats": {\ "order_id": "550e8400-e29b-41d4-a716-446655440000",\ "stat_id": "123e4567-e89b-12d3-a456-426614174000",\ "interval_volume": "1000000.00000000",\ "vwap": "45000.00000000",\ "arrival_price": "44950.00000000",\ "departure_price": "45050.00000000"\ },\ "fills": [\ {\ "placement_id": "123e4567-e89b-12d3-a456-426614174001",\ "exchange": "binance",\ "role": "taker",\ "executed_price": "45000.00",\ "executed_qty": "0.50000000",\ "executed_notional": "22500.00",\ "fee": "22.50",\ "fill_time": "2024-01-15T10:30:00Z"\ }\ ]\ }\ ], "page_number": 1, "page_size": 100, "num_pages": 5, "order_count": 450 } **Response Codes** 200: OK 400: Bad Request 401: Unauthorized Copy { "200": { "description": "Orders with statistics retrieved successfully", "content": { "application/json": { "example": { "orders": [\ {\ "id": "550e8400-e29b-41d4-a716-446655440000",\ "pair": "BTC/USDT",\ "side": "buy",\ "status": "COMPLETE",\ "stats": {\ "vwap": "45000.00000000",\ "arrival_price": "44950.00000000",\ "departure_price": "45050.00000000"\ }\ }\ ], "page_number": 1, "page_size": 100, "num_pages": 5, "order_count": 450 } } } } } Occurs when: * The page\_size parameter is greater than 1000 * Invalid query parameters are provided Sample Error Message Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "error": "page_size cannot be greater than 1000" } } } } } Occurs when: * Invalid or missing authentication token * User is not authenticated Sample Error Message Copy { "401": { "description": "Unauthorized", "content": { "application/json": { "example": { "error": "Unauthorized" } } } } } **Notes** * Superuser Access: Superusers can retrieve orders for all users; regular users only see their own orders. * Pagination: Use `page` and `page_size` to control result set size. * Statistics: Each order includes a `stats` object with VWAP, arrival price, departure price, and interval volume. * Fills: Each order includes detailed fill data if available. **Related Endpoints** * [`GET /api/orders/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-all-orders) - Get orders (basic info, no stats) * [`GET /api/order/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-order-details) \- Get single order details [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-order-details) Get order details ------------------------------------------------------------------------------------------------------------------------ `GET` `/api/order/{id}` Get detailed single order info along with executed fills * **Purpose**: Get detailed information about a single order * **Scope**: One specific order * **Data**: Comprehensive order details including: * Full order configuration * All placements and fills * Execution analytics * Market data * Performance metrics * Audit trail * **Use Case:** Order detail page, deep analysis of one order * **Performance:** Heavy computation for single order #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#path-parameters-1) Path Parameters Name Type Description `id`\* string UUID of the order (Required) #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters-2) Query Parameters Name Type Description `include_fills` boolean Whether to include fill data in response. (Default: false, Optional) **Headers** `Authorization: Token ` **Example Request** `GET /api/order/6debb950-614a-4366-b73b-7d7574fd9e15?include_fills=true` **Example Response** Copy { "id": "6debb950-614a-4366-b73b-7d7574fd9e15", "custom_order_id": "my_custom_order_123", "parent_order_id": null, "notes": "Buy BTC over 1 hour using TWAP strategy", "pair": "BTC-USD", "side": "buy", "exchanges": ["binance", "coinbase_pro"], "buy_token": "BTC", "buy_token_amount": "0.5", "sell_token": "USD", "sell_token_amount": "22500.00", "executed_qty": "0.25", "executed_buy_qty": "0.25", "average_executed_price": "45000.00", "executed_notional": "11250.00", "target_order_qty": "0.5", "target_remaining_qty": "0.25", "target_token": "BTC", "target_executed_qty": "0.25", "pct_filled": "50.00", "total_fee": "5.63", "strategy": "TWAP", "super_strategy": "Impact Minimization", "duration": 3600, "accounts": ["account_id_1", "account_id_2"], "account_names": ["binance_main", "coinbase_pro"], "engine_passiveness": "0.02", "schedule_discretion": "0.06", "pov_limit": null, "pov_target": null, "alpha_tilt": "0.00", "strategy_params": { "max_clip_size": "1000.00" }, "user": "user_123", "status": "ACTIVE", "active": true, "is_simple": false, "failure_reason": null, "limit_price": null, "is_reverse_limit_price": false, "time_start": "2023-12-01T10:00:00Z", "time_end": "2023-12-01T11:00:00Z", "created_at": "2023-12-01T09:59:30Z", "updated_at": "2023-12-01T10:30:00Z", "fills": [\ {\ "placement_id": "placement_123",\ "exchange": "binance",\ "role": "MAKE",\ "executed_price": "45000.00",\ "executed_qty": "0.125",\ "executed_notional": "5625.00",\ "fee": "2.81",\ "fill_time": "2023-12-01T10:15:00Z"\ },\ {\ "placement_id": "placement_124",\ "exchange": "coinbase_pro",\ "role": "TAKE",\ "executed_price": "45000.00",\ "executed_qty": "0.125",\ "executed_notional": "5625.00",\ "fee": "2.82",\ "fill_time": "2023-12-01T10:30:00Z"\ }\ ] } 200: OK 500: Internal Server Error 404: Not Found Order 401: Unauthorized Not authorized Copy { "id": "6debb950-614a-4366-b73b-7d7574fd9e15", "buy_token": "ETH", "sell_token": "USD", "side": "buy", "pair": "ETH-USDT", "sell_token_amount": 50000.0, "strategy": "6fe4ba3e-c578-45bd-824c-c523bf3c56de", "super_strategy": "d960c28f-a6bd-4f55-9c5c-fc561cc95640", "super_strategy_name": "Impact Minimization", "strategy_params": { "passive_only": true }, "limit_price": 1.0, "start_datetime": "2023-08-08T23:54:06.300319Z", "time_end": "2023-08-08T23:59:06.300319", "duration": 300, "accounts": ["09d3144b-9359-4ec3-8772-2dd1bfb86652"], "account_names": ["Binance_1"], "user": "2", "status": "ACTIVE", "engine_passiveness": "0.2", "schedule_discretion": "0.08", "failure_reason": "", "executed_qty": 1.2, "executed_price": 1846.5, "executed_notional": 2215.8, "notes": "", "custom_order_id": "", "updated_leverage": 10, "placements": [\ {\ 'id': '6abb7966-9641-4c78-8bd6-f4c9bd075399',\ 'created_at': '2023-08-01T08:25:31.704064Z',\ 'order': "6debb950-614a-4366-b73b-7d7574fd9e15",\ 'placement_type': 'MAKE',\ 'price': '28931.15000000000000000000',\ 'qty': '0.00000100000000000000',\ 'exchange': 'Binance',\ 'fills': [\ {\ "id": "44c82c49-1e9d-43f8-98cd-318a2c01a317",\ "created_at": '2023-08-01T08:25:31.704064Z',\ "fill_time": '2023-08-01T08:25:31.704064Z',\ "role": "MAKE",\ "external_id": "21949858",\ "executed_price": 1658.40,\ "executed_qty": 3.5,\ "exchange": "Binance",\ "fee": 0.0443\ },\ //...\ ],\ 'passiveness': '0.0078071000',\ 'filled': False,\ 'external_id': None,\ 'status': 'FAILED',\ 'sub_status': 'MIN_AMOUNT',\ 'is_cross': False,\ 'is_simple': False,\ 'contract_value': '1.00000000000000000000'\ },\ //...\ ], } Copy { "message": "Something went wrong" } Copy No order found with given ID! Copy { 'detail': 'Invalid token.'// Response } **Response Fields** Field Type Description `id` string (UUID) Unique identifier for the order `parent_order_id` string (UUID) \\ null Note: ID of the parent multi-order, if applicable `pair` string Trading pair symbol `side` string Order side: buy or sell `status` string Current order status (e.g., ACTIVE, COMPLETED, CANCELED) `start_datetime` string (ISO 8601) Order start time in UTC `duration` integer Order duration in seconds `target_token` string Token being targeted for the order `target_order_qty` decimal Total order quantity `remaining_qty` decimal Remaining quantity to be executed `executed_qty` decimal Quantity already executed `executed_notional` decimal Total notional value of executed quantity `exchange_names` array\[string\] List of exchanges where the order is being executed `account_names` array\[string\] List of account names used for the order `schedule_discretion` decimal Schedule discretion parameter `engine_passiveness` decimal Engine passiveness parameter `alpha_tilt` decimal Alpha tilt parameter `strategy` string \\ null Note: Super strategy name, if applicable `trajectory` string Trading strategy/trajectory name `strategy_params` object Strategy-specific parameters `participation_rate_target_percent` decimal \\ null Note: Participation rate target as percentage `market_type` string Market type (e.g., spot, perp, option) `failure_reason` string Reason for order failure, if applicable `limit_price` string Limit price for the order `placement_live_qty` decimal Quantity currently in live placements [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-order-details-by-custom-id) Get order details by custom ID -------------------------------------------------------------------------------------------------------------------------------------------------- To retrieve orders by custom order ID, use the main orders endpoint with the `custom_order_ids` query parameter: `GET /api/orders/?custom_order_ids={custom_order_id}` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters-3) Query Parameters Name Type Required Description `custom_order_ids`\* string Yes Comma-separated list of custom order IDs to filter by **Optional Filters (same as** [**Get All Orders**](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-all-orders) **):** `account_names`, `after`, `before`, `page`, `page_size`, `statuses`. **Headers** `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-3) Example Request `GET /api/orders/?custom_order_ids=ETH_ACC_001` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-4) Example Response Copy { "orders": [\ {\ "id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "custom_order_id": "ETH_ACC_001",\ "parent_order_id": null,\ "notes": "ETH accumulation order",\ "pair": "ETH-USDT",\ "side": "buy",\ "exchanges": ["Binance"],\ "buy_token": "ETH",\ "buy_token_amount": 10.5,\ "sell_token": "USDT",\ "sell_token_amount": 17330.25,\ "executed_qty": 0,\ "executed_buy_qty": 0,\ "average_executed_price": null,\ "executed_notional": 0,\ "target_order_qty": 17330.25,\ "target_remaining_qty": 17330.25,\ "target_token": "USDT",\ "target_executed_qty": 0,\ "pct_filled": 0,\ "total_fee": 0,\ "strategy": "TWAP",\ "super_strategy": null,\ "duration": 3600,\ "accounts": ["09d3144b-9359-4ec3-8772-2dd1bfb86652"],\ "account_names": ["my_binance_account"],\ "engine_passiveness": 0.2,\ "schedule_discretion": 0.08,\ "pov_limit": 0.05,\ "pov_target": 0.1,\ "alpha_tilt": 0.1,\ "strategy_params": {\ "passive_only": true\ },\ "user": "2",\ "status": "ACTIVE",\ "active": true,\ "is_simple": false,\ "time_start": "2023-08-08T23:54:06.300319Z",\ "time_end": "2023-08-09T00:54:06.300319Z",\ "limit_price": "1650.50",\ "is_reverse_limit_price": false,\ "placements": [],\ "fills": []\ }\ ], "page_number": 1, "page_size": 100, "num_pages": 1, "order_count": 1 } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-3) Response Codes 200: OK 400: Bad Request 401: Unauthorized 500: Internal Server Error Copy [\ {\ "id": "6debb950-614a-4366-b73b-7d7574fd9e15",\ "buy_token": "ETH",\ "sell_token": "USD",\ "side": "buy",\ "pair": "ETH-USDT",\ "sell_token_amount": 50000.0,\ "strategy": "6fe4ba3e-c578-45bd-824c-c523bf3c56de",\ "super_strategy": "d960c28f-a6bd-4f55-9c5c-fc561cc95640",\ "super_strategy_name": "Impact Minimization",\ "strategy_params": {\ "passive_only": true\ },\ "limit_price": 1.0,\ "start_datetime": "2023-08-08T23:54:06.300319Z",\ "time_end": "2023-08-08T23:59:06.300319",\ "duration": 300,\ "accounts": ["09d3144b-9359-4ec3-8772-2dd1bfb86652"],\ "account_names": ["Binance_1"],\ "user": "2",\ "status": "ACTIVE",\ "engine_passiveness": "0.2",\ "schedule_discretion": "0.08",\ "failure_reason": "",\ "executed_qty": 1.2,\ "executed_price": 1846.5,\ "executed_notional": 2215.8,\ "notes": "",\ "custom_order_id": "my_custom_id",\ "updated_leverage": 10,\ "placements": [\ {\ 'id': '6abb7966-9641-4c78-8bd6-f4c9bd075399',\ 'created_at': '2023-08-01T08:25:31.704064Z',\ 'order': "6debb950-614a-4366-b73b-7d7574fd9e15",\ 'placement_type': 'MAKE',\ 'price': '28931.15000000000000000000',\ 'qty': '0.00000100000000000000',\ 'exchange': 'Binance',\ 'fills': [\ {\ "id": "44c82c49-1e9d-43f8-98cd-318a2c01a317",\ "created_at": '2023-08-01T08:25:31.704064Z',\ "fill_time": '2023-08-01T08:25:31.704064Z',\ "role": "MAKE",\ "external_id": "21949858",\ "executed_price": 1658.40,\ "executed_qty": 3.5,\ "exchange": "Binance",\ "fee": 0.0443\ },\ //...\ ],\ 'passiveness': '0.0078071000',\ 'filled': False,\ 'external_id': None,\ 'status': 'FAILED',\ 'sub_status': 'MIN_AMOUNT',\ 'is_cross': False,\ 'is_simple': False,\ 'contract_value': '1.00000000000000000000'\ },\ //...\ ],\ },\ {\ //\ },\ ] Occurs when: * Missing custom\_order\_ids parameter * Invalid format for custom\_order\_ids parameter * Invalid account names in account\_names filter * Invalid date format in after or before parameters Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "Missing custom_order_ids",\ "response": {\ "error": "custom_order_ids parameter is required"\ }\ },\ {\ "scenario": "Invalid account names",\ "response": {\ "error": "Account display name 'invalid_account' not found for user"\ }\ },\ {\ "scenario": "Invalid date format",\ "response": {\ "message": "Invalid after date format"\ }\ }\ ] } } Occurs when: * Missing or invalid API token * Token has expired * Insufficient permissions to access the specified accounts Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "Missing API token",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid API token",\ "response": {\ "detail": "Invalid token header. No credentials provided."\ }\ },\ {\ "scenario": "Expired token",\ "response": {\ "detail": "Token has expired."\ }\ }\ ] } } Occurs when: * Database connection issues * External service failures * Unexpected system errors Sample Error Messages Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Database connection error",\ "response": {\ "error": "Database connection failed"\ }\ },\ {\ "scenario": "External service failure",\ "response": {\ "error": "Price feed service unavailable"\ }\ },\ {\ "scenario": "Unexpected system error",\ "response": {\ "error": "Something went wrong"\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#get-order-errors) Get order errors ---------------------------------------------------------------------------------------------------------------------- `GET` `/api/order_errors/` Retrieve order errors and messages for orders. This endpoint returns error messages, warnings, and informational messages associated with orders, organized by order ID. **The response includes:** 1. **Order Errors**: System-generated errors, warnings, and info messages 2. **Message Types**: ERROR, WARN, INFO classifications 3. **Timestamps:** When each message was created 4. **Order Association**: Messages grouped by order ID **Notes** * There are non-error order messages ex with type message\_type "INFO" or "WARNING" * There is currently no dedicated `/api/order_messages/{id}` endpoint. Order messages are included as part of the response in endpoints such as `/api/order/{id}` and `/api/multi_order/{id}` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters-4) Query Parameters Name Type Description `order_ids` string Comma-separated list of order UUIDs to filter by (Optional) **Headers** `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-4) Example Request `GET /api/order_errors/?order_ids=6debb950-614a-4366-b73b-7d7574fd9e15,7fecb061-725b-5477-c84c-8e8685ge0f26` Example Response Copy { "6debb950-614a-4366-b73b-7d7574fd9e15": [\ {\ "message": "Insufficient balance for order execution",\ "message_type": "ERROR",\ "created_at": "2023-12-01T10:30:00Z"\ },\ {\ "message": "Generating execution schedule",\ "message_type": "INFO",\ "created_at": "2023-12-01T10:25:00Z"\ }\ ], "7fecb061-725b-5477-c84c-8e8685ge0f26": [\ {\ "message": "Order execution completed",\ "message_type": "INFO",\ "created_at": "2023-12-01T11:00:00Z"\ }\ ] } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-4) Response Codes 200: OK 400: Bad Request 401: Unauthorized 404: Not Found Copy { "550e8400-e29b-41d4-a716-446655440000": [\ {\ "message_type": "ERROR",\ "message": "Failed to place order on exchange: insufficient balance",\ "created_at": "2024-01-15T10:30:00Z"\ },\ {\ "message_type": "WARN",\ "message": "Order partially filled due to market conditions",\ "created_at": "2024-01-15T10:25:00Z"\ }\ ], "123e4567-e89b-12d3-a456-426614174000": [\ {\ "message_type": "INFO",\ "message": "Order successfully completed",\ "created_at": "2024-01-15T09:45:00Z"\ }\ ] } Occurs when: * No order ID provided in the URL path * Invalid UUID format for the order ID Sample Error Messages Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "error": "No order ID given!" } } } } } Occurs when: * The order does not belong to the authenticated user and the user is not a superuser Sample Error Message Copy { "401": { "description": "Unauthorized", "content": { "application/json": { "example": { "error": "Order 6debb950-614a-4366-b73b-7d7574fd9e15 does not belong to you" } } } } } Occurs when: * No order exists with the given ID Sample Error Message Copy { "404": { "description": "Order not found", "content": { "application/json": { "example": { "error": "Order 6debb950-614a-4366-b73b-7d7574fd9e15 not found" } } } } } Notes: * If no order\_ids parameter is provided, returns errors for all orders accessible to the user * Response is a dictionary where keys are order IDs and values are arrays of error messages * Messages are sorted by creation time (newest first) * Includes non-error messages with types "INFO" and "WARNING" in addition to "ERROR" [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#cancel-order) Cancel order -------------------------------------------------------------------------------------------------------------- `DELETE` `/api/order/{id}` Cancels the order and all active placements across venues. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#path-parameters-2) Path Parameters Name Type Description `id`\* string UUID of the order **What Happens When You Cancel an Order** When you cancel an order, the following actions are performed: 1. **Cancel Active Placements:** All active placements across all venues are canceled 2. **Update Order Status:** Order status is changed to "CANCELED" 3. **Cancel Sibling Orders:** If this is a child order in a multi-order, sibling orders are also canceled 4. **Trigger Chain Progression:** If this is part of a chained order, chain progression is triggered 5. **Cleanup Tasks:** Order cleanup tasks are queued for execution 6. **Analytics: On-complete analytics are scheduled to run** 7. **Broadcast Updates:** Order cancellation event is broadcast to connected clients 8. **Notifications:** Order event notifications are sent 9. **Points & Achievements:** Points and achievements are applied based on order performance **Headers** `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-5) Example Request **Example Request** `DELETE /api/order/6debb950-614a-4366-b73b-7d7574fd9e15` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-5) Example Response Copy "Order canceled!" Note: The response is a simple string message. If the order was already canceled, the response would be: Copy "Order already canceled!" #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-5) Response Codes 200: OK 400: Bad Request 401: Unauthorized 404: Not Found 422: Unprocessable Entity 500: Internal Server Error Copy { "200": { "description": "OK", "examples": [\ {\ "scenario": "Order successfully canceled",\ "response": "Order canceled!"\ },\ {\ "scenario": "Order already canceled",\ "response": "Order already canceled!"\ }\ ] } } Occurs when: * No order ID provided in the URL path * Invalid UUID format for the order ID * Order ID is malformed or contains invalid characters Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "No order ID provided",\ "response": "No order ID given!"\ },\ {\ "scenario": "Invalid UUID format",\ "response": "Invalid order ID format"\ }\ ] } } Occurs when: * Missing or invalid API token * Token has expired * User does not have permission to access the specified order Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "Missing API token",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid API token",\ "response": {\ "detail": "Invalid token header. No credentials provided."\ }\ },\ {\ "scenario": "Expired token",\ "response": {\ "detail": "Token has expired."\ }\ },\ {\ "scenario": "Order access denied",\ "response": "Unauthorized"\ }\ ] } } Occurs when: * Order with the specified ID does not exist * Order has been deleted or is not accessible * Order ID is valid but the order is not found in the database Sample Error Messages Copy { "404": { "description": "Not Found", "examples": [\ {\ "scenario": "Order does not exist",\ "response": "No order found with given ID!"\ },\ {\ "scenario": "Order not accessible",\ "response": "Order not found or access denied"\ }\ ] } } Occurs when: * Order is in a state that prevents cancellation * Failed to cancel active placements on exchanges * Exchange-specific cancellation failures * Database transaction failures during cancellation * Network connectivity issues with exchanges * Order is part of a complex workflow that cannot be interrupted Sample Error Messages Copy { "422": { "description": "Unprocessable Entity", "examples": [\ {\ "scenario": "Failed to cancel placements",\ "response": {\ "error": "Failed to cancel all placements"\ }\ },\ {\ "scenario": "Exchange cancellation failure",\ "response": {\ "error": "Unexpected cancel failure"\ }\ },\ {\ "scenario": "Database transaction failure",\ "response": {\ "error": "Failed to commit cancellation changes"\ }\ },\ {\ "scenario": "Network connectivity issue",\ "response": {\ "error": "Connection timeout while canceling placements"\ }\ },\ {\ "scenario": "Order state prevents cancellation",\ "response": {\ "error": "Order is in a state that cannot be canceled"\ }\ }\ ] } } Occurs when: * Database connection issues * External service failures * Unexpected system errors during cancellation process * Worker queue failures * Analytics service failures Example Responses Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Database connection error",\ "response": {\ "error": "Database connection failed"\ }\ },\ {\ "scenario": "External service failure",\ "response": {\ "error": "Exchange API service unavailable"\ }\ },\ {\ "scenario": "Worker queue failure",\ "response": {\ "error": "Failed to queue cleanup tasks"\ }\ },\ {\ "scenario": "Unexpected system error",\ "response": {\ "error": "Something went wrong"\ }\ }\ ] } } **Notes** * **Idempotent:** Canceling an already canceled order will return a success message * **Sibling Orders:** Canceling a child order in a multi-order will also cancel sibling orders * **Chained Orders:** Canceling an order in a chain may trigger progression to the next order * **Placement Cancellation:** All active placements, including OTC placements, are canceled * **Cleanup:** Order cleanup happens asynchronously and includes reconciliation of active placements * **Analytics:** Order analytics are generated 3 minutes after cancellation to ensure all data is collected [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#pause-order) Pause order ------------------------------------------------------------------------------------------------------------ `POST` `/api/pause_order/` Pause an active order, canceling all active placements and stopping execution until resumed. The order will maintain its current state and can be resumed later. **What Happens When You Pause an Order** When you pause an order, the following actions are performed: 1. **Cancel Active Placements:** All active placements across all venues are canceled, including OTC placements 2. **Update Order Status:** Order status is changed to "PAUSED" 3. **Set Pause Timestamp:** The paused\_at timestamp is recorded 4. **Clear Resume Condition:** For manual pauses, any resume condition is cleared to prevent automatic resumption 5. **Clear Future Schedule Points:** Future schedule points are removed to prevent confusion during resumption 6. **Pause Market Data Collection:** Market data collection for the order is paused 7. **Broadcast Updates:** Order paused event is broadcast to connected clients 8. **Send Notifications:** Order pause event notifications are sent #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#path-parameters-3) Path Parameters Name Type Description order\_id string UUID of the order **Headers** * `Authorization: Token ` * `Content-Type: application/json` **Example Request** `POST /api/pause_order/` **Body:** Copy { "order_id": "6debb950-614a-4366-b73b-7d7574fd9e15" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-6) Example Response Copy { "message": "Successfully paused order." } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-6) Response Codes 202: Accepted 400: Bad Request 401: Unauthorized 404: Order Not Found 422: Unprocessable Entity 500 Occurs when: * Order is successfully paused * All active placements are canceled * Order status is updated to "PAUSED" Copy { "202": { "description": "Accepted", "examples": [\ {\ "scenario": "Order successfully paused",\ "response": {\ "message": "Successfully paused order."\ }\ }\ ] } } Occurs when: * Missing `order_id` in request body * Invalid UUID format for the order ID * Order ID is malformed or contains invalid characters Sample Error Messages Copy { "400": { "description": "Bad Request", "examples": [\ {\ "scenario": "Missing order_id",\ "response": {\ "error": "Missing required field: order_id"\ }\ },\ {\ "scenario": "Invalid UUID format",\ "response": {\ "error": "Invalid order ID format"\ }\ }\ ] } } Occurs when: * Missing or invalid API token * Token has expired * User does not have permission to access the specified order Sample Error Messages Copy { "401": { "description": "Unauthorized", "examples": [\ {\ "scenario": "Missing API token",\ "response": {\ "detail": "Authentication credentials were not provided."\ }\ },\ {\ "scenario": "Invalid API token",\ "response": {\ "detail": "Invalid token header. No credentials provided."\ }\ },\ {\ "scenario": "Expired token",\ "response": {\ "detail": "Token has expired."\ }\ }\ ] } } Occurs when: * No order exists with the given ID Sample Error Message Copy { "error": "No order found with given ID!" } Occurs when: * Order is not in an active/running state * Order is already paused * Order is completed, canceled, or in another terminal state * Failed to cancel active placements on exchanges * Exchange-specific cancellation failures * Database transaction failures during pause operation * Network connectivity issues with exchanges * Order is part of a complex workflow that cannot be paused Sample Error Messages Copy { "422": { "description": "Unprocessable Entity", "examples": [\ {\ "scenario": "Order not running",\ "response": {\ "error": "Order is not running."\ }\ },\ {\ "scenario": "Order already paused",\ "response": {\ "error": "Order is not running."\ }\ },\ {\ "scenario": "Order completed",\ "response": {\ "error": "Order is not running."\ }\ },\ {\ "scenario": "Failed to cancel placements",\ "response": {\ "error": "Failed to cancel all placements"\ }\ },\ {\ "scenario": "Exchange cancellation failure",\ "response": {\ "error": "Unexpected cancel failure"\ }\ },\ {\ "scenario": "Database transaction failure",\ "response": {\ "error": "Failed to commit pause order changes: Database connection failed"\ }\ },\ {\ "scenario": "Network connectivity issue",\ "response": {\ "error": "Failed to commit pause order changes: Connection timeout"\ }\ },\ {\ "scenario": "Order not found",\ "response": {\ "error": "Order not found."\ }\ }\ ] } } Occurs when: * Database connection issues * External service failures * Unexpected system errors during pause process * Market data service failures * Notification service failures Sample Error Messages Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Database connection error",\ "response": {\ "error": "Database connection failed"\ }\ },\ {\ "scenario": "External service failure",\ "response": {\ "error": "Market data service unavailable"\ }\ },\ {\ "scenario": "Notification service failure",\ "response": {\ "error": "Failed to send pause notification"\ }\ },\ {\ "scenario": "Unexpected system error",\ "response": {\ "error": "Something went wrong"\ }\ }\ ] } } **Notes** * **Order State Requirement:** Only orders with status "ACTIVE" can be paused * **Idempotent**: Pausing an already paused order will return an error * **Placement** **Cancellation**: All active placements, including OTC placements, are canceled during pause * **Schedule Preservation:** Future schedule points are cleared to prevent confusion during resumption * **Manual vs System Pause:** Manual pauses clear resume conditions to prevent automatic resumption * **Resume Condition:** If a resume condition is provided, it will be set for automatic resumption * **Market Data:** Market data collection is paused to conserve resources * **Notifications:** Pause notifications are sent to inform users of the order state change **Related Endpoints** * [Resume Order:](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-order) `POST /api/resume_order/` \- Resume a paused order * Pause All Orders: `POST /api/pause_all_orders/`\- Pause all active orders for the user * [Pause Multi Order:](https://docs.tread.fi/interacting-with-the-api/api-reference/multi-order#pause-multi-order) `POST /api/pause_multi_order/` - Pause a multi-order and all its child orders * Pause Chained Order: `POST /api/pause_chained_order/` \- Pause a chained order [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-order) Resume order -------------------------------------------------------------------------------------------------------------- `POST` `/api/resume_order/` Resume a previously paused order. This operation will restart order execution, update the order status to "ACTIVE", and trigger the execution workflow. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#path-parameters-4) Path Parameters Name Type Description order\_id string UUID of the order **Headers** * `Authorization: Token ` * `Content-Type: application/json` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-6) Example Request `POST /api/resume_order/` **Body**: Copy { "order_id": "6debb950-614a-4366-b73b-7d7574fd9e15" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-7) Example Response Copy { "message": "Successfully resumed order." } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-7) Response Codes 202: Accepted 400: Bad Request 404: Not Found 422: Resume operation failed 500 Copy { "202": { "description": "Order successfully resumed", "content": { "application/json": { "example": { "message": "Successfully resumed order." } } } } } Occurs when: * The `order_id` field is missing from the request body * The provided `order_id` is not a valid UUID Sample Error Message Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "error": "Missing required field: order_id" } } } } } Occurs when: * No order exists with the given `order_id` Sample Error Message Copy { "404": { "description": "Order not found", "content": { "application/json": { "example": { "error": "Order not found." } } } } } Occurs when: * The order is not in a paused state (cannot be resumed) * There is a failure amending the order schedule * There is a database or internal error during the resume process Sample Error Message Copy { "422": { "description": "Resume operation failed", "content": { "application/json": { "example": { "error": "Order is not paused." } } } } } { "error": "Internal server error" } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#amend-order) Amend order ------------------------------------------------------------------------------------------------------------ `POST` `/api/amend_order/` Amend an existing order by updating specific fields. This operation allows you to modify order parameters such as quantity, duration, limit price, and POV target while the order is still active. **Request Body** Name Type Required Description `order_id`\* string (UUID) Yes UUID of the order to amend `changes`\* object Yes Object containing the fields to update and their new values **Updatable Fields** Field Type Description Constraints `base_asset_qty` number Base asset quantity (cannot be used with quote\_asset\_qty) Must be positive `quote_asset_qty` number Quote asset quantity (cannot be used with base\_asset\_qty) Must be positive `duration` integer Order duration in seconds Must be at least 5% more than elapsed time `pov_target` number Percentage of volume target (0-1) Must be between 0 and 1 `limit_price` string Limit price for the order Must be valid price expression **Headers** * `Authorization: Token ` * `Content-Type: application/json` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-7) Example Request `POST /api/amend_order/` **Body**: Copy { "order_id": "6debb950-614a-4366-b73b-7d7574fd9e15", "changes": { "duration": 900, "limit_price": "51000" } } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-8) Example Response Copy { "message": "Successfully amended order." } 202: Accepted 400: Bad Request 403: Forbidden 404: Not Found 422: Unprocessable Entity 500: Internal Server Error Something went wrong, contact support Copy { "202": { "description": "Order successfully amended", "content": { "application/json": { "example": { "message": "Successfully amended order." } } } } } } } } Occurs when: * The `order_id` or changes field is missing from the request body * The changes field is not an object * Both `base_asset_qty` and `quote_asset_qty` are provided * The provided values are not valid (e.g., non-numeric quantities) Sample Error Message Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "error": "Missing required field(s): order_id, changes" } } } } } Occurs when: * A superuser attempts to amend an order in a retail environment Sample Error Message Copy { "403": { "description": "Superuser on retail cannot place orders", "content": { "application/json": { "example": { "error": "Superusers on retail cannot place orders" } } } } } Occurs when: * No order exists with the given `order_id` Sample Error Message Copy { "404": { "description": "Order not found", "content": { "application/json": { "example": { "error": "Order 6debb950-614a-4366-b73b-7d7574fd9e15 not found" } } } } } Occurs when: * The order is too close to completion (less than 15 seconds remaining) * The order is a child order (unless in dev mode) * Both `base_asset_qty` and `quote_asset_qty` are provided * The new `sell_token_amount` is less than 5% above executed quantity * The new `duration` is less than 5% above elapsed time * The new `limit_price` is invalid * There is a failure updating the order or schedule Sample Error Message Copy { "422": { "description": "Amendment failed", "content": { "application/json": { "example": { "error": "Cannot update both base_asset_qty and quote_asset_qty" } } } } } Occurs when: * Database connection issues * Unexpected server errors during order retrieval Sample Error Message Copy { "500": { "description": "Internal Server Error", "examples": [\ {\ "scenario": "Unexpected server error",\ "response": {\ "errors": ["An unexpected error occurred. Please try again later."]\ }\ }\ ] } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#cancel-all-orders) Cancel all orders ------------------------------------------------------------------------------------------------------------------------ `POST` `/api/cancel_all_orders/` Cancel all active orders for the authenticated user. This operation will cancel all orders that are not in a terminated state (excluding COMPLETED, CANCELED, and other final statuses). By default, paused orders are also excluded unless specified otherwise. **Request Body** Name Type Description `account_names` Comma-separated strings **Optional**. List of account names. You pick this name when creating an account under account management (e.g., binance\_main,coinbase\_pro) If not provided, all user accounts are considered. #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#query-parameters-5) Query Parameters Name Type Description `exclude_paused` boolean **Optional.** Whether to exclude paused orders from cancellations. (Default: **true**) **Headers** `Authorization: Token ` `Content-Type: application/json (only when sending a body)` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-8) Example Request `POST /api/cancel_all_orders/?exclude_paused=true` Copy { "account_names": "binance_main,coinbase_pro" } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-9) Example Response Copy { "message": "Successfully canceled all orders." } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-8) Response Codes 200 OK 400: Bad Request Invalid Request 422: Unprocessable Entity Copy { "200": { "description": "Orders successfully canceled or no orders to cancel", "content": { "application/json": { "example": { "message": "Successfully canceled all orders." } } } } } Occurs when: * The `account_names` field is provided but is not a comma-separated string * There are errors fetching the specified accounts Sample Error Message Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "message": "No active orders to cancel. Failed to fetch accounts: ['Account not found: bad_account']" } } } } } Occurs when: * Some orders could not be canceled due to internal errors * There were failures canceling placements or updating order status * There were errors fetching the specified accounts and some orders failed to cancel Sample Error Message Copy { "422": { "description": "Cancellation failed for some or all orders", "content": { "application/json": { "example": { "error": "Canceled 2 orders with 1 failures: ['Failed to cancel order 12345'] Failed to fetch accounts: ['Account not found: bad_account']" } } } } } [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#pause-all-orders) Pause all orders ---------------------------------------------------------------------------------------------------------------------- `POST` `/api/pause_all_orders/` Pause all active orders for the authenticated user. This operation will pause all orders with status "ACTIVE" and cancel their active placements. The orders will maintain their current state and can be resumed later. What Happens When You Pause All OrdersWhen you pause all orders, the following actions are performed for each active order: 1. Cancel Active Placements: All active placements across all venues are canceled, including OTC placements 2. Update Order Status: Order status is changed from "ACTIVE" to "PAUSED" 3. Record Pause Time: The paused\_at timestamp is recorded 4. Clear Resume Condition: Any resume conditions are cleared to prevent automatic resumption 5. Clear Future Schedule Points: Future schedule points are removed to prevent confusion 6. Pause Market Data Collection: Market data collection for the order is paused 7. Send Notifications: Order pause notifications are sent **Request Body** This endpoint does not require any request body parameters. **Headers** `Authorization: Token ` **Example Request** `POST /api/pause_all_orders/` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-10) Example Response Copy { "message": "Successfully paused all orders." } **Response Codes** 200: OK 400: Bad Request 401: Unauthorized 422: Unprocessable Entity Copy { "200": { "description": "All orders paused successfully", "content": { "application/json": { "example": { "message": "Successfully paused all orders." } } } } } Occurs when: * No active orders to pause, or invalid request parameters (e.g., account not found) Sample Error Message Copy { "400": { "description": "Invalid request parameters", "content": { "application/json": { "example": { "message": "No active orders to cancel. Failed to fetch accounts: ['Account not found: bad_account']" } } } } } Occurs when: * Invalid or missing authentication token * User is not authenticated Sample Error Message Copy { "401": { "description": "Unauthorized", "content": { "application/json": { "example": { "error": "Unauthorized" } } } } } Occurs when: * Some orders failed to pause due to system errors * Orders are in an invalid state for pausing Sample Error Message Copy { "422": { "description": "Unprocessable entity", "content": { "application/json": { "example": { "error": "Paused 5 orders with 2 failures: ['order-id-1', 'order-id-2']" } } } } } **Notes** * **Superuser Access:** Superusers can pause all orders across all users * **Regular Users:** Regular users can only pause their own active orders * **Partial Failures:** If some orders fail to pause, the response will indicate which orders failed * **Order State:** Paused orders maintain their current execution state and can be resumed later * **No Request Body:** This endpoint does not require any request parameters **Related Endpoints** * [`POST /api/resume_all_orders/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-all-orders) \- Resume all paused orders * [`POST /api/pause_order/`](https://docs.tread.fi/order-management/manage-order/pause-order) \- Pause a single order * [`POST /api/resume_order/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-order) \- Resume a single order [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-all-orders) Resume all orders ------------------------------------------------------------------------------------------------------------------------ `POST` `/api/resume_all_orders/` Resumes all PAUSED single-leg orders for the authenticated user and sets them back to ACTIVE.. This operation will resume all orders with status "PAUSED" and restart their execution. Orders will transition back to "ACTIVE" and execution will continue from where they left off. **What Happens When You Resume All Orders** When you resume all orders, the following actions are performed for each paused order: 1. **Update Order Status:** Order status is changed from "PAUSED" to "ACTIVE" 2. **Resume Execution:** Order execution is restarted from the paused state 3. **Resume Market Data Collection:** Market data collection for the order is resumed 4. **Send Notifications:** Order resume notifications are sent **Request Body** This endpoint does not require any request body parameters. **Headers** `Authorization: Token ` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-request-9) Example Request `POST /api/resume_all_orders/` #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#example-response-11) Example Response Copy { "message": "Successfully resumed all orders." } #### [](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#response-codes-9) Response Codes 200: OK 400: Bad Request 401: Unauthorized Copy { "200": { "description": "All orders resumed successfully", "content": { "application/json": { "example": { "message": "Successfully resumed all orders." } } } } } Occurs when: * No paused orders to resume Copy { "400": { "description": "No paused orders to resume", "content": { "application/json": { "example": { "message": "No paused orders to resume." } } } } } Occurs when: * Invalid or missing authentication token * User is not authenticated Sample Error Message Copy { "401": { "description": "Unauthorized", "content": { "application/json": { "example": { "error": "Unauthorized" } } } } } **Notes** * **Superuser Access**: Superusers can resume all paused orders across all users * **Regular Users:** Regular users can only resume their own paused orders * **No Request Body:** This endpoint does not require any request parameters **Related Endpoints** * [`POST /api/pause_all_orders/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#pause-all-orders) \- Pause all active orders * [`POST /api/pause_order/`](https://docs.tread.fi/order-management/manage-order/pause-order) \- Pause a single order * [`POST /api/resume_order/`](https://docs.tread.fi/interacting-with-the-api/api-reference/core-order-api#resume-order) - Resume a single order [PreviousAPI Reference](https://docs.tread.fi/interacting-with-the-api/api-reference) [NextSimple Orders (Market, Limit, IOC, Iceberg)](https://docs.tread.fi/interacting-with-the-api/api-reference/simple-orders-market-limit-ioc-iceberg) Last updated 2 months ago Was this helpful? --- # Email Protection | Cloudflare Please enable cookies. Email Protection ================ You are unable to access this email address docs.tread.fi --------------------------------------------------------- The website from which you got to this page is protected by Cloudflare. Email addresses on that page have been hidden in order to keep them from being accessed by malicious bots. **You must enable Javascript in your browser in order to decode the e-mail address**. If you have a website and are interested in protecting it in a similar way, you can [sign up for Cloudflare](https://www.cloudflare.com/sign-up?utm_source=email_protection) . * [How does Cloudflare protect email addresses on website from spammers?](https://developers.cloudflare.com/waf/tools/scrape-shield/email-address-obfuscation/) * [Can I sign up for Cloudflare?](https://developers.cloudflare.com/fundamentals/setup/account/create-account/) Cloudflare Ray ID: **9a6c2ecb9ac8c553** • Your IP: Click to reveal 54.237.218.47 • Performance & security by [Cloudflare](https://www.cloudflare.com/5xx-error-landing) --- # DiCy | tread.fi Documentation DiCy is a proprietary multi-party peer-to-peer crossing engine that crosses counterparties trading through TaaS. DiCy runs a periodic batched auction to cross child orders originating from TaaS. It considers multiparty trades and can optimize market access by looking for more liquid pairs to facilitate multiple orders. ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2Fcontent.gitbook.com%2Fcontent%2FzGueudbPNYpRWNpS3Ilo%2Fblobs%2F5a7psLMEjhiZFbVUNu7i%2FUntitled.png&width=768&dpr=4&quality=100&sign=5148568&sv=2) DiCy multiparty matching [](https://docs.tread.fi/dicy#internal-dicy) Internal DiCy --------------------------------------------------------------- When trading multiple orders within an entity, DiCy can help reduce market access by internally crossing counterparties. With reduced exchange access, DiCy provides savings on exchange fees, reduced market impact and alpha leakage. Enabling DiCy internally can optimize plant costs for clients with multiple trading strategies running in parallel or pod structured funds with multiple portfolios. [](https://docs.tread.fi/dicy#external-dicy) External DiCy --------------------------------------------------------------- In the future, instances of TaaS will securely and discreetly access a multi-party DiCy exchange to find verified institutional counterparties to reduce market access fees and impact. Was this helpful? --- # IS | tread.fi Documentation ![](https://docs.tread.fi/~gitbook/image?url=https%3A%2F%2F3498068627-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FzGueudbPNYpRWNpS3Ilo%252Fuploads%252FEjtMvikczGEWTWXAvctB%252Fimage.png%3Falt%3Dmedia%26token%3D579c87b9-e657-4b79-8d64-69ec98758c6a&width=768&dpr=4&quality=100&sign=611a172f&sv=2) Example of Implementation Shortfall The **IS (Implementation Shortfall) trajectory** is designed to **minimize the difference between the arrival price** (the price at order submission) **and the average execution price**. It dynamically **adjusts the execution schedule** to balance **market impact and timing risk**, making it particularly useful in **volatile or illiquid markets** where slippage is a concern. #### [](https://docs.tread.fi/trajectories/is#how-implementation-shortfall-works) **How Implementation Shortfall Works** * Traders set an **aggressive execution profile**, **front-loading** a larger portion of the order to reduce **timing risk**. * The engine **opportunistically places limit orders** to optimize costs but will **use market orders when necessary** to maintain execution speed. * The trajectory follows a **VWAP (Volume Weighted Average Price) approach** with [**Alpha Tilt**](https://docs.tread.fi/advanced-settings/alpha-tilt) **set to 1**, ensuring **faster initial execution** while balancing cost efficiency. #### [](https://docs.tread.fi/trajectories/is#when-to-use-implementation-shortfall) **When to Use Implementation Shortfall** * **Volatile Market Conditions** – Ideal for **reducing slippage** when price movements are unpredictable. * **Urgent Trades** – Best for scenarios where **immediate execution** is prioritized over cost. * **Illiquid Markets** – Helps traders **navigate limited liquidity** while minimizing timing risk. #### [](https://docs.tread.fi/trajectories/is#implementation-shortfall-limitations) **Implementation Shortfall Limitations** * **Higher Market Impact** – The **aggressive front-loading** increases the likelihood of influencing market prices. * **Potentially Higher Costs** – Frequent use of **market orders** may result in **higher taker fees**. * **Less Suitable for Passive Strategies** – Not ideal if the goal is to **minimize visibility** and maintain a **low-profile market presence**. This trajectory is best suited for traders who **need fast execution** in **volatile or illiquid markets**, ensuring **reduced slippage while managing execution costs**. Last updated 9 months ago Was this helpful? ---