# Welcome to IntentX

**IntentX** is a next-generation OTC derivatives exchange offering perpetual futures trading.

At the heart of IntentX is a combination of technological innovations that usher in the next generation of on-chain finance. The platform leverages **SYMMIO**, a zero-to-one breakthrough settlement layer that addresses critical challenges in delivering on-chain derivatives.&#x20;

Combined, these technologies allow IntentX to offer omnichain deployment, lower fees, deeper liquidity, enhanced capital efficiency, and improved scalability compared to current solutions.

IntentX is live now, with over 315 tradable perpetual pairs, each with deep liquidity.&#x20;

***

## Intent-Based Architecture

IntentX restructures on-chain trading with a **novel intent-based approach**. Instead of relying on traditional order books or virtual automated market maker (vAMM) models, where traders execute orders against committed capital, traders instead express their trading intentions for execution by external solvers.

This expression of intent to trade reshapes the dynamics of trading, allowing for more efficient, liquid, and scalable financial markets on-chain. The protocol stands as a bridge between **decentralized trading security and centralized exchange (CEX) liquidity**, marking a notable shift from conventional systems and addressing the current liquidity constraints in DeFi.

***

## Trading on IntentX

IntentX’s unique architecture enables the most competitive offering in the perpetuals futures trading space:

❖ **Trade Perpetual Futures** - Trade over 315 top crypto pairs with deep liquidity.

❖ **Leverage** - Utilize 60x+ leverage on perpetuals to amplify exposure or hedge risk.

❖ **Trader Incentives** - Take advantage of our "trade to earn" incentives for xINTX rewards.

❖ **Cross-Margin Accounts** - Efficiently manage a universal margin that combines all your balances and positions to optimize capital use.

❖ **Sub-account Support** - Manage multiple sub-accounts under the same wallet address. Allows users the flexibility to employ different trading strategies, segregate risks, and track performance across all accounts.

❖ **Self-Custody** - Non-custodial. Only you have control over your assets.

❖ **Permissionless and Trustless** - Permissionless access with no KYC. IntentX cannot cease, blacklist, or freeze your account or any of your active positions. Trade with the complete security of the blockchain.

❖ **Intuitive & Streamlined UX** - Industry-leading UX with 1 click trading, account abstraction, gas management, and integrated on/off-ramps to onboard the next generation of decentralized exchange (DeFi) users.

***

## IntentX Competitive Advantage

IntentX's uncompromising features and unique architecture create the most competitive trading experience on-chain, ultimately competing with centralized exchanges.

<div data-full-width="false"><figure><img src="/files/bQn8TZKF4t1iwIVSjSzt" alt=""><figcaption></figcaption></figure></div>

Compared with existing on-chain solutions, IntentX offers consistently high leverage, the widest pair offerings (each with deep liquidity), multi-chain deployment and the most competitive fees.

<figure><img src="/files/hysCst5FvMYK8IGFYqPt" alt=""><figcaption></figcaption></figure>

As compared to centralized exchanges, IntentX aims to "bridge" the gap by offering competitive products with familiar features and UX. This gives traders the best of a CEX offering, while allowing for all the security and decentralization of a DEX.

***

## Unique Value Proposition of IntentX

#### 🩸 **Deep Liquidity**

* **Key Feature:**
  * Bridges liquidity from CEXs to on-chain.
* **Benefits to Traders:**
  * Best price execution with minimal slippage.
  * Efficient price discovery.
  * CEX-like liquidity and execution, but with DEX security.

> **Note:** Our solver network acts as a "liquidity aggregator", which can source liquidity from multiple platforms, beyond just CEXs and DEXs.

#### ⚙️ **Capital Efficiency**

* **Key Feature:**
  * **JIT (Just-in-Time)** liquidity architecture eliminates up-front capital commitment by solvers to stream quotes.
* **Benefits to Traders and Solvers:**
  * Deep liquidity and wide asset pair availability (310+).
  * More freedom and efficiency for market makers; no need to commit capital across different books or liquidity pools.
* **Results:**
  * Roughly 100 times more capital efficient than existing vAMM derivatives exchanges based on OI/TVL.

#### 🔗 **No Fragmented Liquidity**

* **Key Feature:**
  * On-demand, JIT liquidity provisioning means no idle liquidity is required to execute trades.
* **Benefits to Chains and Platforms:**
  * Rapid multi-chain deployment and expansion without liquidity constraints.
  * Rapid scaling of OI availability.

> **Note:** Orderbooks face multi-chain deployment challenges due to technical constraints. vAMMs cannot fork their liquidity pool. This makes IntentX uniquely positioned for multi-chain deployment.

#### 💰 **Lower Fees**

* **Key Feature:**
  * No liquidity provider (LP) as a counterparty.
* **Benefits to Traders and Platforms:**
  * Reduced trade costs from enhanced capital efficiency and no LP risk-offset fees.
  * More value for xINTX stakers as there's no need to incentivize liquidity providers.
* **Comparison:**
  * Fees are lower than DEXs and more competitive compared to CEX order books.

#### 🛡️ **Reduced Oracle Reliance**

* **Key Feature:**
  * Quotation system uses oracles only for rare dispute resolutions.&#x20;
  * Price discovery happens externally through the solver network.
* **Security Advantage:**
  * Protection against oracle manipulation exploits.

#### ⚖️ **Managed Position Risks**

* **Key Feature:**
  * Bilateral agreements that isolate the risk of the derivative contracts from external factors and guarantee solvency with rules based liquidation.
* **Benefits to the System:**
  * Trustless operations and automatic liquidation ensure a fair, scalable, and risk-free environment.

#### ⚡ **Superior Trade Execution**

* **Key Feature:**
  * Streamlined quotations via the solver for immediate trader review.
* **User Experience:**
  * Faster trade execution compared to traditional RFQ exchanges.

***

## Mission & Vision

Our mission at IntentX is to enable the next evolution of DeFi through the migration of derivatives trade from centralized exchanges on-chain, and we will do this by offering both a more **technically competitive trading** environment and **industry leading advancements in user experience**.

With the introduction of complete account abstraction and gasless trading, we will offer a seamless, efficient, and intuitive derivatives trading experience for users across the spectrum. In addition to key market optimizations, we aspire to break down the barriers of complexity and opacity of DeFi, fostering a trading environment that values transparency, user autonomy, and maintaining the core values of decentralization.

IntentX, leveraging an intent-based architecture, merges the strengths of centralized exchanges onto the blockchain, delivering a hyper-capital efficient and decentralized trading solution. This approach redefines on-chain liquidity dynamics, marking a significant leap forward in what's possible in DeFi markets.&#x20;

With a heavy focus on UX and the ability to offer products competitive with centralized exchanges, IntentX aims to increase the adoption of on-chain derivatives trading.\
\
&#x20;                                                                         **Welcome to IntentX.**

<div data-full-width="true"><figure><img src="/files/2hgTTLAsn1QLmAfgj2vL" alt=""><figcaption></figcaption></figure></div>


# The Omnichain DEX

Leveraging its novel omnichain architecture, IntentX is uniquely positioned to deploy across the entire DeFi ecosystem unconstrained by technical or liquidity barriers that current models face.

With this revelation, IntentX will be a fully "**Omnichain DEX**", deploying and servicing all compatible L1s and L2s as supported by our solver network.

**What does that mean for traders?**&#x20;

Seamless access to the full trading experience of IntentX on your chain of choice without the hassle of wallet, bridging, and gas management across various ecosystems.

**What does that mean for xINTX stakers?**

Trading activity from any and all chains will generate platform revenues accruing to xINTX stakers. By establishing IntentX as an omnichain DEX, we will be flexible in servicing markets with the most trading demand.

## Cross-Chain Architecture:

IntentX Cross-Chain architecture is depicted in this graphic and described below.

<div data-full-width="false"><figure><img src="/files/qpI1PRXXfUycigiPyXkw" alt=""><figcaption></figcaption></figure></div>

### Mantle Native

The **Mantle Network** is IntentX's **home** network as a Mantle native and first project.

The initial token generation event (TGE), liquidity, staking, and core trading engine deployment are on Mantle. As IntentX deploys cross-chain, some elements may remain exclusively on Mantle as logistically appropriate.

Base has been selected for initial deployment due to its strong user metrics, community, and focus on consumer-level products with exceptional UX.&#x20;

### Native EVM Deployment

Although much of IntentX contracts will live on Mantle, core trading platform functionality and contracts will be natively deployed on compatible EVM chains, which will grow over time to service any chain with demand.

By deploying the trading contracts natively, users receive the best user experiences with full security, transaction speed, and user experience of their chain of preference. By removing cross-chain variables through native deployments, we can increase security and functionality.

### Non-Native Chains

On chains that do not have IntentX trading contracts natively deployed, users will be able to leverage the IntentX[ **account abstraction**](/intentx-platform/trading-on-intentx/trading-tutorials/account-abstracted-wallet) solution to seamlessly trade from anywhere!

Users from non-native chains will be able to create an abstracted account, and deposit / withdraw from any supported chains. These funds will be bridged and deposited into the Mantle Network deployment to trade. Because our account abstraction solution features gas management, users will not have to deal with bridging gas, simply they can deposit and withdraw seamlessly, and then trade on Mantle with no additional gas, wallet, or transaction steps.


# User Experience Focus

At IntentX, we believe that an exceptional trading experience extends beyond liquidity and transaction efficiency. To increase adoption of decentralized finance, applications must now **invest heavily in their user experience** to suit a broader userbase.

We're innovating across various facets to ensure that every interaction users have with our platform is seamless, intuitive, and secure. This will evolve over time to more advanced states, with the ultimate goal of providing a **CEX like user experience on-chain**.

***

**Account and Position Management**:

* ***Overview*****:** A centralized dashboard to oversee and manage all your trades, positions, margin health, and account settings.
* ***Benefits*****:**

  * Easy tracking and adjustments of open positions.
  * Consolidated view of account health, margin levels, and potential risks.
  * Withdraw and deposit history.
  * PnL and order history.

  <div data-full-width="true"><figure><img src="/files/20pxJHLZiPZ1tEqpRl7X" alt=""><figcaption><p>Account Overview V2 Preview</p></figcaption></figure></div>

***

**Detailed Analytics**:

* ***Feature*****:** Detailed analytics on both the overall platform and at the individual account level. Gain insights into your trading patterns and portfolio performance.
* ***Benefits*****:**

  * Informed decision-making with up-to-date data.
  * View trading metrics and historical data with customizable filters.
  * Global platform statistics.

  <figure><img src="/files/MVmH3rrO0eCYDUR6fwvR" alt=""><figcaption><p>Analytics V2 Preview</p></figcaption></figure>

***

**Account Abstraction**:

* ***Feature*****:** Simplify onboarding by allowing **web2 log in options** and abstracting away blockchain interactions, making IntentX more approachable for both novices and seasoned on-chain users.
* ***Benefits*****:**
  * Mask the complexities of underlying blockchain processes.
  * Provide a smoother, more intuitive user interface.
  * Enable users to focus on trading without being bogged down by technical details.
  * Advanced security measures such as **2FA** and **account recovery**.

***

**Mobile Support**:

* ***Feature*****:** Full mobile trading and account management support. Including a dedicated **progressive web app platform (PWA)** to trade from anywhere.
* ***Benefits*****:**
  * Combined with account abstraction, seamlessly switch between mobile and web with your web2 log-in.
  * Consistent experience across devices through the PWA.
  * Accessibility to all your positions and trading features on the go.

<figure><img src="/files/Ylt6cPAEApXg0ZsXncam" alt="" width="188"><figcaption></figcaption></figure>

***

**Gas Management**:

* ***Feature*****:** Streamlined gas management for users to simplify web3 participation and user experience. With full account abstraction, gas can be managed for users without their knowledge.
* ***Benefits*****:**
  * Remove friction and education gaps to onboarding new users.
  * Protect users from potential gas mismanagement mistakes.

***

**1-Click Trading**:

* ***Feature*****:** Execute trades swiftly with a single click, without navigating through multiple approval and transaction steps.
* ***Benefits*****:**
  * Speedy order placements, increasing chances of optimal trade execution.
  * Reduce potential errors that can occur with multiple transaction steps.
  * Provide trade experience akin to Centralized Exchanges.

***

**Fiat On/Off Ramp**:

* ***Feature*****:** Seamlessly integrate traditional banking systems with our decentralized platform. Users can load their accounts directly from credit card and start trading immediately.
* ***Benefits*****:**
  * Facilitate easy transitions between fiat and cryptocurrencies.
  * Enable broader accessibility for users new to the crypto ecosystem.
  * Support diverse payment and withdrawal methods for global users.

***

As our platform develops, IntentX will continually invest in the latest UX technologies to be at the forefront of the derivatives space.


# The Meta Front-End

## The Meta Front-End Vision

IntentX stands at the forefront of the SYMMIO ecosystem and has established its role as an official SYMM Front-End Service Provider. This means IntentX will be collaborating with key partners to support their Front-End model with our technology.\
\
Our development efforts have significantly advanced AMFQ technology, incorporating features designed to optimize the trading experience, including a sophisticated trading terminal layout, stop loss and take profit, improved search functionality, liquidity depth charts, performance upgrades, custom slippage settings, and comprehensive account analytics, among others.

Our vision as the "Meta Front-End" is to set the industry benchmark, pushing the limits of what is achievable as a SYMM front-end provider and advancing the ecosystem at large.

<figure><img src="/files/zPLJMoxviF7DLD1M596E" alt=""><figcaption></figcaption></figure>

## The SYMM Front-End Ecosystem

**Challenges:**

* **Front-End Providers:** The need for substantial development to elevate the primitive base to industry standards presents a considerable barrier to entry.
* **SYMM Infrastructure:** The dynamic complexity of SYMM necessitates a steep learning curve and extensive support for all new front-end providers.
* **Market Makers:** The need for quality front-ends to drive volume to market makers requires high-caliber front-end partners.
* **IntentX:** Despite leading the market, the risk of competition and ecosystem fragmentation remains.

## IntentX's 'Meta Front-End' Solution

IntentX proposes a collaborative model as a common service provider to address these challenges. By offering a shared front-end solution to partners, complete with UX improvements, technical support, and ongoing updates, we aim to unify the ecosystem's efforts towards quality and innovation.

**Benefits:**

**Front-End Partners:**&#x20;

* Low start up cost and whitelabel technical solution.&#x20;
* Promotes ecosystem growth with IntentX as a collaborative, not competitive, force.&#x20;
* Facilitates collaboration and resource optimization among front-end developers.

**SYMMIO:**&#x20;

* Higher quality and standard front-end partners. In turn attracting more users and market makers to the ecosystem (adoption).&#x20;
* Reduces support demands on SYMMIO , allowing them focus on core development and market-maker tooling.&#x20;
* Expands the SYMMIO ecosystem by integrating new partners and communities.

**Market Makers:**&#x20;

* Collectively larger market potential as front-end partners will bring more orderflow.

**IntentX:**&#x20;

* Becoming a core DeFi ‘infrastructure’ player, expanding our market reach to broader ecosystems.
* Additional revenue streams to xINTX, with up to 10% of serviced front-end revenue.
* &#x20;Maintaining status as a key leading SYMMIO Front-end.

## Work with IntentX

We invite DeFi projects, developers, and potential partners to partner with IntentX to extend SYMMIO perpetual futures trading to your projects.&#x20;

We have built an end-to-end white label solution that offers innovative research and development, along with ongoing maintenance and support to clients hosting SYMMIO Front-Ends.\
\
As a partner with IntentX, serviced front-ends will receive white-label support from IntentX, including:

* Technical On-Boarding
* Custom Design Integration
* Stop Loss + Take Profit
* Advanced Trading Terminal Layout w/ Customization
* Enhanced Pair Search Functionality
* Liquidity Depth Charts
* Website Performance Upgrades
* Custom Slippage Settings and Position Closing Logic
* Upgraded Trade Notifications System
* Estimated Liquidation Prices
* Additional Solvency Indicators w/ Estimated Liquidation Prices
* Advanced Account Analytics History
* Share Trade Cards
* Referrals System
* Trade to Earn System
* Leaderboard
* Mobile Interface and Progressive Web App (PWA Support)
* Support System w/ Tickets

IntentX has and continues to invest considerable resources into improving the SYMMIO AMFQ technology. By working with IntentX, you get the benefit of all our development and system expertise and support into the future at minimal up-front and ongoing expense. This allows you to focus on your business and do what you do best!

## Current Front-End Partners:

Thena: <https://thena.fi/>

Core Markets: <https://www.core.markets/>

BeFi Labs: <https://befilabs.com/>


# What Problem Does IntentX Solve?

The current crypto derivatives market trades roughly \~**$3T in volume per month,** or **$97B / day,** and makes up to **80% of total crypto trade volumes**:

<figure><img src="/files/Uo5WFFX15NL377sbmUJA" alt=""><figcaption></figcaption></figure>

Traditionally, and to this day, **99% of derivatives trading** takes place on **centralized exchanges**.

Centralized exchanges (CEXs) are counter to the DeFi ethos, and have proven time and time again that they cannot be trusted on order flow, frontrunning, custody, security of funds, solvency, etc.

FTX, Binance, and many other prominent, “trusted” CEXs have proven that users and institutions should carefully consider the inherent risks CEXs present.&#x20;

Not only are there many **internal risks** associated with CEXs, but **external regulatory pressure** and KYC requirements are also pushing users and institutions out of CEXs and on-chain.

The solution to these problems lies in the use of blockchain technology to achieve permissionless and trustless financial transactions in a self-custodial manner.&#x20;

However, current on-chain derivatives exchange products are technologically inadequate to compete with CEXs on liquidity, fees, speed, or user experience.

Currently, only **\~1-2% of all crypto futures** are traded on-chain:

<figure><img src="/files/zP6u0tRImuArBkZih7RR" alt=""><figcaption></figcaption></figure>

This is similar to the spot trading volume observed in early DeFi summer (2020) before the innovation of Uni V2, Sushiswap, and other AMM forks ignited continued on-chain adoption.

<figure><img src="/files/4ZBrgV7NvY5DVnEnT5Ko" alt=""><figcaption></figcaption></figure>

The on-chain derivatives market is also poised for a similar uptick in growth. However, existing decentralized derivatives exchanges have failed to accomplish this because their trading experience simply cannot compete with centralized exchanges' offerings.

IntentX aims to facilitate the **adoption and migration** of crypto derivatives on-chain by eliminating existing constraints with key innovations:

1. **Liquidity and Transaction Efficiency:** IntentX's unique trading architecture will allow for CEX-like trade execution on-chain at a competitive fee basis.&#x20;
2. **User Experience Focus:** DeFi is currently not user-friendly compared to centralized exchanges. Users unfamiliar with wallets, gas, and contract interactions face friction in migration on-chain. IntentX's innovation in account abstraction, gas management, fiat on / ramps, and one-click trading will allow for retail adoption.


# Current On-Chain Derivatives Landscape

### Addressing the Liquidity-Conundrum <a href="#c8b1" id="c8b1"></a>

A long-standing challenge in decentralized trading has been liquidity. The market is currently stuck in a causality dilemma (chicken and egg problem):

**Traders go to the most liquid markets, and liquidity goes to the markets with the most traders.**

The most liquid markets are currently centralized exchanges. Traders who face lower liquidity, higher slippage, and higher fees on-chain will rationally remain on centralized exchanges until these conditions change. And while traders remain on centralized exchanges, they will continue to be the most productive place for liquidity to flow.

**So how do DEXs attract liquidity without traders, and traders without liquidity?**

This is a review of what the current on-chain derivatives market looks like and IntentX's unique role in it:<br>

<figure><img src="/files/5SkvlDPaVUa0NnbEcV68" alt=""><figcaption></figcaption></figure>

The prominent solutions in the DeFi market can be classified into (1) Order Book, (2) AMM-based, and (3) Oracle-based vAMM.

<div data-full-width="false"><figure><img src="/files/SKTOEfOwR7Y4ldPNJKpC" alt=""><figcaption></figcaption></figure></div>

**IntentX, with its unique intent-based architecture, stands out with a novel approach to the liquidity dilemma.**

***

### On-Chain Order books: <a href="#id-70ff" id="id-70ff"></a>

Orderbooks are the most widely used method for crypto exchange as they enable **peer-to-peer (P2P) trading** with granular control of liquidity. They offer market transparency, high efficiency from a fee & liquidity perspective and a great degree of internal price discovery.\
&#x20;\
This allows for reliable listing and exchange of a wide range of assets.

Order book exchanges are optimal for liquid markets and internal price discovery, however, when built on-chain, order book exchanges face several unique challenges:

#### **1. Limited Throughput (speed):**

Because order books require high-frequency updates of orders, they are highly reliant on throughput to operate. Every millisecond counts as evidenced by traditional finance market makers optimizing for speed at the cost of billions of dollars annually.

Most secure/decentralized blockchains do not provide sufficient throughput to operate an entirely on-chain orderbook. Leading projects are attempting to solve this by building their own layer 1 blockchain; however, this introduces concerns over validator centralization.

This is part of the **“**[**blockchain trilemma” introduced by Vitalik Buterin**](https://vitalik.ca/general/2021/04/07/sharding.html), the idea that blockchains inherently have to trade off between decentralization, security, and scalability.

#### 2. **Centralization:**

Firstly, because of the limits of the blockchain throughput, on-chain order books typically have **off-chain matching engines**. This is a centralization risk because the economic incentive to front-run order flow is exceptional. The payment for order flow (PFOF) market size in traditional finance is over $4B annually.

Secondly, as their own layer 1 blockchain, fully on-chain order books still require a **permissioned set of trusted validators** to structure order flow.

Both of these solutions compromise on the “Decentralized” corner of the blockchain dilemma:

<div data-full-width="false"><figure><img src="/files/HErlXPx0HOFQ5qqMsffs" alt=""><figcaption></figcaption></figure></div>

#### 3. **Market-Making and Liquidity:**

From a market-making perspective, maintaining order books is a complex operation that requires considerable capital commitments (maker orders are committed capital). As a result, trading volume and liquidity tend to **centralize on existing incumbents.**

On-chain order book exchanges have struggled to build deep liquidity with the on-chain markets being so fragmented (many competing blockchains and exchanges). Every new orderbook exchange must necessarily fragment/capture liquidity from existing ones. This is simply because maker orders in an order book are committed capital; this contrasts to how IntentX approaches market-making with **just-in-time liquidity**.

The result of this fragmentation is a liquidity crunch, with trading volume typically gravitating towards exchanges with the highest liquidity. This brings us back to the causality dilemma between liquidity and trade volumes.

While decentralized order books will continue to advance in technology and liquidity to compete with CEXs over time, the technology and trade experience is not currently there.

***

### Automatic Market Maker (AMM) Models: <a href="#id-343b" id="id-343b"></a>

While AMMs are not directly perpetual futures contracts, they can allow traders to have **Delta = 1 exposure** to underlying assets with leverage via borrowing funds (price move in underlying asset is reflected identically in the price of the derivative).&#x20;

These exchanges operate primarily by offering traders leverage via borrowing, and utilize spot-AMM liquidity and markets to match buy and sell orders, which allow for internal price discovery.

These are some pros to the model:

* Utilization of existing spot-AMM liquidity for orders (composability)
* LPs are not direct counterparties to traders (like in a vAMM model)
* Because it is AMM-based, potentially any long-tail assets can be traded.

However, there are reasons this model has not found product market fit:

* Leverage is limited by lender capital, which has to be heavily incentivized. This means leverage is largely limited (2–5x) and extremely expensive for traders and the protocol.
* Lenders face credit risks because traders are at risk of insolvency.

There is no easy way to work around the capital-intensive liquidity challenges of this model, and because of the capital inefficiencies presented, this model has not found wide-scale adoption.

**Power perpetuals** introduced by [Paradigm in 2021](https://www.paradigm.xyz/2021/08/power-perpetuals) are a new approach to AMM-based futures, with a few notable projects currently building new products that promise improvements to what we have seen. However, these will always be constrained by costly and scarce liquidity.

***

### Oracle Based Virtual Automatic Market Maker (vAMM) Models: <a href="#id-8078" id="id-8078"></a>

The vAMM model, popularized by platforms like GMX, has been an innovative market response to current challenges in on-chain order book shortcomings. This model has gained traction with considerable daily volume and now many iterations of forks.

**vAMM exchanges allow for guaranteed order execution, high leverage, and predictable trade slippage.**

This model hinges on a counterparty liquidity pool (LP), which serves as the de facto counterparty for trader positions. However, this approach is fraught with inefficiencies:

1. **Capital Inefficiency**

* Liquidity is idle and awaiting utilization (**under-utilization**).
* The LP **counter-trades** all positions and open interest (OI) must be restricted to only what the protocol could pay out in total loss situations.
* Risk cannot be properly priced without **price discovery**, so OI has to be restricted, particularly on long-tail volatile assets, to protect the LP depositors.

2\. **High Costs**

* With no price discovery mechanisms (oracle-based), the protocol **cannot price risks** adequately. This is inherently a market operation.
* Because the LP counter-trades all positions, the platform **fees must offset the risk** of any losses taken by the LP.
* The fees for execution, borrowing, and funding are considerably higher than centralized exchanges.
* Because the LP has to be compensated for the risk, the vast majority (up to 70%) of the platform revenues go to LPs rather than the project stakeholders.

3\. **Limited Asset Range**

* Listing long-tail and volatile assets is troublesome because of the risk for losses to LPs.
* OI is severely restricted if listed, and fees + slippage are high to offset the risk.

4\. **Oracle Dependency (manipulation risk)**

* The vAMM model requires external oracles to inform the price of assets. This opens the protocol to the risk of price and oracle manipulation.
* According to [blockthreat.io](https://newsletter.blockthreat.io/), Price Oracle Manipulation is currently the **#1 DeFi attack vector**:

<figure><img src="/files/7IyFl23zWLSjBzQYba29" alt=""><figcaption></figcaption></figure>

5\. **Fragmented Liquidity**

* Because a large liquidity pool is required to execute trades, vAMMs suffer from **fragmented liquidity**.
* Every new fork and iteration that launches must pull liquidity away from existing protocols and this results in worse overall liquidity conditions for traders due to fragmentation.
* Further, this **limits multi-chain deployments**, for every new chain deployed requires its own distinct liquidity to be built up.
* Incentivizing liquidity is **costly to protocols** and is usually done through inflationary rewards at the expense of stakeholder value.

The market is saturated with marginally tweaked forks that while finding some adoption; cannot escape the inherently inefficient aspects of the vAMM model.

***

While it is clear that there’s been a **product market fit and demand** for on-chain perpetuals, the existing solutions have failed to provide competitive trading experiences and pull trade volume from CEXs as the comparable spot market has.

IntentX's solution to these problems via its unique architecture and approach to liquidity is outlined in [**IntentX Solution & Architecture Overview**](/on-chain-derivatives-overview/intentx-solution-and-architecture-overview).


# IntentX Solution & Architecture Overview

## The IntentX Solution: Bridging Liquidity On-Chain

With the [**market context**](/on-chain-derivatives-overview/what-problem-does-intentx-solve) and background of [**existing on-chain derivatives solutions**](/on-chain-derivatives-overview/current-on-chain-derivatives-landscape) outlined, we can now explore the unique benefits of IntentX and its innovative **intent-based approach.**

To summarize the bigger picture of the derivatives market: \
\
**CEXs have liquidity but no security, and DEXs have security but no liquidity.**

IntentX, with its **intent-based** architecture, solves the liquidity dilemma and can effectively “bridge” CEX liquidity on-chain through the **solver network**.

<div data-full-width="false"><figure><img src="/files/dL4hst23nIWfgM6bhFYu" alt=""><figcaption></figcaption></figure></div>

This approach gives traders the best of **CEX** trading:

* Deep Liquidity
* Seamless Execution
* Tight Spreads
* Low Fees

While execution on-chain provides traders the best of **DEX** trading:

* No Trust Assumptions
* Immutable Positions
* Counterparty Insolvency De-risked
* Permissionless access

**In this way, IntentX solves for both liquidity and security with no compromise.**

***

## IntentX's Intent-Based Architecture and Order Flow

The traditional Request for Quote (RFQ) process begins when a trader **expresses their intention** to long or short a particular derivative contract at a specific price and size. Market makers then respond with customized **quotes** tailored to the trader's request. The trader can review the quotes and choose the one that best suits their needs. This personalized approach allows for a more tailored trading experience and can significantly improve price discovery.

IntentX innovates on this process by **continuously streaming quotations** in advance to display the best available quote at any given point in time. Thus, users are automatically displayed the **best available price quotation** and can make informed trades. This circumvents the time-consuming and complex process observed in traditional RFQ systems to enable a fast and efficient trading experience for users.

With this crucial innovation, IntentX is an entirely new type of intent-based exchange: an **“automatic market for quotations” (AMFQ)** exchange.

<div data-full-width="false"><figure><img src="/files/bZ2VneBuEOJFoEFPsX5t" alt=""><figcaption></figcaption></figure></div>

1. A trader arrives at IntentX and inputs the details (intent) of their desired trade (ie. long 1 BTC at 10x leverage).
2. The **solver** (market maker) provides an offer through IntentX on conditions for the trade (price, slippage, fees, funding rates, collateral, etc.). This step happens automatically and in real time. No capital is committed by the solver at this time.
3. The trader then has all the pre-agreed conditions needed to open a trade streamed to them as an “quote” and can then choose to execute the trade. This solves a necessary and complex step in an RFQ process to receive and evaluate bids to select the best one. IntentX does this automatically, providing the user with the best quote immediately. **Hence, IntentX is not a traditional RFQ exchange but rather an AMFQ exchange.**

{% hint style="info" %}
**Note:** Steps 1 - 3 happen **off-chain** through the IntentX exchange.
{% endhint %}

4. Once satisfied with the conditions of the trade, the trader sends a “Request to Trade” to the solver, including locking his required collateral.
5. The solver then observes the request and chooses to accept it, depositing their equal collateral into the contract.
6. This forms a “**bilateral agreement**” between the solver and the trader. It is an isolated and perfectly symmetrical contract, and depending on the price movement of the position, one party is obligated to pay the other party as PnL. \
   \
   This bilateral agreement exists in perpetuity until either (1) the trader closes the position, or (2) one of the parties is liquidated (automatically executed by a neutral third party based on margin health).

{% hint style="info" %}
**Note:** Steps 4 - 6 happen **on-chain** where the quotation and bilateral agreement live.
{% endhint %}

7. The solver can then “**hedge**” his position exposure (in this example, it would be long 1 BTC) on any number of sources, including a CEX, another DEX, an OTC desk, non-linear options, or even spot holdings. \
   \
   The solver can also **net** his positions with other positions or with other solvers in the network (future implementation).

{% hint style="info" %}
**Note:** Steps 7 takes place off-chain and the solver is solely responsible for managing their hedging strategy. Because collateral is locked into the **Bilateral Agreement** and completely isolated from external factors, users do not have to make any trust assumptions regarding the solvency of the solver on-chain.
{% endhint %}

This innovative architecture completely changes how on-chain derivatives work, offering many unique benefits and solutions to existing problems as detailed in [The Advantages of IntentX](/on-chain-derivatives-overview/comparison-and-advantages-of-intentx).


# Comparison and Advantages of IntentX

## Exchange Comparison

Liquidity is the lifeblood of any financial system, and IntentX brings cheap, plentiful, and secure liquidity to the blockchain.

With this, IntentX offers several order-of-magnitude improvements that results in the most complete and competitive on-chain trading solution.

<div data-full-width="false"><figure><img src="/files/e7dICiAsX6e1ukfxPDlH" alt=""><figcaption></figcaption></figure></div>

Compared with existing derivatives decentralized exchanges (DEXs), IntentX offers wide **multi-chain deployment**, consistently **high leverage**, the **widest pair offering** (each with deep liquidity), and the most **competitive fees**.&#x20;

Combined with next generation account abstraction UX, IntentX is competitive with centralized exchanges offerings, with the added advantage of **self-custody, permissionless access, and trustless trading.**

<figure><img src="/files/KmzNAs9ymLX1MYoVwy5j" alt=""><figcaption></figcaption></figure>

With this, IntentX aims to migrate traditional CEX users on-chain, and offer them a better and more secure trading experience than what's previously existed. Users can experience familiar UX and features from a CEX with all the security and advantages of decentralization.

***

## Key Advantages of IntentX Architecture

#### Summary:

<div data-full-width="false"><figure><img src="/files/cJwgSOtyCaAgBv3ZN4th" alt=""><figcaption></figcaption></figure></div>

#### **Capital Efficiency:**

Intent-based trading provides vastly more efficient use of liquidity. Market makers (solvers) can focus their capital on fulfilling specific trade requests, leading to deeper and more concentrated liquidity.&#x20;

This is akin to the concept of **just-in-time liquidity** (JIT), wherein solvers can stream quotes rather than commit capital. Only after a user makes a "request for trade" does the solver commit capital by accepting.

This contrasts with order book systems, where maker orders represent a capital commitment at any given price, constraining market makers from providing deep liquidity on multiple books simultaneously.

In comparison to vAMM systems who rely on a large counterparty LP, IntentX requires no up-front and idle liquidity to execute orders, resulting in orders-of-magnitude improvements in capital efficiency.

At IntentX, we don't rent liquidity; we get it just-in-time to execute orders most efficiently.

**Result:** IntentX is up to **100x** more capital efficient than vAMM exchanges on an available OI / TVL basis.&#x20;

<div data-full-width="false"><figure><img src="/files/hMBDZy3nSPNRyOxHZ3E4" alt=""><figcaption></figcaption></figure></div>

#### Omnichain Deployment

Because of the **low throughput** requirement and **JIT liquidity** features of RFQ trading, IntentX is unconstrained in regards to multi-chain deployment.

Deployment to any EVM compatible L1 or L2 can be done rapidly as long as solvers support the chains. This allows IntentX to establish presence on all major DeFi ecosystems as a "**Omnichain DEX**".

#### **Optimized Price Discovery:**

IntentX effectively bridges liquidity from CEXs on-chain because the solver effectively acts as a "**liquidity aggregator**", tapping into the most liquid markets to fill trader positions and hedge their exposure.\
\
Large trades can cause significant price movements in orderbook trading systems. With intent-based trading, large trades are executed by solvers who can source liquidity from various sources, reducing their price impact on any individual market.

**In other words, you can also consider IntentX as a derivatives liquidity aggregator.**

#### **Improved Order Execution:**

Slippage, the difference between a trade's expected and executed price, can be a significant issue in order book systems. With our intent-based architecture, quotes are customized to their specific requests, reducing the likelihood of slippage or guaranteeing **price certainty** (depending on market or limit order execution).

This results in improved execution and predictability for traders.

#### **Lower Costs:**

With the increased capital efficiency and deep available liquidity, trades can be facilitated with much lower friction. This means traders will pay **lower fees** on IntentX than on other DEX platforms.

Because the on-chain derivatives market is currently so inefficient, traders have to pay many times greater fees on DEXs than CEXs. By bridging this gap, IntentX will offer traders a more competitive trading environment and allow for the migration of more trading volume from centralized exchanges on-chain, benefiting all actors and the DeFi ecosystem.

#### **Oracle Independence & Security**:

IntentX operates on a quote-based system, relying on oracles only for rare dispute resolutions, shielding it from potential oracle manipulation vulnerabilities.

#### Transparent Position Risks

Derivative contract risks are clearly defined on-chain within the bilateral agreement. This ensures a transparent and frictionless exchange of risk between the trader and the solver.

The system's inherent design ensures **automatic liquidation** in case of insolvency, ensuring trustworthiness.

***

All of these aspects combine to make IntentX the most performant and best solution to deliver secure, cheap, and plentiful liquidity to the on-chain markets.

This technology will significantly accelerate the adoption of on-chain derivatives, which will eventually become the largest financial market on earth. At its core, derivatives are contracts that transfer risk, not underlying assets, and this is what blockchain (and IntentX) does best.


# Trading on IntentX

Please refer to the following sub-sections for everything related to trading on IntentX!

{% content-ref url="/pages/cPYJIZBGNeJeEUPVcIYP" %}
[Trading Basics](/intentx-platform/trading-on-intentx/trading-basics)
{% endcontent-ref %}

{% content-ref url="/pages/Se4D4EIr53pTJSgAocDF" %}
[Trading Tutorials](/intentx-platform/trading-on-intentx/trading-tutorials)
{% endcontent-ref %}

{% content-ref url="/pages/DKLVduOl5utwIqyOxelD" %}
[Collateral & Cross-Margin Accounts](/intentx-platform/trading-on-intentx/collateral-and-cross-margin-accounts)
{% endcontent-ref %}

{% content-ref url="/pages/ZvPUZslaHOzIGtOktUCE" %}
[Understanding Funding Rates](/intentx-platform/trading-on-intentx/understanding-funding-rates)
{% endcontent-ref %}

{% content-ref url="/pages/EAKgdESjIIjfbJG6MoJ3" %}
[Pricing Data and the Role of Oracles](/intentx-platform/trading-on-intentx/pricing-data-and-the-role-of-oracles)
{% endcontent-ref %}

{% content-ref url="/pages/qPlguWwbK7GkRvAIwarP" %}
[Unrealized Profit and Loss (uPNL)](/intentx-platform/trading-on-intentx/unrealized-profit-and-loss-upnl)
{% endcontent-ref %}

{% content-ref url="/pages/O89DnJT6TuUqhEx5sl9O" %}
[Open Interest (OI) and Market Activity](/intentx-platform/trading-on-intentx/open-interest-oi-and-market-activity)
{% endcontent-ref %}

{% content-ref url="/pages/0BQh1bxdKyCuowSRRDdh" %}
[Liquidations, Margin Management (CVA), and Account Health](/intentx-platform/trading-on-intentx/liquidations-margin-management-cva-and-account-health)
{% endcontent-ref %}

{% content-ref url="/pages/Epz1GOdYXTXbpmhGSMf5" %}
[Withdrawal Process and Security Measures](/intentx-platform/trading-on-intentx/withdrawal-process-and-security-measures)
{% endcontent-ref %}


# Trading Basics

## **On-chain Perpetual Future Contracts**

When you trade on IntentX, you're entering into on-chain perpetual future contracts. Perpetual futures are a type of futures contract that doesn’t have an expiry date. Without an expiry date, there is no physical settlement of goods, so the purpose of a perpetual futures contract is to exchange risk on the price of an asset.&#x20;

When a trader decides to close a position, a cash-settlement is carried out, depending on the difference in asset prices from when the trade was initiated to when it was closed. The leverage level, which is agreed upon beforehand, plays a role in determining this settlement amount.

Since these contracts don't expire, traders have the flexibility to maintain positions as long as they desire. However, it's essential to monitor underlying asset prices and funding rates continually, as profitability depends on these changes over time.

### Collateral & Cross-Margin Account

Before trading on IntentX, users deposit a form of collateral (USDC) into a cross-margin account. This account is unique in its operation. Instead of managing each position's margin separately, all position margins are pooled together. This pooling method allows positive and negative unrealized profits to offset each other.

This **cross-margin** mechanism is an advanced risk management tool that provides traders with better liquidity and minimizes the chances of unwanted position liquidations. Yet, with increased flexibility comes increased responsibility. As trades are made with leverage, rapid market movements can cause significant changes in unrealized gains or losses, which can surpass the initial collateral amount.

As trades on IntentX involve leverage, it's possible for a party's unrealized losses to swiftly surpass the collateral they've deposited. The cross-margin feature mitigates some of this risk as margin can be utilized from all deposits/positions in the sub-account.&#x20;

In a future update, isolated trade positions will be available to provide flexibility to traders. For now, traders can isolate positions by placing orders in distinct sub-accounts.

### Funding Rates

Rather than settling the contract at a close date, perpetual futures markets use a system known as the funding model.\
\
Funding rates are recurring payments exchanged between traders and solvers maintaining perpetual contract positions. Due to the indefinite nature of these contracts, there's a potential for a price difference to develop between the perpetual contract's price and the spot price of the underlying cryptocurrency. Funding rates help maintain the perpetual contract's price to spot price ratio at 1:1.

If the funding rate is in the negative, those in short positions compensate those in long ones. Conversely, with a positive rate, those in long positions pay those in short.

## Terms and Definitions:

1. **Unrealized Profit and Loss (UPNL)**
   * UPNL showcases potential gains or losses that would result if a trader closed their active position(s).
   * It's calculated by evaluating the difference in USD terms between the average entry price and the prevailing index price.<br>

2. **Open Interest (OI)**
   * OI gives the total value of ongoing perpetual contracts held by traders. These are contracts that remain open and haven't been closed.
   * The OI is expressed as as current OI / available OI. If the current OI meets the total avaliable, new trades cannot be opened until existing positions are closed.
   * It serves as a measure for the market's overall activity.<br>

3. **Account Health**

   * Represented as a percentage, it indicates the health of a trader's position.
   * When the Equity Balance matches the Maintenance Margin, you will risk liquidation.

   <pre><code><strong>Formula: AccountHealth = (EquityBalance - MaintenanceMargin ) / EquityBalance
   </strong></code></pre>

4. **Maintenance Margin (or CVA)**
   * Considered the trader's "security deposit." If the equity balance (which combines account balance and UPNL) drops to this mark, liquidation is imminent.
   * This margin is locked and non-transferable, encompassing all open positions.<br>

5. **Equity Balance**

   * A combination of a trader's dedicated account balance and UPNL, this metric indicates the probable future balance.
   * If it dips to the amount of the Maintenance Margin, liquidation ensues.

   ```
   Formula: EquityBalance = AllocatedBalance + UPNL
   ```

6. **Allocated Balance**
   * Represents funds assigned by traders for a specific Margin Sub-Account.
   * These funds can either initiate margin positions or be reverted to the Main Account after a defined Fraud Proof interval.
   * During the Fraud Proof window, third-party evaluators authenticate the balance's accuracy and legitimacy intended for withdrawal. If it's verified, withdrawal is then permitted.<br>

7. **Initial & Locked Margin**
   * The Initial Margin feeds into the Locked Margin. The Locked Margin represents margins engaged across all live positions.
   * While part of a trader's Equity, the Locked Margin acts as a buffer, deterring excessive position openings.<br>

8. **Available for Orders**

   * Denotes the account balance still accessible for Requests and Orders.

   <pre><code><strong>Formula: AvailableForOrders = EquityBalance - LockedMargin - MaintenanceMargin
   </strong></code></pre>

9. **Withdrawal & Proof of Time**
   * IntentX's design instantly finalizes all transactions. To counteract risks like double spending, a 12-hour fraud-proof phase is a necessity before withdrawing the original USDC deposit.
   * Consideration is currently underway for third-party integration that can expedite withdrawals.


# Trading Tutorials

### Introduction

Welcome to the IntentX Trading Tutorials! Whether you are a seasoned trader or a beginner stepping into the world of digital assets and perpetuals trading, our comprehensive guides are designed to provide you with the necessary knowledge and insights to navigate through the IntentX platform efficiently.

### Trade Orderflow Guide:

Reference this quick guide to walkthrough the trade order flow process:

<figure><img src="/files/0fliFstAOHIMpT8MgRK9" alt=""><figcaption></figcaption></figure>

In the documents below, we have two distinct tutorials tailored to different wallet types: Web3 Wallets and Account Abstracted Wallets. Each tutorial is meticulously crafted to address the unique features and steps associated with the respective wallet type, ensuring a smooth and secure trading experience.

* [**Web3 Wallets Tutorial**:](/intentx-platform/trading-on-intentx/trading-tutorials/web3-wallet) This tutorial is ideal for users who prefer to engage in trading activities using Web3 wallets. It walks you through the process of connecting your wallet, opening, managing, and closing trades, among other crucial steps. With clear instructions and visual aids, you'll quickly grasp the nuances of trading with Web3 wallets on IntentX.
* [**Account Abstracted Wallets Tutorial**:](/intentx-platform/trading-on-intentx/trading-tutorials/account-abstracted-wallet) If you are using account abstracted wallets, this tutorial is your go-to guide. It covers the specifics of trading with these wallets, offering step-by-step instructions on various trading procedures, from the initial setup to the withdrawal process.

Before diving into the tutorials, we recommend identifying the type of wallet you intend to use for trading on IntentX. Once you've determined your wallet type, select the corresponding tutorial for a seamless learning experience. Happy trading!


# Web3 Wallet

Introduction

This guide will walk you through the process of trading perpetual contracts on IntentX, covering:

* Wallet Connection & Account Creation
* Collateral Deposit
* Asset Selection & Leverage Setting
* Trade Placement & Execution
* Trade Monitoring & Closure
* Collateral Withdrawal

### Trade Orderflow Guide:

Reference this quick guide to walkthrough the trade order flow process:<br>

<div data-full-width="true"><figure><img src="/files/0yAaFWggczAFggDM2rDj" alt=""><figcaption></figcaption></figure></div>

All steps are explained in detail in the sections below.

### Step 1: Connect Wallet & Create Account

1. If in agreement with **Terms and Conditions** click **"I Accept"** and use the **Setup Wizard** to get started.**.**

   <figure><img src="/files/DNv3hrxHH5K9qjuvPVeI" alt=""><figcaption><p>"Agree to our terms"</p></figcaption></figure>

   <figure><img src="/files/aidXWmSjzoTJ7ZIfhsVR" alt="" width="192"><figcaption></figcaption></figure>
2. Click **“Connect Wallet”** and select your wallet type. Confirm you are on the correct network and follow the prompts to connect.

   <figure><img src="/files/FVgdWOvx0N1ZyrMxI6h3" alt=""><figcaption></figcaption></figure>
3. **Click "Create Account"** post-connection. Name your account, click "Create Account", accept terms and conditions if desired and sign transaction.

   <figure><img src="/files/zLxMWG7OhZfgn1CRx8Uh" alt=""><figcaption></figcaption></figure>
4. **How to establish a sub-account:** To isolate positions, you can establish multiple sub-accounts. To do this, simply **"Create Sub-Account"** under your main account profile.

<figure><img src="/files/5KIG5abD0V6JShL6EGy3" alt="" width="316"><figcaption></figcaption></figure>

{% hint style="info" %}
**Note:** If you already have an account, simply connect your wallet.
{% endhint %}

### Step 2: Deposit USDC

1. Click **“Deposit”** and enter the USDC amount to be deposited into your account for use as collateral when trading. All funds are subject to a **12-hour fraud-proof withdrawal phase** once deposited.

   <figure><img src="/files/4JZo3gteq0PGDpONQlfp" alt="" width="324"><figcaption></figcaption></figure>
2. **Confirm** the transaction in your web3 wallet.

{% hint style="info" %}
**Note:** ETH is required for gas on whichever EVM you are operating on.
{% endhint %}

### Step 3: Select Trading Asset

1. Choose your desired trading asset from the available options in the **dropdown menu**.

   <figure><img src="/files/pB8QxhnEvpiu5y07CYwb" alt=""><figcaption></figcaption></figure>
2. You are able to view the asset chart upon selecting it.

   <figure><img src="/files/Ts8TPWal8tsH91x3xQiy" alt=""><figcaption></figcaption></figure>

### Step 4: Set Leverage & Trade Size

1. **Enter** your preferred leverage.
2. Determine your **directional bias**.
   1. Select "**Long"** if you believe the price of an asset will **increase** over the duration of your trade.
   2. Select **"Short"** if you believe the price of an asset will **decrease** over the duration of your trade.
3. Determine the **trade size**.&#x20;
   1. You can **manually enter** the amount or **use a percentage** of your maximum position as a reference.
4. You can now see the **quote** streamed from the solver to execute your order.

<figure><img src="/files/jla62fi0oh69XVe0xeYL" alt=""><figcaption></figcaption></figure>

### Step 5: Confirm Intent to Trade

1. Choose between **Market or Limit Order**:

   1. Select **"Market Order"** for immediate execution at the current market price. ***You may experience slippage and the execution price may not exactly match the quote provided using this method.***&#x20;
   2. Choose "**Limit Order"** and input your **preferred entry price**. This type of order will execute once the market price matches the value you've specified in the future.

   <figure><img src="/files/CDt9dCK4CvRvUNeZPXc5" alt=""><figcaption></figcaption></figure>
2. Confirm that the solver quote is **acceptable**, click **"Long Trade" or "Short Trade"** and sign the transaction in your wallet to submit your **"Request for Trade"** on-chain.

<figure><img src="/files/qODarnPbCjZrnvjC9K5u" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Note:** IntentX automatically provides you with the best solver quote at any given time, this includes both execution price and fees.&#x20;
{% endhint %}

{% hint style="info" %}
**Note:** If you chose to execute a "Limit Order", the request for trade will exist on-chain until the market price matches your preferred entry price. You can cancel limit orders prior to the market meeting your entry price at any time.
{% endhint %}

### Step 6: Request for Trade

1. After you **confirm the intent** to take the trade, your **"Request for Trade"** is then sent on-chain to the solver along with the required collateral.
   1. Your trade will read as **"Pending"** until it is filled by the solver.

<figure><img src="/files/0joXtnTWOcrQGcBxrqOp" alt=""><figcaption></figcaption></figure>

1. The solver can then **accept , fill, and deposit** their corresponding collateral as **"Locked Margin"**.
2. The proportion of USDC collateral you used for the trade will now also become **"Locked Margin",** forming the **bilateral agreement**.

<figure><img src="/files/wS6pc46rXdlcmEhTndRw" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Note:** If price moves during this time or other factors are altered (i.e. funding rates), the order may remain unfilled until conditions meet the requirements for fill by the solver. If you experience this, you can choose to cancel your pending orders.
{% endhint %}

{% hint style="info" %}
**Note:** It is possible that your order will only be partially filled (<100%). In this case, the filled portion of your position will be listed as **"Open"**, while the unfilled portion remains listed as a **"Pending"** until the solver can complete the order.
{% endhint %}

### Step 7: Monitor Position & Account Health

1. Regularly check your open positions, account margin, and account health to avoid liquidation.

<figure><img src="/files/8tW1IufoudswJKvp1mCe" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Note:** Because the accounts operate in cross-margin, you can deposit more USDC collateral in your account at any time to limit liquidation risk (it will automatically be added to your "Locked Margin" as necessary).
{% endhint %}

### Step 8: Confirm Intent to Close

1. Decide to close with a **Market** or **Limit order.** You can also reduce your position by clicking on the "**Setting**" Icon in "**Size**" column:<br>

<figure><img src="/files/HuGi4h2LUjOk4c1j9LdL" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/Iy1BWORkqxbAXAl4lG0k" alt="" width="360"><figcaption></figcaption></figure>

Or **Instantly close** via Market order in the button below:

<figure><img src="/files/JukEL20ETHHFevgqj2YA" alt=""><figcaption></figcaption></figure>

If you click on the arrow, the **classic blockchain close** will be available to click, and a transaction signature will be needed.

<figure><img src="/files/79p2rvnvuiaxCTzrsBO6" alt=""><figcaption></figcaption></figure>

1. If you close via **"Market"** your position will be closed **immediately**. ***You may experience slippage and the execution price may not exactly match the quote provided using this method.***
   1. When using **"Limit Order"** a **desired exit price needs to be inputed.** This type of order will close your position once the market price matches the value you've specified in the **future**.&#x20;
   2. You can **manually enter** how much of your position you would like to close or choose to close a **specific percentage** (i.e. 25%, 50%, 75%, or 100%).
2. Click "Close Trade", then **confirm and sign** the "Intent to Close" in your wallet.

### Step 9: Request to Close

1. After you **confirm the intent** to close the trade, your **"Request to Close"** is then sent on-chain to the solver.
   1. Your position status will show as **"Pending"** until it is closed by the solver.
2. The solver then **accepts** to close the trade, which **removes/returns** their **USDC collateral + PnL** to their unlocked balance.
3. Once closed by the solver, your **USDC collateral + PnL** is now **unlocked** and returned to your **"Allocated Balance"**.
4. This **unlocked balance** can now be used for **additional trades, as margin for existing positions in the account, or withdrawn.**
5. In the event that your "Request to Close" is **hung up or otherwise not executed** in a timely fashion, you can use the **"Force Close"** function.

{% hint style="info" %}
**Note:** It is possible that your order will only be partially closed (<100%). In this case, the closed portion of your position will be listed as **"Closed"**, while the unfilled portion remains listed as a **"Pending"** until the solver can complete the order.
{% endhint %}

### Step 10: Withdraw Collateral

1. Navigate to the withdrawal section, enter the amount of collateral to withdraw, and click **"Withdraw"**.
2. **Confirm and sign** the transaction in your wallet.

{% hint style="info" %}
**Note:** All withdrawals enter a **12-hour fraud-proof phase** for security measures. Your funds are not at risk during this phase and will be claimable after the fraud-proof phase is complete. This time window will be reduced over time as the platform is derisked.
{% endhint %}

### Important Trading Tips

* Monitor margin and account health vigilantly.
* Understand assets and leverage before trading.
* Only risk what you can afford to lose.
* Familiarize yourself with IntentX’s features and risk management tools prior to trading.

### Conclusion

Congratulations on completing the Web3 Wallets Tutorial for IntentX! You're now prepared to navigate and trade confidently on our platform. Remember to employ prudent risk management practices to protect your assets, and don't hesitate to reach out to our support team for any assistance.


# Account Abstracted Wallet

### :construction: Under Construction :construction:


# Liquidations, Margin Management (CVA), and Account Health

Liquidations

A liquidation event occurs when a trader's account and positions are forcibly closed by a liquidator due to insufficient margin in their account to cover unrealized losses.&#x20;

This happens when the trader's positions move against them to the point where the **Equity Balance** falls below the **Maintenance Margin (CVA).**

{% hint style="danger" %}
**Warning:** Accounts at IntentX operate in cross-margin. Meaning Equity Balance takes into consideration the entire account balance, and liquidations will result in the entire account balance to be lost. Users can create isolated sub-accounts to better manage their liquidation risk.
{% endhint %}

Our "**Account Overview**" tab on the main trading page provides critical indicators to help users manage their account health.

### Estimated Liquidation Prices

IntentX assists users in estimating liquidation prices for their new and open positions. This is an estimate only, and the values will change dynamically based on your account balance, and other open positions.

When opening a new trade positions, traders can see their estimated liquidated price in the trade details:

<figure><img src="/files/Wzh62wXf80xlclfPZa5G" alt=""><figcaption></figcaption></figure>

When users trades are open, they can view their estimated liquidation prices in the "**Positions**" tab:

<figure><img src="/files/mdr5jBefjlIRiiuW6eAe" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
**Warning:** As accounts are in cross-margin, there is no true liquidation price for your positions, but rather, users should monitor their Remaining Equity to Liquidation to ensure their account is not liquidated.\
\
Calculations for estimated liquidation price are complex and intend to serve as an indicator only, it is possible that your account is liquidated before this price is reached.
{% endhint %}

### Account Health

Account Health is a percentage that represents the overall health and risk level of a trader’s position. It provides a quick glance at the safety buffer a trader has before facing liquidation.

<figure><img src="/files/0AYbkC2A8Uk2OY5nLvVG" alt=""><figcaption></figcaption></figure>

**Calculation:**

```
Formula: Account Health = (equity - maintenanceMargin) / (allocatedBalance - maintenanceMargin)
```

### Maintenance Margin (CVA)

CVA is the overall Maintenance Margin required for your account to remain solvent. Users should take care to understand the CVA, and maintain their account Equity Balance to not fall below this value, otherwise the account will be liquidated.

**In the event of liquidation, the entirety of the account CVA is lost / remit to the counterparty subject to liquidation.**&#x20;

When opening a trade position, users are required to deposit a corresponding CVA amount based on their position size, contract, and leverage used.

{% hint style="info" %}
**Note:** Higher leverage positions require a higher CVA, users utilizing high leverage should take caution to avoid liquidations.
{% endhint %}

This Maintenance Margin (CVA) is the collateral required for each trade opened on the platform.&#x20;

The total CVA amount of your open positions is shown on the "**Account Overview**" tab:

<figure><img src="/files/BDGVG4a2zbmHqDzaaxwd" alt=""><figcaption></figcaption></figure>

### Equity Balance

The Equity Balance amount is the total account balance at any given moment, factoring in all of your open positions. &#x20;

<figure><img src="/files/meZsbLyp2wKstXXOU6Ez" alt=""><figcaption></figcaption></figure>

Equity Balance is the sum of the trader’s account balance and Unrealized Profit and Loss (uPNL).

{% hint style="danger" %}
**Warning:** When your Equity Balance amount falls below your Maintenance Margin (CVA), your account is liquidated and your CVA amount locked in the trades is forfeit.&#x20;
{% endhint %}

**Equity Balance Calculation:**

```
Formula: Allocated Balance + uPNL
```

### Remaining Equity to Liquidation

The **Remaining Equity To Liquidation** indicator shows you how much equity balance you have remaining before your accounts balance is liquidated.

<figure><img src="/files/2BeAoT7EEThDxjylrw2Z" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
**Warning:** When the Remaining Equity To Liquidation falls to 0, your entire account is liquidated.
{% endhint %}

**Remaining Equity to Liquidation Calculation:**

```
Formula: Equity Balance - Maintenance Margin (CVA)
```

### Available for Orders

Represents the user available funds to open orders with and their total allocated amounts.

<figure><img src="/files/HLAveZLRMRpeDt0fgFeO" alt=""><figcaption></figcaption></figure>

```
Formula: Available for Orders = Equity Balance - Locked Margin - Maintenance Margin  
```

### Conclusion

Understanding and effectively managing Account Health and margin is crucial for traders on IntentX. By keeping a close eye on these metrics, traders can make informed decisions, manage risks proactively, and navigate the markets more successfully.


# Instant 1-Click Trading

Instant 1-Click Trading is a game-changing feature that simplifies and accelerates the trading experience on IntentX. With gasless transactions, rapid execution, and a streamlined user interface, this innovation makes trading more accessible, efficient, and cost-effective. Whether you’re a scalper, a long-term trader, or new to the platform, Instant 1-Click Trading eliminates friction and boosts efficiency.

***

#### **Benefits of Instant 1-Click Trading**

1. **Gasless Trading**
   * No gas fees for trade execution — all costs are absorbed by the solver, making trading more cost-effective.
2. **Instant Execution**
   * Execute trades instantly, minimizing price slippage and ideal for fast-moving strategies like scalping.
3. **Simplified User Experience**
   * Seamless trading with fewer steps, enabling users to focus on strategy rather than execution barriers.
4. **Exclusively for Market Orders**
   * Instant 1-Click Trading ensures market orders are executed rapidly and reliably.
5. **Customizable Options**
   * Users can toggle between traditional confirmations and true 1-click execution for maximum flexibility.
6. **Speed and Scalability**
   * Trades are processed off-chain before final on-chain settlement, drastically reducing execution times.

***

#### **How Instant 1-Click Trading Works**

**1. Instant Open: The New Default**

* When opening a trade, the “Trade Confirmation” screen defaults to Instant Open. This allows trades to be executed instantly via the solver.
* Users can switch to the classic on-chain method using a dropdown menu if preferred.
* **Note:** Instant Open is available exclusively for market orders. Limit orders will continue to use the traditional method.

<figure><img src="/files/tzLhzVg3CuVYRjTCe9Oq" alt=""><figcaption></figcaption></figure>

***

**2. 1-Click Trading**

* Users can enable true 1-click trading by disabling trade confirmations on the “Trade Confirmation” screen.
* This setting can also be managed in “Customize Settings” for flexibility.
* Once enabled, traders can execute trades without additional modals or interruptions.

<figure><img src="/files/1rHMLdyV4QnKyGZJGUFh" alt=""><figcaption></figcaption></figure>

***

**3. One-Time Authorization**

* To activate Instant 1-Click Trading, users must sign a one-time authorization transaction.
* This approval is solver-specific and remains valid for the account's lifetime using the same wallet.

***

**4. Instant Execution via Solver**

* Authorized trades are processed instantly off-chain by the solver, even before final on-chain settlement (which takes approximately \~5 seconds).
* This ensures lightning-fast execution critical for time-sensitive trading strategies.

***

**5. Gasless Trading**

* The solver covers all on-chain settlement gas fees, ensuring a cost-effective trading experience.

***

**6. Instant Close**

* Close positions with a single click through the “Instant Close” button available on the positions tab.
* Users who prefer the traditional method can switch back using a dropdown menu.

<figure><img src="/files/Nielp0wsUDa6kew36QvI" alt=""><figcaption></figcaption></figure>

***

**7. New “Reduce Position” Button**

* For partial closes, users can adjust their position size by clicking the gear icon next to their position and placing a modified close order.

<figure><img src="/files/EdH4iRx2Wrhd6dy4wX9G" alt=""><figcaption></figcaption></figure>

***

#### **Why Instant 1-Click Trading Matters**

1. **Speed**
   * Traders can respond to market opportunities instantly, making it a game-changer for strategies requiring rapid execution.
2. **Cost Efficiency**
   * Eliminating gas fees makes trading more accessible to all users and reduces overhead costs.
3. **User Experience**
   * Simplified workflows and an intuitive interface reduce friction, catering to traders of all experience levels.
4. **Accessibility**
   * Gasless and fast trading lowers entry barriers for traders who traditional on-chain platform constraints may deter.


# Take Profit and Stop Loss

How It Works:

As a front-end coordinator with solvers through SYMMIO core contracts, we’ve implemented our own proprietary solution for SL/TP. This comprehensive solution allows us to trigger orders as soon as the price hits the user’s target; consisting of a price query from Binance official price feeds, Last Price, Mark Price, and a fallback option in case it goes down to always have a reliable Oracle to gather price from.

For us to be able to close a position on behalf of the user, the SYMMIO team has added a function inside the core contract that allows us to execute a transaction on the user’s behalf after signing a transaction permitting us to do so.

**The system works as follows:**

**Price** >= TP → System is triggered, and the close request is sent to the solver.

**Price** <= SL → System is triggered, and the close request is sent to the solver.

{% hint style="info" %}
**Price** is determined using "**Last Price**" from source market to align with charting in normal trading conditions (99% of the time). To add protection against price wicks, if "**Last Price**" dislocates from the market "**Mark Price**" by >0.25% during volatility, IntentX uses "**Mark Price**" to trigger the stop loss instead.
{% endhint %}

Once triggered, the transaction is closed at **Market Price**, which can vary from the trigger price.

The time between the system trigger and the transaction being sent is minimal, and thanks to our Account Abstraction technology, we can sponsor this operation with a $0 gas cost for the user.

However, the timing between different states on the SYMMIO on-chain side can vary between 3–5 seconds, which creates room for orders not to get filled/executed because of price changes.

Users must consider that this system works better on medium & long-term operations rather than in scalping & low timeframe operations.

{% hint style="danger" %}
**Warning:** As a front-end implemented solution, IntentX cannot guarantee that the close order is complete on the solver side, only that the close request is sent correctly to the solver. This dependency exists on the SYMMIO and solver side, with further development required to create a 100% robust system, including a multi-dimensional system with redundancies on both the IntentX and solver side.
{% endhint %}

## Setting Stop Loss & Take Profit <a href="#id-4a41" id="id-4a41"></a>

Setting your SL & TP is as easy as a few clicks.

Firstly, you need to open a position and view your position in the ‘’Positions’’ tab. From there, you’ll find TP/SL. Click on the settings to start setting up your TP/SL.

<figure><img src="/files/dRzjR7helXG7K5s36uqb" alt=""><figcaption></figcaption></figure>

Now, you’ll need to enable stop loss with an approval. This approval needs to be set so IntentX can close your position.

<figure><img src="/files/VoRP5oI0bpSaCGuTTcIT" alt=""><figcaption></figcaption></figure>

Once you’ve enabled stop loss, it’s as simple as choosing your Take Profit & Stop Loss. Choose percentage-based, or put in your own desired prices.


# Collateral & Cross-Margin Accounts

### Introduction

On IntentX, the cross-margin mechanism is fundamental, consolidating liabilities across a user’s trading account to offset margin between positions. This approach means your portfolio effectively serves as collateral for multiple open positions. This greatly increases the capital efficiency of your portfolio and account.

{% hint style="info" %}
**Note:** Isolated margin accounts will be introduced in future versions. To isolate margin currently, traders can create single-position sub-accounts.
{% endhint %}

### Understanding Collateral

**USDC Deposits:** Users need to deposit USDC as collateral before initiating trades. This collateral ensures that traders have sufficient funds to cover potential losses.

{% hint style="info" %}
**Note:** Solvers also deposit equivalent USDC as collateral into the bilateral trade agreements entered between trader and solver. This makes the agreements perfectly symmetrical. All trades are settled in USDC.
{% endhint %}

**Credit Valuation Adjustment (CVA):** CVA is a penalty applied to either the trader or solver upon liquidation. This penalty is paid to the non-liquidated party and acts an incentive to always balance one's positions as well as provides a form of liquidation insurance.

### Understanding Margin Types

* **Isolated Margin:** Limits liability to the initial margin posted for a ***single position***, often used for speculative, volatile positions. It's a popular choice for perpetuals trading on various exchanges.
* **Cross-Margin:** Liabilities from ***multiple positions*** are shared across an account, offsetting margins between positions. This method reduces margin requirements by considering the overall portfolio risk, thereby minimizing the risk of single-position liquidations and requiring lower initial margins.

### Isolated Margin Example

A trader has $20K USDC on IntentX. They open a BTC perpetual position worth $50K on 10X leverage, using $5K USDC as collateral into an isolated sub-account. If their position is liquidated, only the $5K USDC initial margin in the sub-account is at risk, leaving the remaining $15K USDC in other sub-accounts unaffected.

{% hint style="info" %}
**Note:** To isolate collateral in IntentX, you must use distinct sub-accounts for each position you would like to isolate.
{% endhint %}

### Cross-Margin Example

A trader has $20K USDC on IntentX. They open a BTC perpetual position worth $50K and an ETH perpetual position worth $30K. With cross-margin, both positions share the $20K USDC as collateral. If their BTC position is underperforming but their ETH position is performing well, the profit from the ETH position can help maintain the required margin level for the BTC position, preventing early liquidation.

### Cross-Margin Benefits

* **Capital Efficiency for the Portfolio:** Cross-margin accounts enhance capital efficiency by allowing the entire portfolio to serve as collateral, reducing total margin requirements and enabling more trading activity with the same capital. This approach allows for offsetting profits and losses across different positions, optimizing the use of funds and minimizing the risk of liquidation.
* **Lower Margin Requirements:** Cross-margin accounts usually require lower margin, providing benefits for both sophisticated and retail traders.
* **Automatic Risk Management:** IntentX automatically calculates and transfers margin between open positions to maintain required margin levels, aiding traders during volatile market conditions.
* **Risk/Reward Optimization:** Traders can adjust leverage across positions to suit their risk preferences.
* **Portfolio Margining:** Unrealized profits from one position can offset the margin requirements of another, preventing liquidation.

### Account Management Simplified

* **Unified Interface:** IntentX offers a single, user-friendly interface where traders can easily monitor and manage all their open positions, assess their overall risk, and make informed trading decisions.
* **Real-Time Updates:** The platform provides real-time updates on market conditions and portfolio performance, helping traders to respond promptly to market changes.
* **Automated Calculations:** All necessary calculations related to margin requirements and potential profits or losses are automatically performed and displayed, simplifying the trading process for users.

<figure><img src="/files/5Qpo4XafVuwsQv6ibkFA" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/e9fvO26zegYyPOREvEJW" alt=""><figcaption></figcaption></figure>

### Managing Portfolio Risk

* **Visual Risk Indicators:** IntentX visually displays risk levels associated with your portfolio, providing clear indicators to help you understand when to take action to prevent liquidation.
* **Dynamic Adjustments:** The platform automatically adjusts to market conditions, providing real-time feedback on the risk levels associated with each open position.
* **Proactive Notifications:** Traders receive immediate notifications on the front-end when risk levels increase, allowing for timely intervention to adjust positions or add collateral.

### Conclusion

IntentX’s cross-margin account system is designed for efficient and secure trading, offering lower margin requirements, automatic risk management, and simplified account management. With these features, traders can navigate the market confidently while optimizing risk and reward.


# Understanding Funding Rates

### Introduction

Funding rates are crucial components in the trading of perpetual contracts on IntentX. These are periodic payments exchanged between traders and solvers who hold positions in perpetual contracts. The funding rate mechanism ensures that the price of the perpetual contract remains close to the underlying asset's spot price.

### How Funding Rates Work

* **Positive and Negative Rates:** Funding rates can be either positive or negative, fluctuating based on the price difference between the perpetual contract and the spot price of the underlying asset.&#x20;
  * A **positive** funding rate occurs when the perpetual contract price is higher than the spot price, resulting in traders with long positions paying solvers holding corresponding short positions. This payment discourages traders from opening/holding long positions when the perp price is significantly higher than the spot price, as it becomes costly to maintain these positions. &#x20;
  * Conversely, a **negative** funding rate arises when the perpetual contract price is lower than the spot price, leading to solvers with short positions compensating traders with corresponding long positions. This mechanism discourages maintaining short positions when the perp price is significantly lower than the spot price, as it becomes expensive to hold short positions.
* **Price Alignment:** This funding rate mechanism ensures that the perpetual contract price aligns closely with the spot price of the underlying asset, maintaining market stability and fairness.

### Key Features of Funding Rates on IntentX

* **Solvers-Driven Pricing:** IntentX's pricing data is primarily influenced by the rates set by Solvers, ensuring accurate and reliable information for calculating funding rates. While Solvers often engage with CEXs, they are not limited to these platforms and can also interact with DEXs or other markets, offering a broader and more flexible pricing foundation.
* **Solver Interaction:** Funding rates are determined through interactions between traders and solvers, ensuring that the rates are competitive and market-driven.

{% hint style="info" %}
**Note:** Currently the solver will not charge or credit funding fees if the amount to do so is lower than the blockchain gas cost. This is because every funding rate update requires an on-chain interaction with the trade position.
{% endhint %}

### Importance for Traders

Understanding funding rates is vital for traders on IntentX as these rates influence the cost of maintaining open positions in the market. Traders should consider the funding rates when planning their trading strategies, as these rates can impact the profitability of trades over time.

### Conclusion

Funding rates play a pivotal role in the trading of perpetual contracts on IntentX. With a mechanism that ensures price alignment with the underlying asset and provides a fair trading environment, funding rates are integral to the profitable and strategic trading of perpetual contracts on the platform.


# Pricing Data and the Role of Oracles

### Introduction

IntentX offers a unique approach to pricing data, primarily driven by the function of solvers, who compete to provide the most competitive and accurate quotes. IntentX does not mandate data streaming from any one source (i.e. CEXs). Instead, it allows solvers the flexibility to stream quotes from various sources, including but not limited to CEXs and DEXs, thereby reflecting broader market conditions.&#x20;

This openness allows solvers to source liquidity from the most plentiful and cheap locations to offer the best order execution to traders.

### Pricing Data Source

* **Solvers-Driven Quotes:** At the core of IntentX's pricing data are the Solvers, who actively stream quotes to the platform. These Solvers have the liberty to derive their data from multiple sources, ensuring that the prices on IntentX are not only competitive but also an accurate reflection of the market dynamics.
* **Data Accuracy:** Since Solvers compete to offer the best quotes, the pricing data on IntentX is both reliable and timely. This competitive environment minimizes slippage, providing traders with a seamless and efficient trading experience.

### The Role of Oracles

* **Dispute Resolution:** Oracles at IntentX are not primarily engaged in data verification, but play a crucial role in dispute resolution. They step in as authoritative entities in rare cases of disagreements or uncertainties regarding pricing data, ensuring fair and transparent trading practices.
* **Liquidation and Account Health:** Oracles are instrumental in the liquidation process when a party's margin falls below the required level. They evaluate account and position health using oracle pricing, initiating liquidation through a neutral third party when necessary. This mechanism ensures that the collateral deposited is adequate and won't lead to immediate account liquidation.

{% hint style="info" %}
**Note:** Future versions be oracle-less to maximize decentralization and eliminate manipulation risk.
{% endhint %}

### Benefits of the Approach

* **Reliability:** The competitive environment among Solvers ensures that traders on IntentX have access to reliable and accurate pricing information, fostering confidence in the platform's trading environment.
* **Security:** With oracles acting as neutral third parties in the liquidation process and dispute resolution, trading on IntentX is secure. This structure protects traders from potential manipulation, ensuring fair and transparent settlement of trades.
* **Efficiency:** The Solver-driven approach to pricing data ensures efficient and responsive trading services on IntentX, characterized by minimal latency and maximum accuracy in pricing.

### Conclusion

IntentX’s innovative approach to pricing data, driven by the competitive function of Solvers and supported by the role of oracles, offers a secure, reliable, and efficient trading environment for users. This structure, which allows for flexibility and competition among Solvers while utilizing oracles for liquidation and dispute resolution, makes IntentX a resilient and fair platform that truly reflects market conditions.


# Unrealized Profit and Loss (uPNL)

### Introduction

Unrealized Profit and Loss (UPNL) is a crucial metric for traders on IntentX, providing a real-time snapshot of potential gains or losses associated with active positions. UPNL allows traders to make informed decisions, understanding the financial performance of their open trades.

### UPNL Calculation

* **Dynamic Evaluation:** UPNL is calculated dynamically, reflecting the potential gains or losses a trader would incur if they decide to close their active positions at the prevailing market price.
* **Formula:** UPNL is computed by evaluating the difference between the average entry price of a position and the current index price, expressed in USD terms. The formula is as follows:&#x20;

```
Formula: UPNL = (Current Index Price - Average Entry Price) * Position Size
```

* **Continuous Update:** The UPNL value is continuously updated to provide traders with the most accurate representation of their trading performance as market conditions change.

### Importance of UPNL

* **Informed Trading:** UPNL provides traders with valuable insights into the profitability of their open positions, helping them make timely and informed trading decisions.
* **Risk Management:** By monitoring UPNL, traders can effectively manage their risk, understanding when to close positions to maximize profits or minimize losses.
* **Strategic Planning:** UPNL is a vital tool for planning trading strategies, allowing traders to adjust their positions in response to market movements and potential profit or loss scenarios.

### UPNL Management Tips

* **Monitor Regularly:** Traders should regularly check their UPNL to stay informed about the performance of their open positions and respond to market changes proactively.
* **Understand Market Volatility:** UPNL values are subject to market volatility. Traders should be aware of market conditions and trends that might impact UPNL and adjust their strategies accordingly.

### Conclusion

Understanding and effectively managing UPNL is fundamental for successful trading on IntentX. By continuously monitoring UPNL and responding strategically to its changes, traders can maximize their profits, minimize their losses, and navigate the IntentX trading environment with confidence and precision.


# Open Interest (OI) and Market Activity

### Introduction

Open Interest (OI) is a crucial metric on IntentX, providing insights into the market's overall activity and liquidity. It serves as a barometer for trader participation and market health.

### Understanding Open Interest (OI)

* **Definition:** Open Interest (OI) represents the total value of active perpetual contracts that have not been settled or closed.&#x20;
* **Calculation:** OI is dynamically determined by the deposits made by solvers and their capacity to facilitate trades on the platform. It is expressed as the ratio of current OI to available OI.&#x20;

```
Formula: OI Ratio = Current OI / Available OI
```

* As the current OI approaches the total available, it signifies a highly active market. However, this also implies that the initiation of new trades may be constrained until existing positions are closed.&#x20;
* Each blockchain will have its own distinct OI since solvers allocate their capital to fulfill orders where demand is highest.&#x20;

{% hint style="info" %}
IntentX does not impose restrictions on total OI or OI limits for each pair. Instead, these limits are determined by the support our network of solvers can provide at any given moment.
{% endhint %}

### Significance of OI

* **Market Activity Indicator:** High OI indicates active trading and significant participation, suggesting a liquid and dynamic market.
* **Sentiment Analysis:** Changes in OI can provide insights into market sentiment. Increasing OI may signal new money entering the market, while decreasing OI might indicate a withdrawal of funds.
* **Volume and OI Relationship:** Analyzing OI with trading volume offers deeper insights into market trends. For instance, rising volume and OI might signify a strengthening trend.

### Trading Examples

* **Example 1: High OI and Market Entry**
  * A trader observes a rising OI on the BTC/USDC perpetual contract. The increasing OI suggests that more traders are entering the market, possibly anticipating a bullish trend. The trader decides to open a long position, aligning with the market sentiment.
* **Example 2: Decreasing OI and Position Adjustment**
  * A trader notices a gradual decrease in OI on the ETH/USDC perpetual contract. This decline might indicate that traders are closing their positions, possibly expecting a bearish market. To mitigate risk, the trader decides to reduce his long position size.
* **Example 3: OI and Volume Analysis**
  * A trader sees that while the OI on the LTC/USDC perpetual contract is increasing, the trading volume is decreasing. This divergence might suggest a weakening trend. Carol decides to wait and not open new positions until the market shows clearer signals.

{% hint style="info" %}
**Note:** These examples are for illustrative purposes only and should not be taken as financial advice.
{% endhint %}

### Managing Market Activity

* **Monitoring OI:** Traders should monitor OI levels to understand market activity and liquidity, informing their trading strategies and risk management practices.
* **Understanding Market Limits:** When OI is high, traders might face limitations on opening new positions. Awareness of these constraints is crucial for effective trade planning and execution.
* **Strategic Trading:** Informed by OI data, traders can make strategic decisions, entering or exiting positions at optimal times to capitalize on market conditions.

### Conclusion

Open Interest (OI) is a pivotal metric for traders on IntentX. By understanding and monitoring OI, traders can effectively navigate the IntentX market, making informed decisions that align with market trends and liquidity levels.


# Withdrawal Process and Security Measures

### Introduction

The withdrawal process on IntentX is meticulously designed to ensure security and transparency, providing users with a seamless experience while prioritizing the safety of their assets. This document outlines the withdrawal process and the security measures implemented to safeguard users’ funds.

### Withdrawal Process

* **Request Initiation:** Users initiate the withdrawal process by submitting a withdrawal request. This request is immediately acknowledged by the system, initiating the security protocols designed to protect the assets during the withdrawal process.
* **Fraud-Proof Window:** Upon receiving a withdrawal request, IntentX activates a Fraud-Proof Window **(12 hours)**. This is a predefined time interval designed to prevent fraudulent activities and double-spending. During this window, the system meticulously verifies the legitimacy and accuracy of the withdrawal request.
* **Withdrawal Approval:** After the Fraud-Proof Window, and once the withdrawal request is verified as legitimate, the system approves the withdrawal. The funds are then securely transferred to the user’s designated account.
* **Cancel Withdrawal:** After a withdraw request has been intiated, users may cancel their request at any time during the Fruad-Proof Window, and the funds will be allocated back into the trading account.
* **Multiple Withdraw Requests:** Note that if users queue a second withdraw request while one is currently active, it will reset the entire withdraw to 12 hours (including the initial).

{% hint style="info" %}
**Note:** IntentX is considering integrating third-party services to expedite the withdrawal process in future versions. These services will function during the Fraud-Proof Window to authenticate the legitimacy of the withdrawal request swiftly and efficiently.
{% endhint %}

### Security Measures

* **Two-Factor Authentication (2FA):** IntentX recommends users enable 2FA to add an extra layer of security to their accounts. This feature requires users to provide two types of identification before they can access their accounts, significantly reducing the risk of unauthorized access.
* **Encryption Protocols:** IntentX employs advanced encryption protocols to protect sensitive data during transmission. These protocols encrypt the data, making it unreadable to unauthorized individuals, thereby safeguarding the users’ information and assets.
* **Audits:** To ensure the platform’s security infrastructure remains robust and up-to-date, IntentX will conduct smart-contract audits. These audits will identify and rectify potential vulnerabilities, ensuring a secure trading environment.

### Conclusion

The withdrawal process at IntentX is a blend of user-friendly procedures and stringent security measures designed to provide a secure and smooth experience for users. With features like the Fraud-Proof Window and 2FA, IntentX demonstrates a strong commitment to safeguarding users’ assets while maintaining an efficient and reliable withdrawal process.


# Advanced Charts by TradingView

The IntentX trading platform offers a comprehensive suite of tools and options to enhance your trading analysis. These include:

* **Candlestick Charts**: Visual representations of asset price movements over customizable timeframes, showing open, close, high, and low prices.
* **Time Intervals**
* **Drawing Tools**
* **Technical Indicators**

TradingView allows users to create tailored layouts for technical analysis. Customize your charts to align with your strategies and preferences using layouts and templates.

### Candlestick Charts

Candlestick charts depict price movements of assets over a specified period. Each candlestick displays the open, close, high, and low prices for that timeframe.

To customize your candlestick chart in TradingView:

1. **Double-click** any candle to open its settings.

<figure><img src="/files/nyoEENoJtdvJhOqqejYz" alt=""><figcaption></figcaption></figure>

2. **Symbol**: Change the color of candlesticks, customize precision, and adjust the timezone.
3. **Status Line**: Access advanced options like OHLC values, bar change values, volume, and background chart color intensity.
4. **Scales**: Integrate labels such as symbol names, high and low prices, indicator names, values, and date formats.
5. **Canvas**: Edit background and line segment colors.

### Candlestick Intervals

The default timeframe represented by each candlestick is 1 day.

For additional intervals, click the "D" on the upper left-hand side to choose a new interval or click the \[Favorite] icon to add more intervals to your defaults.

<figure><img src="/files/EgdRnOMTGVz0qtpYyAIM" alt=""><figcaption></figcaption></figure>

### Drawing Tools

The left-hand side of the chart provides various drawing tools for chart analysis. Right-click each tool to discover variations of its primary function. The default selection includes several essential tools for in-depth analysis.

<figure><img src="/files/xEGnFIfhPNo2ASXFnRPH" alt=""><figcaption></figcaption></figure>

### Technical Indicators

Technical indicators like Moving Averages or Bollinger Bands can be added to your TradingView chart. To add indicators:

1. Click the \[Indicators] icon to access the available options.

<figure><img src="/files/ZgIQ5TNauJXpz72fRHq9" alt=""><figcaption></figcaption></figure>

To remove an indicator, click it to bring up the floating toolbox, then click the bin icon.

### How to reset the chart?

To remove a technical indicator, simply click on it to bring up the floating toolbox, then click on the bin icon.&#x20;

If you want to reset the whole chart, right-click anywhere on the chart and click **\[Reset chart view]**, or press **\[Alt + R]** on your keyboard.

<figure><img src="/files/w1cCzWPIsdpx6rREj8bO" alt=""><figcaption></figcaption></figure>

### Conclusion

The IntentX trading interface, powered by TradingView, provides a rich array of customizable tools and options to support your trading analysis. From detailed candlestick charts to technical indicators and versatile drawing tools, IntentX ensures you have everything you need for effective and personalized trading strategies. Keep up with market trends, effortlessly track [BTCUSD live price](https://www.tradingview.com/symbols/BTCUSD/), and stay ahead of other cryptocurrency fluctuations.


# Pair List

IntentX's unique trading architecture allows for the widest range of assets tradable anywhere on-chain.

Below is a list of the IntentX trading pairs at current time with its associated max leverage (**285 total**):

<table><thead><tr><th width="146">Pair ID (#)</th><th width="302">Asset Name</th><th width="157">Pair Ticker</th><th>Leverage</th></tr></thead><tbody><tr><td>1</td><td>Bitcoin</td><td>BTC / USDT</td><td>60x</td></tr><tr><td>2</td><td>Ethereum</td><td>ETH / USDT</td><td>60x</td></tr><tr><td>3</td><td>BNB</td><td>BNB / USDT</td><td>50x</td></tr><tr><td>4</td><td>Solana</td><td>SOL / USDT</td><td>40x</td></tr><tr><td>5</td><td>USDC</td><td>USDC / USDT</td><td>40x</td></tr><tr><td>6</td><td>Ripple</td><td>XRP / USDT</td><td>50x</td></tr><tr><td>7</td><td>Dogecoin</td><td>DOGE / USDT</td><td>60x</td></tr><tr><td>8</td><td>Toncoin</td><td>TON / USDT</td><td>25x</td></tr><tr><td>9</td><td>Tron</td><td>TRON / USDT</td><td>40x</td></tr><tr><td>10</td><td>Cardano</td><td>ADA / USDT</td><td>50x</td></tr><tr><td>11</td><td>Avalanche</td><td>AVAX / USDT</td><td>40x</td></tr><tr><td>12</td><td>Shiba Inu</td><td>1000SHIB / USDT</td><td>40x</td></tr><tr><td>13</td><td>Chainlink</td><td>LINK / USDT</td><td>50x</td></tr><tr><td>14</td><td>Bitcoin Cash</td><td>BCH / USDT</td><td>50x</td></tr><tr><td>15</td><td>Polkadot</td><td>DOT / USDT</td><td>40x</td></tr><tr><td>16</td><td>Litecoin</td><td>LTC / USDT</td><td>50x</td></tr><tr><td>17</td><td>Kaspa</td><td>KAS / USDT</td><td>20x</td></tr><tr><td>18</td><td>Uniswap</td><td>UNI / USDT</td><td>40x</td></tr><tr><td>19</td><td>Internet Computer</td><td>ICP / USDT</td><td>25x</td></tr><tr><td>20</td><td>Artificial Superintelligence Alliance</td><td>FET / USDT</td><td>25x</td></tr><tr><td>21</td><td>Monero</td><td>XMR / USDT</td><td>25x</td></tr><tr><td>22</td><td>Sui</td><td>SUI / USDT</td><td>40x</td></tr><tr><td>23</td><td>Pepe</td><td>1000PEPE / USDT</td><td>40x</td></tr><tr><td>24</td><td>Aptos</td><td>APT / USDT</td><td>40x</td></tr><tr><td>25</td><td>Stellar</td><td>XLM / USDT</td><td>25x</td></tr><tr><td>26</td><td>POL</td><td>POL / USDT</td><td>25x</td></tr><tr><td>27</td><td>Ethereum Classic</td><td>ETC / USDT</td><td>50x</td></tr><tr><td>28</td><td>TAO</td><td>TAO / USDT</td><td>25x</td></tr><tr><td>29</td><td>Stacks</td><td>STX / USDT</td><td>25x</td></tr><tr><td>30</td><td>Immutable</td><td>IMX / USDT</td><td>25x</td></tr><tr><td>31</td><td>Aave</td><td>AAVE / USDT</td><td>25x</td></tr><tr><td>32</td><td>Filecoin</td><td>FIL / USDT</td><td>40x</td></tr><tr><td>33</td><td>Injective</td><td>INJ / USDT</td><td>25x</td></tr><tr><td>34</td><td>Arbitrum</td><td>ARB / USDT</td><td>40x</td></tr><tr><td>35</td><td>Render</td><td>RENDER / USDT</td><td>25x</td></tr><tr><td>36</td><td>Hedera</td><td>HBAR / USDT</td><td>25x</td></tr><tr><td>37</td><td>Optimism</td><td>OP / USDT</td><td>40x</td></tr><tr><td>38</td><td>Vechain</td><td>VET / USDT</td><td>40x</td></tr><tr><td>39</td><td>Cosmos</td><td>ATOM / USDT</td><td>40x</td></tr><tr><td>40</td><td>Fantom</td><td>FTM / USDT</td><td>40x</td></tr><tr><td>41</td><td>dogwifhat</td><td>WIF / USDT</td><td>40x</td></tr><tr><td>42</td><td>THORchain</td><td>RUNE / USDT</td><td>25x</td></tr><tr><td>43</td><td>The Graph</td><td>GRT / USDT</td><td>25x</td></tr><tr><td>44</td><td>Arweave</td><td>AR / USDT</td><td>20x</td></tr><tr><td>45</td><td>Floki</td><td>1000FLOKI / USDT</td><td>40x</td></tr><tr><td>46</td><td>Bonk</td><td>1000BONK / USDT</td><td>40x</td></tr><tr><td>47</td><td>Celestia</td><td>TIA / USDT</td><td>20x</td></tr><tr><td>48</td><td>Pyth Network</td><td>PYTH / USDT</td><td>40x</td></tr><tr><td>49</td><td>Algorand</td><td>ALGO / USDT</td><td>20x</td></tr><tr><td>50</td><td>Jupiter</td><td>JUP / USDT</td><td>25x</td></tr><tr><td>51</td><td>Sei</td><td>SEI / USDT</td><td>40x</td></tr><tr><td>52</td><td>JasmyCoin</td><td>JASMY / USDT</td><td>20x</td></tr><tr><td>53</td><td>Bitcoin SV</td><td>BSV / USDT</td><td>25x</td></tr><tr><td>54</td><td>MANTRA</td><td>OM / USDT</td><td>25x</td></tr><tr><td>55</td><td>Lido DAO</td><td>LDO / USDT</td><td>40x</td></tr><tr><td>56</td><td>Quant</td><td>QNT / USDT</td><td>20x</td></tr><tr><td>57</td><td>Ondo</td><td>ONDO / USDT</td><td>25x</td></tr><tr><td>58</td><td>Flow</td><td>FLOW / USDT</td><td>20x</td></tr><tr><td>59</td><td>Nervos Network</td><td>CKB / USDT</td><td>20x</td></tr><tr><td>60</td><td>Notcoin</td><td>NOT / USDT</td><td>20x</td></tr><tr><td>61</td><td>Brett</td><td>BRETT / USDT</td><td>10x</td></tr><tr><td>62</td><td>Beam</td><td>BEAMX / USDT</td><td>40x</td></tr><tr><td>63</td><td>EOS</td><td>EOS / USDT</td><td>50x</td></tr><tr><td>64</td><td>MultiverseX</td><td>EGLD / USDT</td><td>25x</td></tr><tr><td>65</td><td>Axie Infinity</td><td>AXS / USDT</td><td>40x</td></tr><tr><td>66</td><td>Starknet</td><td>STRK / USDT</td><td>25x</td></tr><tr><td>67</td><td>Popcat</td><td>POPCAT / USDT</td><td>40x</td></tr><tr><td>68</td><td>Worldcoin</td><td>WLD / USDT</td><td>15x</td></tr><tr><td>69</td><td>NEO</td><td>NEO / USDT</td><td>40x</td></tr><tr><td>70</td><td>ORDI</td><td>ORDI / USDT</td><td>20x</td></tr><tr><td>71</td><td>GALA</td><td>GALA / USDT</td><td>40x</td></tr><tr><td>72</td><td>Tezos</td><td>XTZ / USDT</td><td>20x</td></tr><tr><td>73</td><td>Conflux</td><td>CFX / USDT</td><td>40x</td></tr><tr><td>74</td><td>eCash</td><td>1000XEC / USDT</td><td>20x</td></tr><tr><td>75</td><td>BinaryX</td><td>BNX / USDT</td><td>10x</td></tr><tr><td>76</td><td>The Sandbox</td><td>SAND / USDT</td><td>40x</td></tr><tr><td>77</td><td>Ethereum Name Service</td><td>ENS / USDT</td><td>20x</td></tr><tr><td>78</td><td>Wormhole</td><td>W / USDT</td><td>20x</td></tr><tr><td>79</td><td>Decentraland</td><td>MANA / USDT</td><td>40x</td></tr><tr><td>80</td><td>Pendle</td><td>PENDLE / USDT</td><td>20x</td></tr><tr><td>81</td><td>Ronin</td><td>RONIN / USDT</td><td>25x</td></tr><tr><td>82</td><td>Klaytn</td><td>KLAY / USDT</td><td>25x</td></tr><tr><td>83</td><td>Dogs</td><td>DOGS / USDT</td><td>25x</td></tr><tr><td>84</td><td>Mina Protocol</td><td>MINA / USDT</td><td>25x</td></tr><tr><td>85</td><td>Zcash</td><td>ZEC / USDT</td><td>25x</td></tr><tr><td>86</td><td>Chiliz</td><td>CHZ / USDT</td><td>25x</td></tr><tr><td>87</td><td>Luna Classic</td><td>1000LUNC / USDT</td><td>25x</td></tr><tr><td>88</td><td>PancakeSwap</td><td>CAKE / USDT</td><td>25x</td></tr><tr><td>89</td><td>Synthetix</td><td>SNX / USDT</td><td>25x</td></tr><tr><td>90</td><td>ApeCoin</td><td>APE / USDT</td><td>40x</td></tr><tr><td>91</td><td>Astar</td><td>ASTR / USDT</td><td>20x</td></tr><tr><td>92</td><td>LayerZero</td><td>ZRO / USDT</td><td>20x</td></tr><tr><td>93</td><td>Livepeer</td><td>LPT / USDT</td><td>25x</td></tr><tr><td>94</td><td>Ethena</td><td>ENA / USDT</td><td>10x</td></tr><tr><td>95</td><td>Oasis Network</td><td>ROSE / USDT</td><td>25x</td></tr><tr><td>96</td><td>BOOK OF MEME</td><td>BOME / USDT</td><td>25x</td></tr><tr><td>97</td><td>IOTA</td><td>IOTA / USDT</td><td>25x</td></tr><tr><td>98</td><td>ZkSync</td><td>ZK / USDT</td><td>20x</td></tr><tr><td>99</td><td>SuperVerse</td><td>SUPER / USDT</td><td>25x</td></tr><tr><td>100</td><td>Axelar</td><td>AXL / USDT</td><td>25x</td></tr><tr><td>101</td><td>cat in a dogs world</td><td>MEW / USDT</td><td>25x</td></tr><tr><td>102</td><td>Compound</td><td>COMP / USDT</td><td>25x</td></tr><tr><td>103</td><td>SafePal</td><td>SFP / USDT</td><td>25x</td></tr><tr><td>104</td><td>Trust Wallet</td><td>TWT / USDT</td><td>25x</td></tr><tr><td>105</td><td>Neiro</td><td>NEIRO / USDT</td><td>25x</td></tr><tr><td>106</td><td>Turbo</td><td>TURBO / USDT</td><td>25x</td></tr><tr><td>107</td><td>Dymension</td><td>DYM / USDT</td><td>25x</td></tr><tr><td>108</td><td>Kava</td><td>KAVA / USDT</td><td>25x</td></tr><tr><td>109</td><td>Blur</td><td>BLUR / USDT</td><td>25x</td></tr><tr><td>110</td><td>Curve DAO</td><td>CRV / USDT</td><td>25x</td></tr><tr><td>111</td><td>Aevo</td><td>AEVO / USDT</td><td>25x</td></tr><tr><td>112</td><td>IoTex</td><td>IOTX / USDT</td><td>20x</td></tr><tr><td>113</td><td>Reserve Rights</td><td>RSR / USDT</td><td>25x</td></tr><tr><td>114</td><td>Kusama</td><td>KSM / USDT</td><td>25x</td></tr><tr><td>115</td><td>GMT</td><td>GMT / USDT</td><td>25x</td></tr><tr><td>116</td><td>1Inch</td><td>1INCH / USDT</td><td>25x</td></tr><tr><td>117</td><td>WOO</td><td>WOO / USDT</td><td>20x</td></tr><tr><td>118</td><td>ConstitutionDAO</td><td>PEOPLE / USDT</td><td>25x</td></tr><tr><td>119</td><td>Dash</td><td>DASH / USDT</td><td>25x</td></tr><tr><td>120</td><td>Holo</td><td>HOT / USDT</td><td>25x</td></tr><tr><td>121</td><td>Golem</td><td>GLM / USDT</td><td>25x</td></tr><tr><td>122</td><td>Manta Network</td><td>MANTA / USDT</td><td>25x</td></tr><tr><td>123</td><td>Memecoin</td><td>MEME / USDT</td><td>40x</td></tr><tr><td>124</td><td>Basic Attention Token</td><td>BAT / USDT</td><td>20x</td></tr><tr><td>125</td><td>Terra</td><td>LUNA2 / USDT</td><td>8x</td></tr><tr><td>126</td><td>Jito</td><td>JTO / USDT</td><td>40x</td></tr><tr><td>127</td><td>Gravity</td><td>G / USDT</td><td>20x</td></tr><tr><td>128</td><td>RATS</td><td>1000RATS / USDT</td><td>25x</td></tr><tr><td>129</td><td>Zilliqa</td><td>ZIL / USDT</td><td>25x</td></tr><tr><td>130</td><td>Ankr Network</td><td>ANKR / USDT</td><td>25x</td></tr><tr><td>131</td><td>Celo</td><td>CELO / USDT</td><td>25x</td></tr><tr><td>132</td><td>0x Protocol</td><td>ZRX / USDT</td><td>25x</td></tr><tr><td>133</td><td>Enjin Coin</td><td>ENJ / USDT</td><td>40x</td></tr><tr><td>134</td><td>Ravencoin</td><td>RVN / USDT</td><td>20x</td></tr><tr><td>135</td><td>Qtum</td><td>QTUM / USDT</td><td>25x</td></tr><tr><td>136</td><td>Ether.fi</td><td>ETHFI / USDT</td><td>25x</td></tr><tr><td>137</td><td>Sun Token</td><td>SUN / USDT</td><td>20x</td></tr><tr><td>138</td><td>io.net</td><td>IO / USDT</td><td>20x</td></tr><tr><td>139</td><td>Space ID</td><td>ID / USDT</td><td>20x</td></tr><tr><td>140</td><td>SSV Network</td><td>SSV / USDT</td><td>20x</td></tr><tr><td>141</td><td>Arkham</td><td>ARKM / USDT</td><td>20x</td></tr><tr><td>142</td><td>ZetaChain</td><td>ZETA / USDT</td><td>25x</td></tr><tr><td>143</td><td>GMX</td><td>GMX / USDT</td><td>25x</td></tr><tr><td>144</td><td>Mask Network</td><td>MASK / USDT</td><td>40x</td></tr><tr><td>145</td><td>Threshold Network</td><td>T / USDT</td><td>20x</td></tr><tr><td>146</td><td>Gas</td><td>GAS / USDT</td><td>25x</td></tr><tr><td>147</td><td>Flux</td><td>FLUX / USDT</td><td>25x</td></tr><tr><td>148</td><td>Saga</td><td>SAGA / USDT</td><td>20x</td></tr><tr><td>149</td><td>Rocket Pool</td><td>RPL / USDT</td><td>25x</td></tr><tr><td>150</td><td>Polymesh</td><td>POLYX / USDT</td><td>25x</td></tr><tr><td>151</td><td>Open Campus</td><td>EDU / USDT</td><td>20x</td></tr><tr><td>152</td><td>DYDX</td><td>DYDX / USDT</td><td>40x</td></tr><tr><td>153</td><td>EthereumPoW</td><td>ETHW / USDT</td><td>25x</td></tr><tr><td>154</td><td>Metis</td><td>METIS / USDT</td><td>25x</td></tr><tr><td>155</td><td>Biconomy</td><td>BICO / USDT</td><td>10x</td></tr><tr><td>156</td><td>Big Time</td><td>BIGTIME / USDT</td><td>25x</td></tr><tr><td>157</td><td>Alt Layer</td><td>ALT / USDT</td><td>25x</td></tr><tr><td>158</td><td>Skale</td><td>SKL / USDT</td><td>20x</td></tr><tr><td>159</td><td>Illuvium</td><td>ILV / USDT</td><td>40x</td></tr><tr><td>160</td><td>COTI</td><td>COTI / USDT</td><td>25x</td></tr><tr><td>161</td><td>UMA</td><td>UMA / USDT</td><td>20x</td></tr><tr><td>162</td><td>Band Protocol</td><td>BAND / USDT</td><td>20x</td></tr><tr><td>163</td><td>Harmony</td><td>ONE / USDT</td><td>20x</td></tr><tr><td>164</td><td>yearn.finance</td><td>YFI / USDT</td><td>25x</td></tr><tr><td>165</td><td>Sushi</td><td>SUSHI / USDT</td><td>25x</td></tr><tr><td>166</td><td>NEM</td><td>XEM / USDT</td><td>25x</td></tr><tr><td>167</td><td>BounceBit</td><td>BB / USDT</td><td>25x</td></tr><tr><td>168</td><td>Chromia</td><td>CHR / USDT</td><td>25x</td></tr><tr><td>169</td><td>Loopring</td><td>LRC / USDT</td><td>20x</td></tr><tr><td>170</td><td>Tellor Tributes</td><td>TRB / USDT</td><td>40x</td></tr><tr><td>171</td><td>Yield Guild Games</td><td>YGG / USDT</td><td>25x</td></tr><tr><td>172</td><td>Ontology</td><td>ONT / USDT</td><td>25x</td></tr><tr><td>173</td><td>Vanar Chain</td><td>VANRY / USDT</td><td>20x</td></tr><tr><td>174</td><td>Frax Share</td><td>FXS / USDT</td><td>20x</td></tr><tr><td>175</td><td>Alchemy Pay</td><td>ACH / USDT</td><td>20x</td></tr><tr><td>176</td><td>Storj</td><td> STORJ / USDT</td><td>15x</td></tr><tr><td>177</td><td>Pixels</td><td> PIXEL / USDT</td><td>25x</td></tr><tr><td>178</td><td>Banana Gun</td><td>BANANA / USDT</td><td>20x</td></tr><tr><td>179</td><td>API3</td><td>API3 / USDT</td><td>25x</td></tr><tr><td>180</td><td>ICON</td><td>ICX / USDT</td><td>20x</td></tr><tr><td>181</td><td>Solar</td><td>SXP / USDT</td><td>15x</td></tr><tr><td>182</td><td>Xai</td><td>XAI / USDT</td><td>25x</td></tr><tr><td>183</td><td>Horizen</td><td>ZEN / USDT</td><td>20x</td></tr><tr><td>184</td><td>UXLINK</td><td>UXLINK / USDT</td><td>25x</td></tr><tr><td>185</td><td>Trader Joe</td><td>JOE / USDT</td><td>8x</td></tr><tr><td>186</td><td>Lisk</td><td>LSK / USDT</td><td>25x</td></tr><tr><td>187</td><td>TrueFi</td><td>TRU / USDT</td><td>20x</td></tr><tr><td>188</td><td>Venus</td><td>XVS / USDT</td><td>20x</td></tr><tr><td>189</td><td>Balancer</td><td>BAL / USDT</td><td>25x</td></tr><tr><td>190</td><td>WAX</td><td>WAXP / USDT</td><td>25x</td></tr><tr><td>191</td><td>Ontology Gas</td><td>ONG / USDT</td><td>25x</td></tr><tr><td>192</td><td>iExec RLC</td><td>RLC / USDT</td><td>25x</td></tr><tr><td>193</td><td>Numeraire</td><td>NMR / USDT</td><td>8x</td></tr><tr><td>194</td><td>Cartesi</td><td>CTSI / USDT</td><td>25x</td></tr><tr><td>195</td><td>Powerledger</td><td>POWR / USDT</td><td>25x</td></tr><tr><td>196</td><td>Neutron</td><td>NTRN / USDT</td><td>25x</td></tr><tr><td>197</td><td>IOST</td><td>IOST / USDT</td><td>25x</td></tr><tr><td>198</td><td>TerraClassicUSD</td><td>USTC / USDT</td><td>40x</td></tr><tr><td>199</td><td>Coin98</td><td>C98 / USDT</td><td>25x</td></tr><tr><td>200</td><td>Dusk</td><td>DUSK / USDT</td><td>25x</td></tr><tr><td>201</td><td>Magic</td><td>MAGIC / USDT</td><td>20x</td></tr><tr><td>202</td><td>SuperRare</td><td>RARE / USDT</td><td>20x</td></tr><tr><td>203</td><td>Mines of Dalarnia</td><td>DAR / USDT</td><td>25x</td></tr><tr><td>204</td><td>Bounce</td><td>AUCTION / USDT</td><td>25x</td></tr><tr><td>205</td><td>Highstreet</td><td>HIGH / USDT</td><td>25x</td></tr><tr><td>206</td><td>Cyber</td><td>CYBER / USDT</td><td>15x</td></tr><tr><td>207</td><td>RSK Infrastructure Framework</td><td>RIF / USDT</td><td>25x</td></tr><tr><td>208</td><td>Artificial Intelligence Integral</td><td>AI / USDT</td><td>25x</td></tr><tr><td>209</td><td>Moonriver</td><td>MOVR / USDT</td><td>25x</td></tr><tr><td>210</td><td>Celer Network</td><td>CELR / USDT</td><td>25x</td></tr><tr><td>211</td><td>Fusionist</td><td>ACE / USDT</td><td>25x</td></tr><tr><td>212</td><td>Synapse</td><td>SYN / USDT</td><td>20x</td></tr><tr><td>213</td><td>Radiant</td><td>RDNT / USDT</td><td>20x</td></tr><tr><td>214</td><td>Syscoin</td><td>SYS / USDT</td><td>10x</td></tr><tr><td>215</td><td>Kyber Network Crystal</td><td>KNC / USDT</td><td>25x</td></tr><tr><td>216</td><td>Steem</td><td>STEEM / USDT</td><td>25x</td></tr><tr><td>217</td><td>Spell</td><td>SPELL / USDT</td><td>20x</td></tr><tr><td>218</td><td>Portal</td><td>PORTAL / USDT</td><td>25x</td></tr><tr><td>219</td><td>Liquity</td><td>LQTY / USDT</td><td>20x</td></tr><tr><td>220</td><td>Maverick Protocol</td><td>MAV  / USDT</td><td>15x</td></tr><tr><td>221</td><td>Dent</td><td>DENT / USDT</td><td>25x</td></tr><tr><td>222</td><td>Hooked Protocol</td><td>HOOK / USDT</td><td>20x</td></tr><tr><td>223</td><td>DODO</td><td>DODOX / USDT</td><td>15x</td></tr><tr><td>224</td><td>Omni Network</td><td>OMNI / USDT</td><td>10x</td></tr><tr><td>225</td><td>Orbs</td><td>ORBS / USDT</td><td>25x</td></tr><tr><td>226</td><td>StormX</td><td>STMX / USDT</td><td>8x</td></tr><tr><td>227</td><td>BakerySwap</td><td>BAKE / USDT</td><td>20x</td></tr><tr><td>228</td><td>Orchid Protocol</td><td>OXT / USDT</td><td>15x</td></tr><tr><td>229</td><td>Adventure Gold</td><td>AGLD / USDT</td><td>20x</td></tr><tr><td>230</td><td>LeverFi</td><td>LEVER / USDT</td><td>20x</td></tr><tr><td>231</td><td>Myro</td><td>MYRO / USDT</td><td>25x</td></tr><tr><td>232</td><td>My Neighbor Alice</td><td>ALICE / USDT</td><td>20x</td></tr><tr><td>233</td><td>Hashflow</td><td>HFT / USDT</td><td>20x</td></tr><tr><td>234</td><td>Lista DAO</td><td>LISTA / USDT</td><td>20x</td></tr><tr><td>235</td><td>Stargate Finance</td><td>STG / USDT</td><td>25x</td></tr><tr><td>236</td><td>Phoenix</td><td>PHB / USDT</td><td>20x</td></tr><tr><td>237</td><td>NFPrompt</td><td>NFP / USDT</td><td>25x</td></tr><tr><td>238</td><td>Metal</td><td>MTL / USDT</td><td>25x</td></tr><tr><td>239</td><td>ARPA</td><td>ARPA / USDT</td><td>20x</td></tr><tr><td>240</td><td>Verge</td><td>XVG / USDT</td><td>15x</td></tr><tr><td>241</td><td>Hifi Finance</td><td>HIFI / USDT</td><td>25x</td></tr><tr><td>242</td><td>Bancor Network</td><td>BNT / USDT</td><td>25x</td></tr><tr><td>243</td><td>Loom Network</td><td>LOOM / USDT</td><td>15x</td></tr><tr><td>244</td><td>Renzo</td><td>REZ / USDT</td><td>10x</td></tr><tr><td>245</td><td>ARK</td><td>ARK / USDT</td><td>15x</td></tr><tr><td>246</td><td>Origin Token</td><td>OGN / USDT</td><td>20x</td></tr><tr><td>247</td><td>Badger</td><td>BADGER / USDT</td><td>25x</td></tr><tr><td>248</td><td>Mobox</td><td>MBOX / USDT</td><td>25x</td></tr><tr><td>249</td><td>Reef</td><td>REEF / USDT</td><td>20x</td></tr><tr><td>250</td><td>Bluzelle</td><td>BLZ / USDT</td><td>10x</td></tr><tr><td>251</td><td>TokenFi</td><td>TOKEN / USDT</td><td>25x</td></tr><tr><td>252</td><td>NKN</td><td>NKN / USDT</td><td>20x</td></tr><tr><td>253</td><td>Stella</td><td>ALPHA / USDT</td><td>25x</td></tr><tr><td>254</td><td>Gitcoin</td><td>GTC / USDT</td><td>20x</td></tr><tr><td>255</td><td>Heroes of Mavia</td><td>MAVIA / USDT</td><td>25x</td></tr><tr><td>256</td><td>Alien Worlds</td><td>TLM / USDT</td><td>10x</td></tr><tr><td>257</td><td>Automata</td><td>ATA / USDT</td><td>20x</td></tr><tr><td>258</td><td>Tensor</td><td>TNSR / USDT</td><td>20x</td></tr><tr><td>259</td><td>OMG Network</td><td>OMG / USDT</td><td>205x</td></tr><tr><td>260</td><td>Aergo</td><td>AERGO / USDT</td><td>25x</td></tr><tr><td>261</td><td>NULS</td><td>NULS / USDT</td><td>25x</td></tr><tr><td>262</td><td>Bella Protocol</td><td>BEL / USDT</td><td>25x</td></tr><tr><td>263</td><td>Perpetual Protocol</td><td>PERP / USDT</td><td>25x</td></tr><tr><td>264</td><td>Ren</td><td>REN / USDT</td><td>25x</td></tr><tr><td>265</td><td>Quickswap</td><td>QUICK / USDT</td><td>25x</td></tr><tr><td>266</td><td>VIDT DAO</td><td>VIDT / USDT</td><td>25x</td></tr><tr><td>267</td><td>Litentry</td><td>LIT / USDT</td><td>20x</td></tr><tr><td>268</td><td>Biswap</td><td>BSW / USDT</td><td>25x</td></tr><tr><td>269</td><td>Flamingo Finance</td><td>FLM / USDT</td><td>8x</td></tr><tr><td>270</td><td>Voxies</td><td>VOXEL / USDT</td><td>10x</td></tr><tr><td>271</td><td>COMBO</td><td>COMBO / USDT</td><td>20x</td></tr><tr><td>272</td><td>SelfKey</td><td>KEY / USDT</td><td>20x</td></tr><tr><td>273</td><td>Tranchess</td><td>CHESS / USDT</td><td>25x</td></tr><tr><td>274</td><td>Linear</td><td>LINA / USDT</td><td>20x</td></tr><tr><td>275</td><td>Alpaca Finance</td><td>ALPACA / USDT</td><td>20x</td></tr><tr><td>276</td><td>AirDAO</td><td>AMB / USDT</td><td>8x</td></tr><tr><td>277</td><td>Safe</td><td>SAFE / USDT</td><td>20x</td></tr><tr><td>278</td><td>BarnBridge</td><td>BOND / USDT</td><td>25x</td></tr><tr><td>279</td><td>De.Fi</td><td>DEFI / USDT</td><td>10x</td></tr><tr><td>280</td><td>SATS</td><td>1000SATS / USDT</td><td>25x</td></tr><tr><td>281</td><td>BTCDOM Index</td><td>BTCDOM / USDT</td><td>8x</td></tr><tr><td>282</td><td>NeiroETH</td><td>NEIROETH / USDT</td><td>40x</td></tr><tr><td>283</td><td>BabyDoge</td><td>1MBABYDOGE / USDT</td><td>25x</td></tr><tr><td>284</td><td>Maker</td><td>MKR / USDT</td><td>40x</td></tr><tr><td>285</td><td>Theta Network</td><td>THETA / USDT</td><td>25x</td></tr><tr><td>286</td><td>Hamster Kombat</td><td>HMSTR / USDT</td><td>25x</td></tr><tr><td>287</td><td>Contentos</td><td>COS / USDT</td><td>20x</td></tr><tr><td>288</td><td>REI Network</td><td>REI / USDT</td><td>20x</td></tr><tr><td>289</td><td>League of Kingdoms</td><td>LOKA / USDT</td><td>20x</td></tr><tr><td>290</td><td>Aavegotchi</td><td>GHST / USDT</td><td>20x</td></tr><tr><td>291</td><td>Fio Protocol</td><td>FIO / USDT</td><td>20x</td></tr><tr><td>292</td><td>Eigenlayer</td><td>EIGEN / USDT</td><td>20x</td></tr><tr><td>293</td><td>DIA</td><td>DIA  / USDT</td><td>25x</td></tr><tr><td>294</td><td>Kadena</td><td>KDA  / USDT</td><td>25x</td></tr><tr><td>295</td><td>Scroll</td><td>SCR / USDT</td><td>25x</td></tr><tr><td>296</td><td>Simon's Cat</td><td>1000CAT / USDT</td><td>25x</td></tr><tr><td>297</td><td>Goatseus Maximus</td><td>GOAT / USDT</td><td>40x</td></tr><tr><td>298</td><td>MOODENG</td><td>MOODENG / USDT</td><td>40x</td></tr><tr><td>299</td><td>Santos FC Fan Token</td><td>SANTOS / USDT</td><td>20x</td></tr><tr><td>300</td><td>TROY</td><td>TROY / USDT</td><td>20x</td></tr><tr><td>301</td><td>PONKE</td><td>PONKE / USDT</td><td>40x</td></tr><tr><td>302</td><td>CoW Protocol</td><td>COW / USDT</td><td>20x</td></tr><tr><td>303</td><td>Cetus Protocol</td><td>CETUS / USDT</td><td>20x</td></tr><tr><td>304</td><td>Mog Coin</td><td>1000000MOG / USDT</td><td>40x</td></tr><tr><td>305</td><td>Grass</td><td>GRASS / USDT</td><td>20x</td></tr><tr><td>306</td><td>Drift Protocol</td><td>DRIFT / USDT</td><td>20x</td></tr><tr><td>307</td><td>Swell</td><td>SWELL / USDT</td><td>20x</td></tr><tr><td>308</td><td>Act 1 The AI Prophecy</td><td>ACT / USDT</td><td>40x</td></tr><tr><td>309</td><td>Peanut the Squirrel</td><td>PNUT / USDT</td><td>40x</td></tr><tr><td>310</td><td>sudeng</td><td>HIPPO / USDT</td><td>20x</td></tr><tr><td>311</td><td>Degen</td><td>DEGEN / USDT </td><td>20x</td></tr><tr><td>312</td><td>Comedian</td><td>BAN / USDT</td><td>20x</td></tr><tr><td>313</td><td>Akash Network</td><td>AKT / USDT</td><td>20x</td></tr></tbody></table>


# IntentX Solver Network

## **Introduction to the IntentX Solver**

At IntentX, we understand the pivotal role market makers play in ensuring liquidity, reducing market friction, and facilitating seamless trading experiences.&#x20;

Liquidity is the lifeblood of financial markets and we take a leading role in on-boarding new solvers, as well as establishing proprietary and exclusive strategies + agreements to service IntentX as the premier on-chain perps DEX.

Our exclusive approach and close working relationship with the solver network will allow IntentX to scale appropriately and continually offer the most competitive trading experience.&#x20;

This results in mutual value creation for all participants in the IntentX ecosystem:

<div data-full-width="false"><figure><img src="/files/eQbNkP8cwiOuO5YauXWT" alt=""><figcaption></figcaption></figure></div>

## IntentX Solver Onboarding

IntentX will work hand-in-hand to onboard exclusive Solvers onto the network to the mutual benefit of the platform and all participants.

**Benefits to IntentX:**

* **Enhanced Liquidity**: Ensure a steady flow of assets and reduced slippage.
* **Optimized Price Stability**: With dedicated market makers, the volatility is better managed, leading to more stable prices.
* **Tailored Offerings**: Exclusive partnerships mean custom solutions, aligning with IntentX's vision and our users' needs including increased open interest, greater pair availability, and more.

**Benefits to Market Makers:**

* **Exclusive Access and Order Flow**: Servicing IntentX exclusively offers market makers unique positioning within our ecosystem.
* **Capitalization:** IntentX offers capitalization to market makers onboarding onto the network, allowing for low capital commitments to onboard as a solver.
* **Revenue Opportunities**: With our growing user base, market makers can tap into substantial delta-neutral and risk adjusted revenue streams.
* **Continuous Support**: IntentX ensures that our partners receive continuous technical, operational, and promotional support - maximizing the partnership's potential.

Through exclusive agreements and a well-defined onboarding process, we aim to continually enhance our platform's liquidity and offerings, ensuring the best experience for our users.

{% hint style="info" %}
**Note:** If you are a market maker and are interested in joining the IntentX solver network, please reach out to discuss collaboration opportunities [**through this form**](https://forms.gle/NbbwNV6km8JXid86A).
{% endhint %}

## **Stable Deposit Pool: Capitalizing the Solver**

The **Stable Deposit Pool** is a strategic feature of IntentX. This pool's primary role is to capitalize Solver market-making operations.

* Users can share in revenues in a unique and passive delta-neutral stablecoin yield opportunity.
* Capital will be used in market making operations increasing OI availability on IntentX.
* Share of revenues will accrue to xINTX stakeholders, adding another layer of utility and yield.

This stable deposit pool will be used in both exclusive agreements with collaborating market makers and in the establishment of IntentXs proprietary solver.

**Access Requirements**:

* **Staking xINTX**: Access to this pool is exclusive. It's gated by a prerequisite of staking a minimum amount of xINTX.

## **Value Capture and Competitive Advantages**

By participating in both the solver and exchange side, IntentX will achieve far greater value capture and unique competitive advantages.&#x20;

Our holistic approach gives us a substantial edge, allowing us to offer exclusive OI and maintain competitive advantages in the market. Our strategy ensures that we have more control over our offerings, enabling us to deliver optimal services to our users.

This strategy mutually benefits all platform participants and maximizes value creation:

**Traders:**

Increased OI, better order execution, wider pair availability, more reliable trading experience.

**Market Makers:**

Capitalization via Stable Deposit Pool, exclusive order flow, hand in hand onboarding to network.

**xINTX Stakers:**

Exclusive delta-neutral yield opportunity through the Stable Deposit Pool, increased revenues from market making operations, greater platform robustness and value capture.

## **Solver Onboarding Process:**

1. **Initial Outreach and Discussion**: Interested market makers can reach out to our dedicated team to discuss potential collaboration opportunities.
2. **Due Diligence**: A thorough review of the market maker's history, reputation, and operational capacities is undertaken to ensure they align with IntentX's standards.
3. **Agreement Drafting**: Once a consensus is reached, an agreement is drafted, outlining roles, responsibilities, and the terms of the partnership.
4. **Integration and Testing**: The market maker's systems are integrated into IntentX, followed by rigorous testing to ensure seamless operation.
5. **Launch & Monitoring**: Once live, continuous monitoring and communication channels remain open to ensure optimal performance and adjustments as needed.

Please reach out to our team to initiate the process [**through this form**](https://forms.gle/NbbwNV6km8JXid86A).


# Example Solver Order Flow

## Introduction <a href="#id-6ef2" id="id-6ef2"></a>

Solvers, or market makers, are the backbone of the IntentX platform, ensuring that trades are executed smoothly and efficiently.

Their role, while more complex, is pivotal in ensuring traders get the best possible outcomes. In this section, we’ll unravel the steps a solver takes, highlighting the depth of their involvement and the sophistication of their operations.

{% hint style="info" %}
**Note:** The below is just an example of how a solver can hedge off-chain. The system is designed for maximum flexibility and solvers can operate with nearly infinite degrees of freedom.
{% endhint %}

### 1. The Solver Deposits Collateral On- and Off-Chain <a href="#id-7f9f" id="id-7f9f"></a>

<div data-full-width="false"><figure><img src="/files/y2H34naRhdLEgLIJSUAw" alt=""><figcaption></figcaption></figure></div>

The solver starts by depositing their collateral at on- and off-chain venues. Specifically, they deposit 50% of their desired collateral in the execution engine’s on-chain contracts and the remaining 50% at the off-chain hedging venue(s) of choice.

{% hint style="info" %}
**Note:** These off-chain hedging venues can include, but are not limited to, centralized futures exchanges, OTC trading desks, other.
{% endhint %}

### 2. The Solver Sets their Market Making Software <a href="#id-4a8a" id="id-4a8a"></a>

<div data-full-width="false"><figure><img src="/files/FNIMV8Fbeu9XW2erWPJy" alt=""><figcaption></figcaption></figure></div>

Solvers can now set up their market making software, checking they can:

1. Query/return data and execute trades using **off-chain** hedging venue(s).
2. Interact with the **on-chain** execution engine contracts.
3. **Stream quotes** to the **IntentX** front-end via WebSockets and APIs.

### 3. The Solver “Senses” Pricing Data and Streams Quotes to IntentX <a href="#id-05f1" id="id-05f1"></a>

<div data-full-width="false"><figure><img src="/files/KpYoLLg0uTARiOERMHPQ" alt=""><figcaption></figcaption></figure></div>

Solvers **stream price quotes** directly to the IntentX front-end using pricing data obtained from their desired hedging venue(s). Price feeds are **looped constantly** to provide the **most accurate data** and quotes are streamed to the IntentX front-end at **a desired spread** (+/- Xbps vs. order book price feed sensed off-chain).

### 4. A Trader Inputs Trade Intent, Accepts Quote, and Requests for Trade <a href="#id-9d9f" id="id-9d9f"></a>

<div data-full-width="false"><figure><img src="/files/XPvwVjRHWDZDByckUAcZ" alt=""><figcaption></figcaption></figure></div>

As mentioned in the [Trading Tutorials ](/intentx-platform/trading-on-intentx/trading-tutorials)section of our documentation, a trader on the IntentX front-end inputs their intent to trade (size, order type, leverage) and, in return, are streamed pricing quotes from solvers in real-time. **IntentX’s proprietary matching system** always provides traders with the **best quote** per their intent to trade.

If they accept the quote, the trader submits a **“request for trade”** and **deposits their required margin** with the **on-chain** execution engine through a signature.

### 5. The Solver Receives Request for Trade, Hedges Off-Chain, and Opens the Trade <a href="#aa89" id="aa89"></a>

<div align="right" data-full-width="false"><figure><img src="/files/kCa4n7l3Z0YEZbTp53HN" alt=""><figcaption></figcaption></figure></div>

As mentioned in step 4, the “request for trade” is submitted on-chain to the solver. The solver can then **pro-actively hedge** the **trader’s intended position** **off-chain** at their desired hedging venue(s). This is done preemptively to allow the solver to be completely **delta-neutral** for their future on-chain position.

The solver then fills the trade request and deposits their required margin in the on-chain perpetual contract with a signature.

The trade is now **open**.

{% hint style="info" %}
**Note:** The solver is not required to hedge, they can take directional risk should they choose or hedge in other methods such as spot holdings. This simply describes an example scenario.
{% endhint %}

### 6. Both Parties Monitor/Rebalance Margin, Close the Trade, or are Liquidated <a href="#id-9a2e" id="id-9a2e"></a>

<div data-full-width="false"><figure><img src="/files/ww244Te7kwy8LUuzJOXP" alt=""><figcaption></figcaption></figure></div>

Both the **trader (on-chain)** and the **solver (on- and off-chain)** must rebalance their collateral to maintain the required margin. If they do not, they will be **liquidated** by a third party.

As mentioned in the [Trading Tutorials](/intentx-platform/trading-on-intentx/trading-tutorials) section of our documentation the **trader** must monitor and rebalance their **on-chain cross-margin account** to maintain the required collateral, or they will be liquidated. They can also **“request to close”** the position and obtain their collateral back **+/- any PnL.**

The **solver** must maintain **both their on- and off-chain margin**. In the event the trader requests to close their position, the solver can preemptively **close their off-chain position** (remaining delta-neutral), and then accept the **on-chain request to close** by trade&#x72;**.**

Third party liquidators continuously monitor the margin of open positions using oracle price feeds. Both traders and solvers can be liquidated if their margin balances drop below the requirement.

### Conclusion: On-Chain and Off-Chain Orchestration <a href="#id-1c5b" id="id-1c5b"></a>

The efficiencies of the intents-based system lies in its seamless orchestration between on-chain and off-chain activities, catering to both traders and solvers.

**Traders:**

* Optimal price execution accessing off-chain liquidity on-chain
* Streamlined RFQ process to provide quick fill times (<5 seconds)
* Access to derivatives products that may not exist on-chain
* Permissionless, self-custodial, and trustless on-chain execution
* Fill large orders by multiple hedgers, who act as liquidity aggregators for efficient price discovery

**Solvers:**

* Delta-neutral positions by re-arranging order flow to allow for proactive hedging
* Flexibility to source liquidity from any locations to maximize arbitrage (CEX, DEX, OTC, Spot, CME options, etc.)
* Advanced infrastructure such as netting, which allows solvers to net directional exposure amongst each other at a zero / low cost-basis (future product)

One of the key advantages of the system is it’s openness and flexibility, allowing the free market the tools to most efficiently and optimally execute derivatives trade agreements on both the trader and solver side.


# Referral Program

### Overview

At IntentX, we believe in the power of community and creating value together.&#x20;

That’s why we’re thrilled to introduce the IntentX Referral Program, a system crafted to benefit both our traders and the affiliates who introduce them to our platform! This initiative is part of our commitment to building a strong community and recognizing the contributions of our members.

<div data-full-width="false"><figure><img src="/files/4kML4KRcIwsPYXAJb0IA" alt=""><figcaption></figcaption></figure></div>

### Empowering Referred Traders

As a trader creating an account on IntentX with a referral code, you can earn enhanced rewards!&#x20;

In addition to our [**Trade & Earn program**](/tokenomics/trade-and-earn-xintx)**,** which awards traders with daily rewards (21% of the total INTX supply allocated), by using our referral program, you’ll receive a **15% bonus** in xINTX rewards based on your qualified trading volume!&#x20;

### Rewarding Affiliates

Affiliates play a pivotal role in expanding the IntentX community. A matching **15% bonus**, relative to the trading volume of the referred traders, is provided to affiliates.&#x20;

Anyone can make their referral code and share it with new users through our referral section [here](https://app.intentx.io/referrals).

### Daily Reward Distributions

You receive 25% of the fee accumulated in xINTX every time your referee trades. These xINTX rewards are distributed daily and claimable on the incentive page [here](https://app.intentx.io/trade-incentives).

{% hint style="info" %}
**Note:** All referral rewards are separate from daily trade and earn allocations, ensuring that every trader, with or without a referral code, can benefit from our platform.
{% endhint %}

### On-Chain Transparency

We ensure that every referral and the resulting trading volume are tracked transparently and accurately on-chain. This guarantees that your efforts are recognized, and your rewards are calculated fairly, maintaining the highest standards of integrity.

### Join Us!

Become an affiliate for IntentX now!&#x20;

{% hint style="info" %}
**Note:** Participation in the IntentX Referral Program is governed by specific terms and conditions. Ensure you are fully informed before engaging in the program.
{% endhint %}


# Mobile and Progressive Web App

### Introduction

In today's fast-paced trading environment, immediate mobile access to trading portfolios is crucial. Understanding this, IntentX has innovatively developed a progressive web app (PWA) tailored for traders on the move. This PWA merges the convenience of mobile accessibility with the comprehensive functionality of our trading platform. Our detailed guide below simplifies the process of installing the IntentX PWA on both iOS and Android devices, ensuring traders can manage their positions anytime, anywhere with ease.

<div data-full-width="false"><figure><img src="/files/ojWgDrUnM7eaXZG1CyAb" alt=""><figcaption></figcaption></figure></div>

### Setting up IntentX on iOS

1. **Launch Safari:** Open the Safari browser and go to the IntentX website.
2. **Explore the Platform:** Navigate to the IntentX trading interface by clicking “Trade Now” and ensure the app is fully loaded and operational.
3. **Add to Home Screen:** Tap the share icon at the bottom of the Safari window, then scroll to find and select “Add to Home Screen.”
4. **Name Your App:** Give your IntentX shortcut a name. After naming it, tap “Add” at the top-right corner of the screen.
5. **Experience the PWA**: Now, IntentX will be accessible from your home screen, offering a full-screen experience with minimal browser UI, mimicking a native app.

**Setting Up IntentX on Android**

1. **Open Your Browser:** Launch Chrome on your Android device and navigate to the IntentX web URL.
2. **Explore the Platform:** Navigate to the IntentX trading interface by clicking “Trade Now” and ensure the app is fully loaded and operational.
3. **Add to Home Screen:** Tap on the three-dot menu in the top-right corner of Chrome and select “Add to Home screen.”
4. **Finalize the Addition:** You’ll be prompted to name the app shortcut. Once done, click “Add.” IntentX will now appear as an icon on your home screen.
5. **Enjoy the App-Like Experience:** When you open IntentX from your home screen, it will function like a native app, with improved performance and offline capabilities, thanks to service workers running in the background.

<figure><img src="/files/rsPz20lXxwmnQwFojUEe" alt=""><figcaption></figcaption></figure>

### Conclusion

The IntentX Progressive Web App offers an easy-to-install, app-like experience directly on your smartphone. This advancement not only streamlines your trading activities but also ensures you're always connected to the market, regardless of your location. Embrace this next step in digital trading convenience with IntentX, where flexibility meets functionality in the world of decentralized trading!


# Trading API

## Rest API&#x20;

We are providing a trading API that aggregates access to our decentralized protocol for developers.

The main instance of the trading API gateway is located at&#x20;

<https://gw.intentx.io/api>

From the Trading API & SDK, you'll be able to:

* Manage your account permission (delegate accesses to other services, or your own bots)
* Open and manage your positions
* Get access to real time market data
* See your portfolio

## Response Format

```
{
success: boolean;
statusMessage: string;
data: T;
error?: {
code: string;
message: string;
};
};
```

## IntentX SDK Overview

### Modules

The IntentX SDK is structured into different modules, each responsible for handling specific protocol actions. A key aspect of using the SDK is the integration of entities that abstract complex data objects, such as positions and accounts. These entities can be managed through dedicated managers, each providing a set of essential functions.

### Trade Manager

The Trade Manager module provides methods to manage trading operations, including opening and closing positions, retrieving position information, and managing take-profit/stop-loss settings.

**Methods**

* createPosition(params): Opens a new position with the specified parameters.

It’s important to consider that the positions routed through the trading API will be handled by Perps Hub solver in this V1.

* getOpenPositionsForSubaccount(subaccountAddress, chainId): Retrieves all open positions for a given subaccount.
* getPositionInfo(positionId, chainId): Fetches detailed information about a specific position.
* getCloseRequestInfo(closeRequestId, chainId): Retrieves details of a close request for a position.
* closePosition(quoteId, quantityToClose, closePrice, chainId): Requests the closure of an open position.
* setTpSlForPosition(params): Sets take-profit and stop-loss levels for a position.
* listTpSlForPositions(chainId, quoteIds): Lists all take-profit and stop-loss configurations for a given set of positions.
* getLockedParameters(chainId, solver, marketName, leverage): Retrieves locked parameter values for a given solver and market configuration.

Each method interacts with the IntentX trading protocol via the TradingSDK, ensuring seamless API communication and error handling.

### Markets Manager

The Markets Manager module provides methods to interact with market data, including retrieving aggregated market data, specific market tickers, and solver-specific market details.

**Methods**

* getAggregatedMarkets(chainId): Retrieves aggregated market data for a specific blockchain.
* getMarketTickerById(marketId, chainId): Fetches market ticker details using a market ID.
* getMarketTickerBySymbol(symbol, chainId): Fetches market ticker details using a market symbol.
* getSolverMarketBySymbol(symbol, chainId, solver): Retrieves market details from a specific solver by symbol.
* getSolverMarketById(marketId, chainId, solver): Retrieves market details from a specific solver by market ID.
* getMarkPriceForSymbol(symbol): Gets the current mark price for a given symbol.
* getLastPriceForSymbol(symbol): Gets the last traded price for a given symbol.
* getMarkPricesForSymbols(symbols): Fetches mark prices for multiple symbols.
* getLastPricesForSymbols(symbols): Fetches last traded prices for multiple symbols.

Each method ensures smooth API interaction by leveraging the TradingSDK for fetching market-related data while handling errors efficiently.

### Account Manager

The Account Manager module provides methods to manage user account information, including handling subaccounts and retrieving account balance details.

**Methods**

* listSubaccounts(): Retrieves a list of all subaccounts.
* getSubaccountDetails(subaccountAddress, chainId): Fetches details of a specific subaccount.
* getSubaccountBalanceDetails(subaccountAddress, chainId): Retrieves the balance details for a specific subaccount.

Each method leverages the TradingSDK to ensure reliable communication with the API and proper error handling.

### Auth Manager

The Auth Manager module provides methods for handling authentication, permission delegation, and API key management.

**Methods**

* loginWithPrivateKey(privateKey): Authenticates using a private key and stores a JWT token for subsequent requests.
* allowInstantAction(params): Enables instant action on a subaccount by generating a SIWE signature, obtaining an access token, and updating the account configuration.
* toggleSubaccount(params): Enables or disables access for a subaccount.
* createApiKey(): Creates a new API key for account operations.
* listApiKeys(): Retrieves a list of API keys.
* validateSubaccountAccess(subaccountAddress): Checks if a subaccount has proper access and returns any instant action access details.
* verifyInstantActionAccess(subaccountAddress, solver): Verifies whether instant action access is available for a given subaccount and solver.
* verifyPermissionsToSubaccount(subaccountAddress, permissionsToCheck?): Verifies that the configured API key has the required permissions to operate on the subaccount.
* validateApiKey(apiKey): Validates the provided API key, returning its identifier and validity status.
* delegateSubaccountApiPermission(subaccountAddress, permissions, toApiKeyIdentifier): Delegates specific permissions on a subaccount to a designated API key.

Each method ensures secure communication by using JWT tokens and proper error handling via the TradingSDK.


# Introduction

## Endpoints

The main instance of the trading API can be found under [https://gw.intentx.io](https://gw.intentx.io/api)\
You can find the swagger implementation at [https://gw.intentx.io/api](https://gw.intentx.io)

## Management UI

You can manage all the API permissions and accesses through our main platform in the API management section: <https://app.intentx.io/account/api-management>


# Rest API V1

## Introduction

The trading API uses an *API Key* based authentication system to operate with accounts.

When it comes to managing your account API keys and other actions associated with your wallet, the API uses a JWT based system associated with your evm wallet.

The API Keys works with a permission based system. In the trading API, you can delegate access to one of your subaccounts to an specific API key with an associated scope

For the API spec, use <https://gw.intentx.io/api>

## JWT Authentication

Certain components of the trading API require the user to login with their wallet to manage API keys and account permissions.

To authenticate with your wallet in the API and get your JWT auth to be able to manage your API keys, the first step is to generate a typed data message.

```typescript
export function generateIntentXJWTIssueMessage(
  account: Address,
  scopes: AllowedScopes[],
  expiration: AllowedExpiration
): RegisterTypedData {
  const message: RegisterTypedData = {
    domain: {
      name: "IntentX",
      version: "1",
    },
    message: {
      userAddress: account,
      scope: scopes,
      expiration: expiration,
      signatureExpiration: parseInt(((Date.now() + 1000 * 60 * 10) / 1000).toFixed(0)), // 10 minutes from now
    },
    primaryType: "Session",
    types: {
      Session: [
        { name: "userAddress", type: "address" },
        { name: "scope", type: "string[]" },
        { name: "expiration", type: "string" },
      ],
    },
  };

  return message;
}
```

Then, you'll have to sign with your wallet the generated message.

```typescript
// Create wallet from private key
const wallet = new ethers.Wallet(privateKey);
const address = wallet.address;
​
// Generate typed data for JWT token
const typedData: RegisterTypedData = generateIntentXJWTIssueMessage(
address as 0x${string},
"frontendAuth", // Required scope for API key management
"30d"
);
​
// Sign typed data
const signature = await wallet.signTypedData(typedData.domain, typedData.types, typedData.message);
```

Finally, you can interact with the JWT issuer app:

```typescript
const response = await axios.post<{ token?: string; message?: string }>(
  "https://app-authentication-bb6ukllqqa-ew.a.run.app/register",
  {
    message,
    signature,
  },
  {
    headers: {
      "Content-Type": "application/json",
    },
  }
);
```

Then, with the *'token'* you have got in the response, you will be able to interact with the API keys management in the Trading API.

**You are required to use the following header with your generated token**

```
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
```


# Typescript SDK

To start using the SDK, you have to install the following npm packages

{% embed url="<https://www.npmjs.com/package/@intentx/core>" %}
Common types for IntentX
{% endembed %}

{% embed url="<https://www.npmjs.com/package/@intentx/trading-sdk>" %}
Trading SDK
{% endembed %}

You can use @intentx/core structures to work with @intentx/trading-sdk operations


# Examples


# Opening Positions

```typescript
import {
  AvailableSolvers,
  calculateAssetQuantityFromCollateral,
  calculatePriceWithSlippage,
  OrderType,
  PositionType,
  SupportedChainId,
} from "@intentx/core";
import { PositionEntityHooks, TradingSDK } from "@intentx/trading-sdk";
import * as dotenv from "dotenv";

dotenv.config();

async function openPositionExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const TARGET_SYMBOL = "XRPUSDT";
  const TARGET_CHAIN_ID = SupportedChainId.BASE;
  const USE_INSTANT_ACTIONS = true;

  const marketTicker = await tradingSDK.marketsManager.getMarketTickerBySymbol(
    TARGET_SYMBOL,
    TARGET_CHAIN_ID
  );

  console.log("marketTicker", marketTicker);

  if (!marketTicker) {
    throw new Error("Market ticker not found");
  }

  const subaccountAddress = "0x52D953159a9a636944C9d96E14CB5DF0948323E9";
  const collateralQuantity = 40; // $40 USD
  const slippage = 0.01; // 1% for market order
  const leverage = 2;
  const direction = PositionType.LONG;

  const marketPrice =
    await tradingSDK.marketsManager.getMarkPriceForSymbol(TARGET_SYMBOL);
  console.log("marketPrice", marketPrice);
  const marketPriceWithSlippage = calculatePriceWithSlippage(
    marketPrice,
    slippage,
    direction,
    "OPEN"
  );

  const assetQuantity = calculateAssetQuantityFromCollateral(
    collateralQuantity,
    leverage,
    marketPriceWithSlippage,
    marketTicker.quantityPrecision,
    marketTicker.pricePrecision
  );

  const position = await tradingSDK.tradeManager.createPosition({
    marketId: marketTicker.id,
    subaccountAddress,
    chainId: TARGET_CHAIN_ID,
    positionType: direction,
    orderType: OrderType.LIMIT,
    limitPrice: 1,
    quantity: assetQuantity,
    slippage: slippage,
    leverage: leverage,
    useInstantActions: USE_INSTANT_ACTIONS,
    solver: AvailableSolvers.PERPS_HUB,
  });

  position.on(PositionEntityHooks.RESERVED, (position, justification) => {
    if (position.orderType === OrderType.LIMIT) {
      console.log("Limit order reserved. Waiting for price execution...");
      process.exit(0);
    }
  });

  position.on(PositionEntityHooks.OPEN_SUCCESS, (position, justification) => {
    console.log("Position opened", position, justification);
  });

  position.on(PositionEntityHooks.OPEN_REJECTED, (position, justification) => {
    console.log("Position failed to open", position, justification);
  });

  position.on(
    PositionEntityHooks.OPEN_PRICE_SETTLED,
    (position, justification) => {
      console.log("Position price settled for", position.id, justification);
      console.log("Average fill quantity", position.openFillQuantity);
      console.log("Average fill price", position.avgOpenFillPrice);
    }
  );

  await position.waitForCompletion();

  // I want to open a market order with ~$40 of collateral
}

openPositionExample()
  .then(() => {
    console.log("Workflow finished");
  })
  .catch((error) => {
    console.error("Error opening position", error);
  });

```


# Closing Positions

```typescript
import { fromWei, OrderType, SupportedChainId, toBN } from "@intentx/core";
import { CloseRequestHooks, TradingSDK } from "@intentx/trading-sdk";
import * as dotenv from "dotenv";

dotenv.config();

async function closePositionExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const positionId = 126568;

  const positionDetails = await tradingSDK.tradeManager.getPositionInfo(
    positionId.toString(),
    SupportedChainId.BASE
  );

  const amountToClose = toBN(fromWei(positionDetails.quantity))
    .minus(positionDetails.closedQuantity)
    .toString();

  const closeRequest = await tradingSDK.tradeManager.closePosition({
    quoteId: positionId,
    chainId: SupportedChainId.BASE,
    quantityToClose: Number(amountToClose),
    slippage: 0.01,
    orderType: OrderType.MARKET,
    useInstantActions: false,
  });

  closeRequest.on(CloseRequestHooks.PRICE_SETTLED, (state, justification) => {
    console.log("Price settled", state, justification);
  });

  closeRequest.on(CloseRequestHooks.SUCCESS, (state, justification) => {
    console.log("Position closed successfully", state, justification);
  });

  closeRequest.on(CloseRequestHooks.FAILED, (state, justification) => {
    console.log("Position closed failed", state, justification);
  });

  await closeRequest.waitForCompletion();
}

closePositionExample()
  .then(() => {
    console.log("Position closed");
  })
  .catch((error) => {
    console.error("Error opening position", error.message, error.code);
  });

```


# Cancel Positions

```typescript
  import { fromWei, SupportedChainId, toBN } from "@intentx/core";
import { CancelRequestHooks, TradingSDK } from "@intentx/trading-sdk";
import * as dotenv from "dotenv";

dotenv.config();

async function cancelPositionExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const positionIds = [128773, 128775, 128777, 128778];

  const positionDetailsPromises = positionIds.map((positionId) =>
    tradingSDK.tradeManager.getPositionInfo(
      positionId.toString(),
      SupportedChainId.BASE
    )
  );

  const positionDetails = await Promise.all(positionDetailsPromises);

  const cancelRequests = await Promise.all(
    positionDetails.map(async (position, index) => {
      const amountToClose = toBN(fromWei(position.quantity))
        .minus(position.closedQuantity)
        .toString();

      const cancelRequest =
        await tradingSDK.tradeManager.createCancelQuoteRequest({
          quoteId: positionIds[index].toString(),
          chainId: SupportedChainId.BASE,
        });

      cancelRequest.on(CancelRequestHooks.SUCCESS, (state, justification) => {
        console.log(
          `Position ${positionIds[index]} cancelled`,
          state,
          justification
        );
      });

      cancelRequest.on(CancelRequestHooks.FAILED, (state, justification) => {
        console.log(
          `Position ${positionIds[index]} cancellation failed`,
          state,
          justification
        );
      });

      return cancelRequest;
    })
  );

  await Promise.all(
    cancelRequests.map((request) => request.waitForCompletion())
  );
}

cancelPositionExample()
  .then(() => {
    console.log("All positions cancelled");
  })
  .catch((error) => {
    console.error("Error cancelling positions", error.message, error.code);
  });

```


# List Subaccounts

```typescript
import { TradingSDK } from "@intentx/trading-sdk";
import * as dotenv from "dotenv";

dotenv.config();

async function openPositionExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const subaccounts = await tradingSDK.accountManager.listSubaccounts(
    "0x7cc2E3Cce45bA98007D3884bB64917483Bd4A00C"
  );

  console.log(subaccounts);
}

openPositionExample()
  .then(() => {
    console.log("Workflow finished");
  })
  .catch((error) => {
    console.error("Error opening position", error);
  });

```


# List Positions

```typescript
import { SupportedChainId } from "@intentx/core";
import { TradingSDK } from "@intentx/trading-sdk";
import dotenv from "dotenv";

dotenv.config();

async function listPositionsExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const positions = await tradingSDK.tradeManager.getOpenPositionsForSubaccount(
    "0x52D953159a9a636944C9d96E14CB5DF0948323E9",
    SupportedChainId.BASE
  );

  console.log(`You have ${positions.length} open positions`);

  const accountDetails =
    await tradingSDK.accountManager.getSubaccountBalanceDetails(
      "0x52D953159a9a636944C9d96E14CB5DF0948323E9",
      SupportedChainId.BASE
    );

  console.log(
    `You have ${accountDetails.availableForOrder} free balance for orders. Your upnl is $${accountDetails.upnl}`
  );
}

listPositionsExample();
```


# Private Key Authentication

```typescript
import { AllowedPermission } from "@intentx/core";
import { TradingSDK } from "@intentx/trading-sdk";
import dotenv from "dotenv";

dotenv.config();

async function privateKeyAuthenticationExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  await tradingSDK.authManager.loginWithPrivateKey(process.env.PRIVATE_KEY!);

  const apiKey = await tradingSDK.authManager.createApiKey();

  console.log(apiKey);

  const { apiKeyIdentifier: apiKeyId } =
    await tradingSDK.authManager.validateApiKey(apiKey);

  const TARGET_SUBACCOUNT = "0x52D953159a9a636944C9d96E14CB5DF0948323E9";

  // Delegating operational access to the api key
  try {
    await tradingSDK.authManager.delegateSubaccountApiPermission(
      TARGET_SUBACCOUNT,
      [AllowedPermission.ALL],
      apiKeyId
    );
  } catch (error) {
    console.error(error);
  }

  console.log("Delegated operational access to the api key");
}

privateKeyAuthenticationExample();
```


# Enable Instant Actions

```typescript
import { AvailableSolvers, SupportedChainId } from "@intentx/core";
import { TradingSDK } from "@intentx/trading-sdk";
import * as dotenv from "dotenv";

dotenv.config();

async function enableInstantActionsExample() {
  const tradingSDK = new TradingSDK({
    apiKey: process.env.API_KEY,
    baseUrl: process.env.API_BASE_URL ?? undefined,
  });

  const chainId = SupportedChainId.BASE;
  const targetSolver = AvailableSolvers.PERPS_HUB;
  const subaccountAddress = "0x52D953159a9a636944C9d96E14CB5DF0948323E9";

  await tradingSDK.authManager.loginWithPrivateKey(process.env.PRIVATE_KEY!);
  await tradingSDK.authManager.allowInstantAction({
    subaccountAddress,
    chainId,
    solver: targetSolver,
  });

  const isEnabled = await tradingSDK.authManager.verifyInstantActionAccess(
    subaccountAddress,
    targetSolver
  );
  console.log("Instant action enabled", isEnabled);
}

enableInstantActionsExample()
  .then(() => {
    console.log("Instant actions enabled");
  })
  .catch((error) => {
    console.error("Error opening position", error);
  });
```


# INTX Token and xINTX Staking

## INTX Token:

**INTX** is the utility and governance token of IntentX. It has a total fixed supply of **100,000,000 tokens.**

INTX is a liquid token with **no encumbrance** (tax or other).

$INTX on Base: `0x7D27187eb33a7B1d99258FF222633670F84fa342`

$INTX on Mantle: `0x4b7f28397b4294277e7825f224172944f4f5a877`

## xINTX Staking Utility:

<div data-full-width="false"><figure><img src="/files/WapqhluUquagOlHueAzv" alt=""><figcaption></figcaption></figure></div>

The IntentX tokenomics are built and centered around **xINTX**, which is the staked form of INTX and serves as the project's main utility and value capture mechanism.

**Staking Utility:**

1. 85% of IntentX revenue distributed to xINTX stakers
2. 10% of gross [**Serviced Front End**](/introduction/the-meta-front-end) revenue distributed to xINTX stakers
3. Governance voting rights
4. A long-term increasing share of the protocol through the exit fee mechanism.
5. Staking benefits for traders:\
   a) Increased Trader Incentives
6. Referral Program Rewards
7. Access to unique strategies and products (Solver LP)

## xINTX Staking Mechanisms: A System for Long-Term Alignment

At IntentX, we're inspired by the thought of designing a system that benefits our community of long-term holders. We believe prioritizing the value capture and rewarding **long-term stakers** will create sustainability for the IntentX project.

The xINTX staking parameters are set up with four goals in mind:

1. To incentivize and reward long-term stakers.
2. To provide protocol revenues and value capture to these stakers.
3. To protect loyal stakers from short-term trading habits.
4. To reward traders through incentives while balancing the health of long-term stakers.

This design is inspired by a combination of innovations that have come before us to align the long-term values of stakers.

### **Minting and Redeeming xINTX:**

Much like how one would stake or unstake in any simple single-sided vault, users deposit INTX and, in return, receive xINTX. This process operates on a **dynamic ratio** defined by set parameters.

Initially, the deposit (or minting) ratio is set at 1:1, meaning for every INTX you deposit, you get an equal amount of xINTX. As described below, this ratio can evolve based on the exit fee applied to users who unstake early.

### **Loyalty Staking: Dynamic Fee and Boost**

Based on how long tokens are staked into xINTX, users will receive a boost to their revenue over time, and we also introduce a **dynamic exit fee** structure to increase value to all stakers aligned on a long-term basis.

**Loyalty Stake Duration:** The period of 16 weeks. If you stake for this long, you can avoid all but the standard redemption fee.

**Maximum Boost:** The 2.5x value means that if you stake your tokens for the full loyalty duration, the rewards you earn can be multiplied by up to 2.5 times. This increases linearly over the maturity of your staked position up to 2.5x maximum boost.

**Early Unstaking Penalty:** Early unstaking leads to penalties that start as high as 25% and decrease linearly over time. The 25% fee applies if you unstake immediately, and it reduces linearly to 1% over the 16-week period.

**Flat Redemption Fee:** A minimum 1% redemption fee remains for all staked positions at max maturity (16 weeks).

<div data-full-width="false"><figure><img src="/files/ZL8yAqYGLPmJBdSXcLmi" alt=""><figcaption></figcaption></figure></div>

### **Dynamic Pool Ratio**

The early unstaking penalty and flat redemption fee go to increasing the dynamic pool ratio, and thus proportionally increase the value of all remaining xINTX stakers position.

* **What it is:** The ratio at which you can exchange xINTX for INTX.
* **How it evolves:** If someone unstakes early and incurs a penalty, this penalty is added to the pool, effectively increasing the amount of INTX backing each xINTX.
* **How values are determined:** The more penalties incurred by early unstakers, the better the INTX to xINTX ratio becomes for loyal stakers. The pool ratio is altered only by the act of redeeming, not depositing.

Long-term stakers of xINTX can benefit as their position increases in value as measured by INTX. The longer you stake, the higher the ratio increases. Further, the proportional share of revenue distributions increases.

<div data-full-width="false"><figure><img src="/files/MZtIIkIjbxg04pfryzEb" alt=""><figcaption></figcaption></figure></div>

### Example - Dynamic Backing Ratio

As users redeem xINTX → INTX, the redemption fee / penalty will go to increase the remaining backing ratio forever. Users redeem at the given INTX/xINTX ratio, which will continue to grow over time.

* User A is the first to deposit into xINTX. They deposit 10 INTX and receive 10 xINTX as the initial ratio starts at 1:1
* Next, User B deposits 40 INTX into the xINTX pool. Because the pool ratio is still 1:1, they receive 40 xINTX.
* User B then immediately redeems his 40 xINTX into INTX, resulting in the maximum 25% penalty. At the 1:1 ratio with a 25% penalty, the user receives 30 INTX in return.
* 10 INTX coming from the exit penalty then goes to permanently increase the backing ratio of the pool.
* The staking ratio is now 1 xINTX : 2 INTX as there are 10 xINTX (User A) and 20 INTX backing the pool (10 from User A deposit and 10 from User B exit penalty).
* The pool ratio does not change when someone enters, it only changes when someone leaves.
* User A can now redeem his 10 xINTX into 20 INTX (minus whatever exit penalty he incurs, if he stakes to max 16 weeks it is a flat 1%)
* Let’s say that User A does not redeem, and they stay in the pool.
* User C can now stake INTX into xINTX at the new ratio of 1:2. They stake 20 INTX and receive 10 xINTX.
* Both User A and User C can now redeem xINTX to INTX at a ratio of 1:2. And any new entrants at this time will have the same conditions and ratio.

User A, as a long-term staker, has doubled his proportional holdings of INTX, including doubling his proportional share of revenue. Just from remaining staked as other users exit.

User C, as a new entrant, receives less xINTX / INTX, but their share of the protocol holdings remains equal to the INTX he entered the pool with.

The system is balanced to remain fair to new entrants while rewarding long-term stakers.

### **Rewarding Long-Term Stakeholders**

* **Trading Revenue:** Our tokenomics are structured so that the value created through IntentX is funneled to stakers.
* **Reward Multiplier System:** This system determines the amount of rewards a staker gets based on the duration they've staked. The longer you stake, the bigger the multiplier. For instance, staking for 1 week gives a small fraction of the potential rewards, whereas staking for the full 16 weeks provides the maximum 2.5x boost.
* **Dynamic Pool Ratio:** This mechanism allows for long-term xINTX stakers to increase the proportion of total supply that they own over time. Because all emissions and vesting happens in xINTX, any redeeming and selling will also go to benefit long-term stakers.

This system is designed to balance short-term user movements with long-term stability and growth, benefiting the entire community in the process.


# Trade & Earn xINTX

## **xINTX Trade & Earn Program**

IntentX’s rewards program seeks to incentivize traders with the xINTX token for their activity within the platform. Rewards are proportionally distributed based on the fees paid and PnL performance of traders.

**Trade on IntentX. Earn xINTX.**

It's our aim to reward those who contribute most to IntentX's ecosystem. Keeping long-term growth and participation in mind, we designed this reward program.

Refer to the [**tokenomics section**](/tokenomics/token-allocation-and-release-schedule) for a comprehensive understanding of xINTX distribution and use.

## **Program Overview**&#x20;

The xINTX rewards program is tailored to reward dedicated traders over the course of three years. A total of 17% of the total supply is dedicated to this program.&#x20;

**Full Launch Trader Incentives** - 17% of supply post TGE.

The incentives program is meticulously crafted to stimulate user activity and community growth, without compromising on long term sustainability.&#x20;

xINTX stakers will have the privilege to participate in stakeholder value accrual and share in the protocol’s success. More xINTX staking details are available [**here**](/tokenomics/intx-token-and-xintx-staking).

{% hint style="info" %}
**Note:** Anti-sybil measures will be implemented to ensure distribution is as fair as possible.
{% endhint %}

## **Trade to Earn Details**

Traders can receive a **maximum fee-rebate of 50%** of fees paid on IntentX claimable in xINTX!

<figure><img src="/files/ubiKZPsFowcKasvnaeGg" alt=""><figcaption></figcaption></figure>

* Traders will receive a base rebate worth **25% of their fees paid**
* Using a [**referral code**](/intentx-platform/referral-program) will grant traders a **15% bonus** to their incentives.
* Trading over $10k volume daily will qualify for a 5% / day up to a maximum **35% bonus** at 7 days
* **Staking $INTX:** Earn up to **50% bonus** based on your xINTX stake, starting from 2,500 xINTX.

**Total: Up to 50% fee rebate with bonuses.**

Traders can claim their tokens on a daily basis, determined by their trading volumes and xINTX boosts in relation to the daily total.&#x20;

**All rewards are available in the staked xINTX format to ensure long-term alignment among platform participants.**

2,000,000 tokens will be set aside for solver / market making incentives, to support our [**Solver Network**](/intentx-platform/intentx-solver-network) strategic approach.

{% hint style="info" %}
**Note:** The emission schedule is a guiding framework and is subject to changes based on community feedback and other factors.
{% endhint %}

## **Rewards Dashboard:**

The IntentX platform has a dedicated dashboard where traders can monitor their accumulated xINTX rewards. [**This dashboard is live on the dApp.**](https://app.intentx.io/trade-incentives) All rewards are trackable in real-time, fostering transparency and trust. Claims can be made directly from this interface.


# Token Allocation and Release Schedule

INTX has a total fixed supply of **100,000,000 tokens.**

<div data-full-width="false"><figure><img src="/files/tfoEGo5PajOziKRdhl7q" alt=""><figcaption></figcaption></figure></div>

## **Token Allocation:**

### **Token Generation Event — 8.4%:**

**Private Round**: 412,500 // 0% on TGE, vested linearly over 6 months.

**Public Round:** 8,000,000 // 100% on TGE

Claimable in staked xINTX to participate and align with the long-term IntentX stakers.

### **Community Incentives - 21%**

**Total number of tokens:** 21,000,000

**Release schedule:** Over 3 years.

1. 3,000,000 INTX / 3% in the retroactive airdrop to **Open Beta** participants. 50% claimable on TGE, 50% 4 weeks after in the form of xINTX
2. 1,000,000 INTX / 1% of this supply is allocated to an additional airdrop to the broader Mantle Ecosystem.
3. The remaining supply (17,000,000 INTX) will be distributed to incentivise traders on IntentX after **TGE**.

Tokens will be available for claim on a daily basis. Full details available at [**Trade & Earn program**](/tokenomics/trade-and-earn-xintx)**.**

{% hint style="info" %}
**All trader incentives will be claimable in the staked xINTX form to provide long-term alignment amongst participants.**
{% endhint %}

The emission schedule is subject to change and the above acts as a guide only.

### **Treasury - 15%:**

**Total number of tokens:** 14,872,389

**Release schedule:** No vesting, however, **DOES NOT** form part of the circulating supply until utilized.

The treasury is reserved for various long-term functions of the project including:

* Liquidity Incentives as DEX bribes.
* Strategic treasury swap with SYMM to align long-term interests and benefit the IntentX platform.
* A proportion can be staked as xINTX to provide long-term income stream and build up a war chest.
* May be utilised in marketing, grants program, partnerships, exchange listings, etc.

The treasury will be managed carefully to ensure long term success of the project and to the benefit of xINTX stakers.

### **Team - 20%:**

**Total number of tokens:** 20,000,000

**Release Schedule:** 40 day cliff, vested linearly over 24 months.

Team tokens will be claimable in staked xINTX to participate in the value creation, fund development, and align team with the IntentX stakers.

{% hint style="info" %}
**Note:** In commitment to the long term growth of IntentX, the core team has agreed to locking their vested xINTX for 12 months from TGE (with option to renew). While participating in revenue distributions and backing ratio appreciation, no team tokens can be unstaked during this period.
{% endhint %}

### **Seed Round - 20%:**

**Total number of tokens:** 20,304,000

**Release Schedule:** 40 day cliff, vested linearly over 12 months.

Will be claimable in staked xINTX to participate align with the long term IntentX stakers.

### **Strategic Round - 10%:**

**Total number of tokens:** 10,111,111.13

**Release Schedule:** 40 day cliff, vested linearly over 12 months.

Will be claimable in staked xINTX to participate align with the long term IntentX stakers.

### **Advisors - 2.8%:**

**Total number of tokens:** 2,800,000

**Release Schedule:** Vests linearly over 2 years. 6 months cliff.

Allocated to key advisors on the project.

### **Liquidity Seed - 2.5%:**

**Total number of tokens:** 2,500,000

**Release Schedule:** Vested immediately.

Will be used as seed liquidity with stables on a host DEX.

## Release Schedule:

<div data-full-width="false"><figure><img src="/files/QySLgZxSIC4dZnLk2Ukk" alt=""><figcaption></figcaption></figure></div>

INTX will be fully vested over 3 years from TGE.


# Infrastructure Overview

{% hint style="warning" %}
Documents are a work in progress and not yet complete technical documentation. They are proprietary and confidential.
{% endhint %}

## Infrastructure Overview

IntentX collaborates with SYMM IO in technical infrastructure for executing peer-to-peer (p2p) symmetrical trades and LayerZero to provide omnichain interoperability.&#x20;

This means all user and solver actions on-chain are executed through SYMM IO smart contracts, routed through LayerZero's trustless protocol and managed though IntentX complete solution, providing the necessary off-chain communication and coordination of traders and solvers.

These documents are preliminary and produced with the collaboration of SYMM IO to inform readers on the technical operation of IntentX and are not fully complete at this time.

IntentX currently utilizes SYMMIO-Core v0.8 contracts which have undergone a full Sherlock Audit:

{% embed url="<https://audits.sherlock.xyz/contests/85>" %}

## Contents:

{% content-ref url="/pages/NUNxU3IPK9fE9n7ERpNC" %}
[Technical Docs](/technical-docs-wip/infrastructure-overview/technical-docs)
{% endcontent-ref %}

{% content-ref url="/pages/aKESdUIozcbXxT74e3wK" %}
[Sample Solver Docs](/technical-docs-wip/infrastructure-overview/sample-solver-docs)
{% endcontent-ref %}


# Technical Docs

{% hint style="warning" %}
Documents are a work in progress and not yet complete technical documentation. Proprietary and confidential.
{% endhint %}

## Introduction

This document details the intent-based permissionless derivatives trading architecture. At its core its a communication protocol, that defines how Quotes or Intents should be created, requested, structured and accepted. This platform establishes an interactive contract between two parties: Party A and Party B. Party A initiates the interaction by sending an intent. This request is tailored with specific parameters such as whether the position is short or long, the intended amount, the leverage, and the price. Party B, in response, evaluates the request based on its own trading conditions, subsequently choosing to either accept or ignore it. This contract is the infrastructure for them.

This contract focuses on the sending, receiving, locking and accepting of quotes, as well as the management of the provided collateral by both parties, additionally it also regulates how 3rd Party Liquidators can use Oracles, to flag Parties as liquidatable in case they fail to provide sufficient capital, post trade-execution.

The contract does not provide a matching engine, matching of PartyA and PartyBs is done by the IntentX off-chain front-end.

## Main Flow

### Deposit

To start sending and accepting INTENTs, the user needs to deposit collateral.

* **Allocate:** After depositing collateral, the user cannot trade with it yet. It is required to allocate that money to a subaccount, then he will be able to start trading, subaccounts are isolated instances, and 100% economical sound, all PartyA <> PartyB instances are isolated in subaccounts. All collateral deposited into a subaccount is in cross with all positions opened using that subaccount. To have an isolated position, a seperate subaccount should be created. Subaccounts also enable further customization down the road, where collateral could be allocated to a specific contract instance, with customized code written by PartyA or PartyB.

### Send Quote (Send INTENT)

To start the process of opening a trade, he chooses to open long or short positions by giving some criteria\* & by calling `sendQuote` function.\
\*Criteria: symbol, price, …

### Party B sees the position request

At this time, Party B will see the request, and he can decide whether to accept or ignore it. If he accepts it, first he locks(reserves) the quote through `lockQuote` and then calls `openPosition`. At the time of locking(reserving) the quote before opening the position, no other party Bs can accept the quote until it gets unlocked for any possible reason. (user requests to cancel or Party B cannot open the position)

Reserving Quotes is a "training wheel" feature to make it easier for MarketMakers to respond to quotes, by giving them the ability to reserve a quote, then fulfill their needed hedging operations and then fill the quote afterwards. It could be removed in later versions.

* **Cancel Quote:** It is possible that the user wants to cancel his quote(intent) before it gets opened. If the quote isn’t locked(reserved), then it will be canceled immediately. But if it’s locked and isn’t opened yet, depending if it’s partially filled or not, the quote will be canceled. (If it was partially filled already, the unfilled part will be canceled, and the partially filled will be opened.)

### Open Position

After locking(reserving) a quote if nothing unusual happens, the position will be opened by PartyB calling `openPosition`

### Close Request

The PartyA (user) can close the position whenever they want to. This will happen by calling `requestToClosePosition`, Please remark that PartyBs are not able to request to close a position.

### Cancel Close Request

It is possible for the user to cancel their close request (or when using limit order for closing if he wants to make any changes to his order) In these cases if the close request isn’t filled yet, it will be canceled and the position status would change from close pending to a regular position. But if the close request was already partially filled, the already filled portion will remain closed and the remaining amount will be added back to his position and re-opened.

## Detailed Flow

### Deposit

The initial operation that can be performed by PartyA is the deposit. The designated token to serve as collateral is predetermined following the deployment of the contract, in current version each contract has a unique collateral type, for multi collateral support multiple base contracts can be deployed. It is important to note that whatever design decision gets taken in later versions, it is critical to hard require both Parties to use the same collateral when entering into a trade, in this version that hard requirement is enforced by having a single collateral class per contract. (see ControlFacet.setCollateral function)

```solidity
function deposit(uint256 amount);
```

There's also the functionality for a user to deposit funds on behalf of another user utilizing the `depositFor` method.

### Withdraw

Funds that have been deposited but not yet allocated can be returned to the user's wallet. Additionally, there's a required waiting period between the deallocation and withdrawal processes. The waiting period can and will be used for independent watch dogs and security researcher to detect potential malicious behaviour between PartyA and PartyBs and can therefore be used to suspend those malicious parties, suspended Parties are not able to withdraw their de-allocated funds after the withdrawal period.

```solidity
function withdraw(uint256 amount);
```

A user also has the capability to withdraw funds directly to a different address using the `withdrawTo` method.

### Allocate

A user can specify a fraction of, or the entire deposited amount to engage in trading. This specification is factored in when assessing the user's liquidity status, regardless of the total amount the user has deposited.

```solidity
function allocate(uint256 amount);
```

### Deallocate

If not utilized elsewhere, users have the option to return a portion, or even the entirety, of their allocation back into their deposits.

```solidity
function deallocate(uint256 amount, SingleUpnlSig memory upnlSig);
```

To enhance user convenience, there's an additional method in AccountFacet termed `depositAndAllocate`, the functionality of which is self-explanatory through its name.

### SendQuote

The user’s request to open a position is called a quote.

```solidity
function sendQuote(
   address[] memory partyBsWhiteList,
   uint256 symbolId,
   PositionType positionType,
   OrderType orderType,
   uint256 price,
   uint256 quantity,
   uint256 cva,
   uint256 mm,
   uint256 lf,
   uint256 maxInterestRate,
   uint256 deadline,
   SingleUpnlAndPriceSig memory upnlSig
);
```

Let's examine each parameter individually:

**`partyBsWhiteList`**: As implied by the name, only the PartyBs specified in this context can take action on this quote. An empty list signifies that there are no limitations, providing an ideal scenario for users to filter out undesirable PartyBs

**`symbolId`**: Each symbol within the system possesses a unique identifier, for instance, BTCUSDT carries its own distinct ID

**`positionType`**: Can be **SHORT** or **LONG** (0 or 1)

**`orderType`**: Can be **LIMIT** or **MARKET** (0 or 1)

**`price`**: For limit orders, this is the user-requested price for the position, and for market orders, this acts as the price threshold that the user is willing to open a position. For example, if the market price for an arbitrary symbol is $1000 and the user wants to open a short position on this symbol they might be ok with prices up to $990

**`quantity`**: Size of the position

**`cva`**: Credit Valuation Adjustment. In the V3 system, either partyA or partyB can get liquidated and CVA is the penalty that the liquidated side should pay to the other one

**`mm`**: Maintenance Margin. The amount that is actually behind the position and is considered in liquidation status

**`lf`**: Liquidation Fee. It is the prize that will be paid to the liquidator user

**`maxInterestRate`**: Max interest rate

**`deadline`**: The user should set a deadline for their request. If no PartyB takes action on the quote within this timeframe, the request will expire (further details about the expiration procedure will be provided later)

**`upnlSig`**: The Muon signature for user upnl and symbol price

\*Every symbol has a minimum acceptable quote value that should be acknowledged when issuing a quote. For instance, one cannot open a position on BTCUSDT that is less than a certain number of dollars.

### LockQuote

Once a user issues a quote, any PartyB can secure it by providing sufficient funds, based on their estimated profit and loss from opening the position. This is referred to as a 'lock quote' as it bars other PartyBs from interacting with the quote. The process of reserving funds is accomplished through the subsequent contract methods:

```solidity
function depositForPartyB(uint256 amount);
```

```solidity
function allocateForPartyB(uint256 amount, address partyA);
```

After sufficient allocation partyB can lock the quote through the following method:

```solidity
function lockQuote(uint256 quoteId, SingleUpnlSig memory upnlSig);
```

Alternatively, they can execute both actions simultaneously through the `allocateAndLockQuote` method. Additionally, there are two other beneficial methods, namely `depositAndAllocateForPartyB` and `deallocateForPartyB`, the functions of which are clearly suggested by their names.

### UnlockQuote

For any given reason, PartyB, having secured the quote, can choose to abandon the opening position. Following the unlocking of the quote, it becomes available for others to secure.

```solidity
function unlockQuote(uint256 quoteId);
```

### CancelQuote

Users can ask to cancel their sent quote request.

```solidity
function requestToCancelCloseRequest(uint256 quoteId);
```

Two scenarios can occur:

1. If the quote has not yet been locked, it will be immediately canceled.
2. For a locked quote, the outcome depends on PartyB's decision to either accept the cancellation request or to proceed with opening the position, disregarding the request. If PartyB agrees to cancel, the quote will no longer be accessible for others to interact with. Conversely, if the position has been opened, the user is unable to issue this request.

```solidity
function acceptCancelRequest(uint256 quoteId);
```

### OpenPosition

After a quote gets locked by partyB, the position will be opened regarding the given limitations.

#### Partially

PartyB has the option to open the position with either the full amount requested by the user or a specific fraction of it. For instance, consider a quote for 100 units of a symbol. PartyB could choose to open the position for only 20 units of the total 100, with the remaining units forming a new quote that's available for all PartyBs to act on. The opened position's size can't be excessively small or large. If it's like 99/100, the leftover will be a minuscule quote that falls below the minimum acceptable quote value. Conversely, the position might be so small that it also falls beneath the minimum value. The contract method interface is as follows:

```solidity
function openPosition(
   uint256 quoteId,
   uint256 fillAmount,
   uint256 openedPrice,
   PairUpnlAndPriceSig memory upnlSig
);
```

Also, the remaining open portion of the position cannot fall below the minimum acceptable quote value for that particular symbol.

### RequestToClosePosition

```solidity
function requestToClosePosition(
   uint256 quoteId,
   uint256 closePrice,
   uint256 quantityToClose,
   OrderType orderType,
   uint256 deadline,
   SingleUpnlAndPriceSig memory upnlSig
);
```

**`orderType`**: orderType can again be **LIMIT** or **MARKET** with the same logic as in SendQuote

**`deadline`**: This parameter is a lot like the one in 'sendQuote'. Basically, if 'partyB' doesn't get back to the request within a certain time, then the request will just time out

**`closePrice`**: In the case of limit orders, this is the price the user wants to close the position at. For market orders, it's more like a price threshold the user's okay with when closing their position. Say, for a random symbol, the market price is $1000. If a user wants to close a short position on this symbol, they might be cool with prices up to $1010

### FillCloseRequest

After partyA sends the close request, partyB responds to the request by filling. PartyB can fill the LIMIT requests in multiple steps and each within a different price but the market requests should be filled all at once. The contract method interface is depicted below:

```solidity
function fillCloseRequest(
   uint256 quoteId,
   uint256 fillAmount,
   uint256 closedPrice,
   PairUpnlAndPriceSig memory upnlSig
);
```

### CancelCloseRequest

If the user has already sent the close request but partyB has not filled it yet, the user can request to cancel it. PartyB can either accept the cancel request or fill the close request ignoring the user's request. The contract method interface for the user is as below:

```solidity
function requestToCancelCloseRequest(uint256 quoteId);
```

### Liquidation

In order to grasp the intricacies of the liquidation process, a fundamental understanding of the 'pending locked' concept is crucial. When a user sends a quote request, the corresponding amount of the position goes into a 'pending' state. During this phase, the user is restricted from opening other positions with that specific amount. Nonetheless, this amount continues to contribute to the user's allocated funds when assessing their liquidity status. Once Party B opens the position, this amount goes from the 'pending' to the 'locked' state.

#### Liquidate Party A

For a better understanding of how a user gets liquidated, let’s look at one with a $1000 allocated balance as an example:

User positions are all considered to be cross, meaning that in the above picture, values can be the sum of the equivalent values in 4 different positions.\
Pending locked values are from user quotes that have not been opened yet.

Now let’s say that the user is having a bad day, and one of their positions is sinking deep into loss:

Each user position has a respective UPNL, which determines whether the position is in profit(positive UPNL) or loss(negative UPNL). Adding all those UPNLs, we get the user’s total UPNL. Now let’s see what happens if UPNL changes:

* Total upnl > 0: User is overall in profit
* -500 < Total UPNL < 0: User’s locked MMs are supporting their positions
* -700 < Total UPNL < -500: User’s free balance is now supporting their positions
* -900 < Total UPNL < -700: User’s pending locked values are supporting their position
* Total UPNL < -900: User will be liquidated now

As this is a cross-system, whenever a user gets liquidated, all of their quotes and positions will go to a liquidated state, or in other words they all get canceled.

On the contract side, the liquidation of partyA is a four-step process. The liquidator should first liquidate the user:

```solidity
function liquidatePartyA(address partyA, SingleUpnlSig memory upnlSig);
```

At this point the user is marked as liquidated and the timestamp for that is recorded.

Then the liquidator should set the prices for all symbols associated with the user's positions:

```solidity
function setSymbolsPrice(address partyA, PriceSig memory priceSig);
// priceSig contains
// uint256[] symbolIds;
// uint256[] prices;
```

Then the liquidator should liquidate partyA pending positions:

```solidity
function liquidatePendingPositionsPartyA(address partyA);
```

And after that the liquidator should liquidate partyA open positions:

```solidity
function liquidatePositionsPartyA(address partyA, uint256[] memory quoteIds);
```

#### Liquidate Party B

As alluded to in the 'Send Quote' section, Party B is required to allocate collateral prior to locking the quote, and this amount may need to be augmented depending on the current state of the opened position in the market. Consequently, if Party B's allocated collateral falls short due to a user realizing significant profits on one or multiple positions, Party B will undergo liquidation for that specific user. The system for Party B operates on a cross basis, albeit on a per-user framework. This implies that all of a user's positions with Party B are collectively considered in the calculations, while Party B's positions with other users won't influence the potential for liquidation in their relationship with the specific user.\
From the contract perspective, the liquidation of Party B is a two-stage process. The liquidator must initially liquidate Party B in relation to Party A. Following that, they must liquidate all positions that Party B holds with that specific Party A, which necessitates an additional contract call:

```solidity
function liquidatePartyB(address partyB, address partyA, SingleUpnlSig memory upnlSig);
```

```solidity
function liquidatePositionsPartyB(address partyB, address partyA, PriceSig memory priceSig);
```


# Sample Solver Docs

{% hint style="warning" %}
Documents are a work in progress and not yet complete technical documentation. Proprietary and confidential.
{% endhint %}

## Glossary and Clarifications

**The term "Solver" is referred to as a MarketMaker that provides Liquidity on IntentX.**

**Scope and Perspective:** This documentation is curated from the perspective of an "example solver" that adopts a precise 1:1 hedging strategy. This Strategy ensures that this "example solver" remains delta neutral at every point in time, eliminating any directional exposure. This approach should be interpreted as an example and not as an absolute when interacting with the system, every MarketMaker has full control to, at any point when interacting with the core protocol, design his own hedging strategy, or not hedge at all. The protocol is specifically designed in a way that gives MarketMakers the time and ability to hedge their trades comfortably if they decide to do so.

**Operational Context:** When this "example solver" initiates a trade, they directly open a direct countertrade on their chosen broker platform (for instance, Binance) before filling the order onchain. A unique aspect of this strategy is its sequential nature: a trade is only filled onchain when its hedging counterpart is confirmed, and conversely, it's only closed after the hedging trade is conclusively settled.

**Documentation Purpose:** This liquidity provision strategy and the ensuing documentation serve as a template for what can be perceived as the lowest risk profile attainable in the hedging arena. However, a note of clarity: while this approach is streamlined and minimizes risks, we recognize it's somewhat rudimentary. Veteran market makers, armed with profound expertise, may devise intricate strategies that could potentially yield heightened profits, the system gives MarketMakers 100% over the hedging strategy they want to apply. Any segments of this documentation that could be interpreted differently should be perceived purely as guidelines. They document aims to explain how a basic strategy could be seamlessly implemented, but in no way restrict or limit the development of other strategic avenues one might pursue.

### Additional Disclaimer - IntentX and Solver relationship

**Educational Use:** This Solver documentation is crafted with a singular goal in mind: to provide a fundamental understanding of the solver's role in the IntentX system to it's readers. (MarketMakers, investors and everyone who is interested in becoming a solver) The Solver documentation is educational and not a comprehensive reflection of the entire protocol. It is structured to provide an introductory grasp of what it means to be a solver and offers a primer on how one can undertake this role.

**Misconceptions:** Some readers might have concluded that the IntentX system depends on MarketMakers hedging themselves, leading to assumed trust dependencies on the MarketMaker side or that user funds and solver funds are somehow dependent on off-chain brokers or results of hedging strategies. However, this understanding needs to be revised and could lead to erroneous interpretations of the system's architecture.

**Top-Down Relationship:** To reiterate and clarify, the relationship between a solver and IntentX is top-down. That means whatever actions a solver takes off-chain have no bearing on the on-chain events. Thus, there are no trust assumptions regarding the solver side of things as they use off-chain systems to hedge themselves or the connection between these off-chain systems and IntentX itself.

**Independent On-Chain Contracts:** The SYMMIO contracts function independently of any off-chain actions a solver performs. They operate exclusively within the on-chain environment and are not influenced or impacted by external actions. The system is fully isolated from any issues that may or may not arise in combination with MarketMakers and the off-chain systems, centralized exchanges, trading desks, or any other forms of hedging they use. We strongly recommend readers to familiarize themselves with these points to understand Solvers's role and its interaction with the IntentX protocol.&#x20;

#### Broker definition

Within the scope of the solver documentation, the term "Broker" holds a specific connotation, distinct from conventional interpretations. When the term "Broker" is mentioned in the context of being a Solver on IntentX, it is being referred to as a general "hedging strategy" that a MarketMaker (MM) can optionally design to hedge their IntentX trades. Importantly, it's vital to understand that our system doesn't necessitate a MarketMaker to hedge their trades. In fact, it's entirely optional. However, the architecture is such that if a MarketMaker decides to hedge, the system allows you to do so easily, it's entirely designed to make it simple and straightforward.

Broad Application of the Term The term "Broker" is expansive in our context. It can encompass:

Centralized Exchanges (CEX) Decentralized Exchanges (DEX) Over-The-Counter (OTC) Desks Spot holdings any other hedging strategies, whether they exist on-chain or off-chain.

A Note on Hedging Strategies: We don’t categorize or prioritize one method of hedging over another. All are viewed through the same lens, and are designed by MarketMakers themselves to be delta neutral or not, the system is designed to offer MarketMakers the potential to optimize their efficiency infinitely. Moreover, we acknowledge that the realm of hedging is vast, with potentially limitless strategies and methods for securing a position. Thus, when you come across "Broker" in our documentation, remember that it speaks to this broad, encompassing perspective.

## How To Implement Your Own Solver

### 1. Introduction

IntentX offers traders the opportunity to engage in permission-less derivatives trading on the blockchain. There are two types of traders on this platform:

1. PartyA: They post requests for trades, also known as Intents.
2. PartyB (solvers, market makers): They respond to the requests made by PartyA, by claiming the Intent.

From now on we will refer to PartyB or MarketMaker as "Solver" as well as the Software to Market make as "hedging software", anything that offers quotes & accepts intents in the ecosystem is referred to "Solver", and the strategy to Market make on IntentX is referred to as "solving".

Each PartyB has the freedom to adopt their own hedging strategy, they can also choose to not hedge at all and be directionally exposed. However, certain rules are in place to ensure fairness within the system. In order to develop a customized MarketMaking approach, it is crucial to understand the timeline of Intents, the various requests made by PartyA, and the potential scenarios that may arise as a result of PartyA's actions. This document aims to focus on these aspects to assist you in building your own solver.

The main connection between PartyA and PartyB is based on onchain contracts provided by SYMMIO. Consequently, it is essential for each solvers to be able to monitor requests made by PartyA on the blockchain. This can be achieved by utilizing a subgraph or event-listener. Moreover, it is imperative for the solvers to respond to these requests via onchain calls to the core contracts.

Additional connections are established between PartyA and the solvers through the IntentX front-end interface, Solvers stream current quotes as Bid and Ask to IntentX as well as funding, collateral requirements but also simple notifications to enhance UX can be streamed via websocket connections. These connections aim to enhance the user experience by updating users on the status of their positions and intentions, as well as decreasing the time from request to execution by streaming quotes upfront. For example, a solver might notify the user when their request has been viewed, indicate the percentage of limit orders that have been filled, confirm if a transaction has been conducted in response to the user's request, or explain the reasons for rejecting the user's request. These types of connections are entirely optional. Each solver may choose whether or not to provide this kind of information, and the platform itself does not validate the contents of such communications.

In our current frontend architecture streaming quotes is not optional and every solver should stream his offers upfront to IntentX in order to enable fast executions and CEX like UX.

#### Figure1 shows how PartyAs and Solvers communicate.

<figure><img src="/files/QuijIJvPk8IhCIBfHWfn" alt=""><figcaption></figcaption></figure>

```
**Figure 1: Different types of communication of solver (PartyB) and PartyA**
```

Intents are the heart of the system so we need to get familiar with the lifecycle of an intent before going any further. Figure 2 illustrates the lifecycle of an intent. The dashed arrows represent actions taken by the solver, and the solid arrows represent actions taken by Party A or a third party. The circles indicate the state of the intent.

<div data-full-width="true"><figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/IntentTimeLine.drawio.png" alt=""><figcaption></figcaption></figure></div>

```
**Figure 2: Lifecycle of Intent**
```

### 2. Send Intent (Send Quote)

Let's continue with how and where an intent gets created and see what arguments an intent in the current version 0.81 has. Please note that intents could be optimized to offer other products like Options, Expiring Swaps etc. (planned for future implementation) In the following table, we describe each field of a intent that is provided by a user during their request for a intent.

**Table 1: Structure of an Intent**

| Field            | Description                                                                                                                         |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| partyA           | The address of the user who made the request                                                                                        |
| quoteId          | The unique identifier of the quote, which must be referenced in all further requests                                                |
| partyBsWhiteList | The whitelist of the solvers who are allowed to take action upon this intent. If it is empty, it means that all solvers are allowed |
| symbolId         | The symbol identifier of the symbol that the user has sent ab intent for                                                            |
| positionType     | The position type: LONG or SHORT (It would actually be 0 and 1 in the data)                                                         |
| orderType        | The order type: Limit or Market (It would actually be 0 and 1 in the data)                                                          |
| price            | The price that the user has requested                                                                                               |
| quantity         | The quantity of the requested position                                                                                              |
| cva              | In case of liquidation, this is a penalty that the liquidated side of the trade must pay to the other side                          |
| mm               | The maintenance margin of this intent                                                                                               |
| lf               | The liquidation fee which is going to be paid to the liquidator                                                                     |
| deadline         | Specifies the period in which solver is allowed to open this position                                                               |

#### 2.1. Limit request

The diagram below provides a detailed visualization of the potential steps a solver might undertake upon receiving notification of a Limit request dispatched by PartyA

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/SendQuote.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 3 solver Actions after SendQuoteLimit**
```

Upon seeing a request made by PartyA, solvers should first check if they are whitelisted, meaning the user whitelisted the solvers address as intent parameter & they are therefore allowed to act upon the request. After this, there's a race among solvers to be the first to lock(claim) the Intent. The solver who locks the intent first will have the opportunity to open the position. Thus, the solver should to review the intent to ensure it aligns with their policies and is "interesting" enough to be opened, this is an additional security measure no onchain derivatives platform in crypto can offer market makers. If the intent is interesting and matches solver policies, and they have sufficient allocated balance with the corresponding PartyA, they should immediately lock it by calling the "lockQuote" function.

If they lack the necessary allocated balance, they should call the "AllocateAndLock" function to promptly execute both actions in a single transaction. Subsequently, the solver can hedge the position with a broker, any OTC desk or exchange and then use the "openPosition" function or simply wait until the price reaches the desired level before calling "openPosition"

#### 2.2. Market request

The diagram below shows a solvers actions after spotting a market position

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/SendQuoteMarket.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 4: solver action after send Intent(market) **
```

Market requests are similar to Limit ones. However, there are two differences in the actions taken by the solver for this type of Intent. Firstly, solvers must check the deadline of the Intent to determine if there is enough time to open a hedging position. Secondly, they can call "LockAndOpen" and "AllocateLockAndOpen" instead of "Lock" and "AllocateAndLock".

#### 2.3. Opening the position

After the steps mentioned, the solver should call the 'openPosition' function with the specified parameters:

1. quoteId: The ID of the pending Intent that the solver wants to fill.
2. fillAmount: The solver has the option to open only a fraction of the specified Intent amount. Whatever quantity remains unfilled will be reposted as a new intent in the system.
3. openedPrice: The average fill price for the Intent which should not exceed the price specified by the user. The Unrealized Profit and Loss (UPNL) are determined based on this price.
4. Oracle Signature for Both Parties' UPNL: This signature is essential to evaluate the solvency of both parties after contract execution. The contract strictly forbids solvers from initiating a position if it would lead to the liquidation of either party. Consequently, solvers must carefully track the solvency ratio of parties with whom they have pending positions. If a pending inent appears to be no longer economically sustainable for any party, they should immediately cease the related processes to avoid further losses.

#### 2.4. Expiration of an intent before being claimed and executed and becoming a position

An intent can become expired or cancelled before turning into a position.

**2.4.1. Expiration**

Each intent has an expiration time assigned. For limit orders, the expiration time is automatically set to infinite during payload creation in the front-end (good practice for frontends). If the solver fails to open a position within the specified time frame, they will no longer be able to open it, and a third party or partyA may choose to let the intent expire. If such a case happened the solver should cancel its corresponding hedging position on the broker side to avoid being directionally exposed.

**2.4.2. Cancellation**

If PartyA decides to cancel a pending intent that is not locked(claimed) by any solver, the intent will be immediately canceled. However, if PartyA chooses to cancel an already locked intent, the corresponding solver is given a specific period, known as the "forced cancellation cooldown." During this time, the solver must either accept the cancellation request or proceed with executing the intent, converting it into a position. The diagram below outlines the actions a solver should take upon receiving a cancellation request for a previously locked intent.

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/CancelIntent.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 5: Different Actions Taken by the Solver for Canceling an Intent**
```

**2.4.2.1. Forced Cancellation of Intent**

If the solver doesn't respond to a cancellation request for an intent, either Party A or any third party can forcefully cancel the intent after the "forced cancellation cooldown" period expires. Should this occur, the solver must cancel the corresponding position on the broker side.

### 3 Closing the position

This section explains the different ways in which users can close a position and the steps required for solvers to respond to them respectively

#### 3.1. Limit close request

Figure 5 depicts a flowchart detailing the sequential actions required by a solver upon receiving a limit close request from Party A.

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/CloseLimit.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 6: Solver Action on Party A's Limit Close Request**
```

Upon receiving a request from Party A to close a position at a limit, the corresponding solver should either submit this request to a broker or continuously monitor the price. When the price reaches the desired level or the close request from the broker's side is fulfilled, the Solver should proceed with the closure. It's vital to note that if the solver fails to fulfill the close request after the price hits the specified level, the position may be force-closed.

**3.1.1. Force Close**

To prevent Party B from neglecting to fulfill limit close requests, the contract has integrated the Force Close function. When the price of a limit close request is met, Party B is given a specific period (Force Close Cooldown) to act on the close request. If they don't, a third party will initiate a forced closure. As a result, the solver will face a penalty, payable to the party that triggers the force close. In such scenarios, if hedging activities are in place, Party B may close the corresponding position on the broker side.

#### 3.2. Market close request

Market close requests operate in a manner similar to market intent requests, given their specific time frame leading up to expiration, with the requested price determined by the prevailing market price. Figure 6 depicts the procedures a solver should adhere to when handling a market request for closure.

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/CloseRequestMarket.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 7: Solver Action During a Filled Close Request Market**
```

#### 3.3. Filling the close request

After the steps mentioned, the solver should call the 'fillCloseRequest' function with the specified parameters:

1. quoteId: The unique identifier of the respective position.
2. fillAmount: The solver can fill the close request in multiple steps, each with a fraction of the user's requested amount.
3. closedPrice: The average closing price of the position (cannot be lower than the user's requested price).
4. Oracle Signature for Both Parties' UPNL: This UPNL signature represents both parties and is used for solvency checks on the contract side. A solver cannot close a position if such closure would lead to either party facing liquidation. Although such situations, indicative of a problem with the liquidator, are rare, specific actions are in place. If Party A has a solvency issue, the solver is permitted to liquidate the user. Conversely, if the solvency challenge is on the solver's side, they must deposit additional funds into their account to avert liquidation.

#### 3.4. Death of a close request

A close request can get expired or cancelled before actually getting filled by the solver.

**3.4.1. Expiration**

Close requests come with a designated time frame for fulfillment, as specified by the 'deadline' parameter. If not filled within this period, the close request becomes unfulfillable, and the position's status reverts to “open”.

**3.4.2. Cancellation**

If PartyA changes their mind after submitting a close request, they are allowed to cancel it by initiating a "cancel close request" action. The solver must respond within a certain timeframe by either fulfilling the close request or accepting the cancellation. Figure 7 illustrates the potential actions taken by the solver upon receiving a cancel close request.

<figure><img src="https://github.com/SYMM-IO/docs/raw/main/hedger_docs/pngs/CancelClose.drawio.png" alt=""><figcaption></figcaption></figure>

```
**Figure 8: Actions taken by the solver in response to a cancel close request**
```

**3.4.2.1. Force Cancel Close Request**

If the solver fails to respond to the cancel close request within the force cancel close cooldown period, any third party is authorized to perform a force cancel close. In this scenario, the position status reverts back to "open" and the solver must cancel and undo their close request on the broker's platform.

### 4. Parties' Liquidation

If any party is liquidated during the position, the position is no longer valid, and the solver has the option to close and cancel the corresponding solver's close request on the broker side.

### 5. Summary of different Type of Requests made by PartyA

Table 2 provides a comprehensive summary of various request types available for PartyA within the system and delineates how solvers should address them.

**Table 2: Description of different requests of PartyA**

|       Request Type       | Summary                                                                                                                                                                                                                                                                                                                                                         |
| :----------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|    Send Quote (limit)    | When PartyA wishes to make a limit trade on a symbol, they can make a request for a Intent by calling sendQuote and providing the required information such as price, quantity, MM, CVA, LF.                                                                                                                                                                    |
|    Send Quote (Market)   | Similar to limit orders, but in this type of trade, IntentX requests the price with a slippage based on the current market price and a limited expiration time. This gives the solver a specific deadline to fill such requests. Additionally, partial fills are not allowed in this type of request.                                                           |
|     Request To Cancel    | This type of request may occur when PartyA wants to cancel their unfilled quotes. If no solver has locked their request, the request to cancel will be immediately accepted. However, if their quote has been locked by a solver, the solver has a certain amount of time (force Cancel cool down) to either fill their quotes or accept their cancel requests. |
| Request To Close (limit) | When a user wants to close their request, they must make a close request and provide information such as the quantity they want to close and the price.                                                                                                                                                                                                         |
| Request To Close(Market) | Similar to the market request for a quote, this type of request for closure is the same as requesting a close, but with a price that includes slippage and an expiration time. In this type of request, requesting a market close for a part of a quote and partial filling the close request is not meaningful.                                                |
|  Request To Cancel Close | After each PartyA makes a request to close, they are allowed to cancel their close request before the solver fills it. Similar to the request to cancel, the solver has a certain amount of time to respond to such requests, or the cancel close requests will be forced.                                                                                      |

In addition, there are various other types of events that the solver must be mindful of, as they can have consequences on their business. Table 3 summarizes these additional events.

**Table 3: additional type of events**

| Event              | Functor    | Description                                                                                                                                                                                           |
| ------------------ | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Force Cancel       | Any One    | If the solver fails to respond to the user's cancel request within a certain time frame, any authorized individual is allowed to call for a force cancel, rendering the quote unavailable thereafter. |
| Force Cancel Close | Any One    | Similar to force cancel, but applicable for close requests.                                                                                                                                           |
| Force Close        | Any One    | If the solver does not fulfill the user's close request even after the price has been reached, any authorized individual can force close the request by providing a signature confirming the event.   |
| Expire Quote       | Any One    | If the solver does not fill the market request, it will expire.                                                                                                                                       |
| Liquidate User     | Liquidator | If the solver or user's allocated balances are unable to cover their Unrealized Profit and Loss (UPNL), they will be subject to liquidation.                                                          |
| Liquidate Position | Liquidator | After liquidating the user, the liquidator will proceed to liquidate each position and facilitate a settlement between the parties involved.                                                          |

### **6. Fee Structures** <a href="#user-content-6-fee-structures-in-symmio" id="user-content-6-fee-structures-in-symmio"></a>

The platform incorporates multiple fees to manage and sustain its operations. Developers and organizations interfacing should familiarize themselves with these fees to ensure a seamless trading experience:

1. **Platform Fee**: This fee is charged to PartyA when a position is initiated on the platform. It contributes to the upkeep and management of the platform.
2. **Liquidator Fee (LF)**: The LF is a specific charge designed to compensate for the risks associated with liquidation processes on the platform.
3. **Counterparty Valuation Adjustment (CVA)**: This is a penalty levied during the liquidation phase. The party subjected to liquidation is required to remit this fee to their counterparty as compensation for potential losses or risks incurred.
4. **Funding Rate:** In the context of hedging, it is widely acknowledged that the majority of solvers opt to hedge their positions with a broker. Given that brokers may impose funding rates, during the intent request phase, both the solver and PartyA will negotiate and concur on a maximum funding rate. The contract administrator determines the period for each symbol. When this designated period arrives, the solver may either request or disburse the funding rate.
5. **Spread Considerations**: In the ecosystem, solvers may occasionally employ strategies that prevent them from placing orders with their broker at the exact price stipulated by PartyA. This discrepancy can manifest as a wider spread in the order book compared to the solver's broker orders. It's imperative for solvers to understand that Muon signatures do not consider these spreads. An exaggerated spread could deter user trading interest, increase the chances of forced position closures, and elevate potential loss risks. To maintain platform integrity and user trust, solvers are recommended to ensure their spread fees remain within a justifiable bracket.

### 7. **Network's Solvency and Settlement Mechanism** <a href="#user-content-7-symmio-networks-solvency-and-settlement-mechanism" id="user-content-7-symmio-networks-solvency-and-settlement-mechanism"></a>

In the current iteration, the system prohibits parties from initiating any actions if the solvency of either party is under scrutiny. This measure ensures the integrity and reliability of transactions within the network.

To achieve seamless settlements and maintain transparency, we rely on a trustworthy third party to procure signatures such as UPNLs and Prices. Detailed specifications of these signatures can be found in the contract's Application Binary Interface (ABI).

For a comprehensive understanding of the underlying mechanisms and operations of the Muon network, which forms an integral part of our system, please refer to the official documentation: [Muon Network Documentation](https://docs.muon.net/muon-network/).

### 8. Off-Chain Communication between Solver and Party A <a href="#user-content-8-off-chain-communication-between-hedger-and-party-a" id="user-content-8-off-chain-communication-between-hedger-and-party-a"></a>

To optimize user experience, facilitate experimentation, and aid users in identifying the most suitable solver for their needs, SYMMIO provides a suite of off-chain information. This information is primarily classified into two categories: APIs and Web-Sockets.

It's important to emphasize that several of these APIs aim to reduce user request failures. They are often subject to the solver's policies. For example, if a solver doesn't mandate a whitelist, then the related APIs become superfluous.

### **8.1. List of APIs**

This section delves into each API that a solver might offer to IntentX. It covers the API's description, URL, input parameters, and output structure. For an extensive examination and testing of these APIs, consult the [Test Solver Documentation](https://hedger2.deus.finance/docs).

1. **GET contract\_symbols**
   * Out put schema:

     ```
     {
       "count": int,
       "symbols": [
         {
           "price_precision": int,
           "quantity_precision": int,
           "name": "string",
           "symbol_id": "string",
           "is_valid": bool
         }
       ]
     }
     ```

* **Description:** Retrieves a list of available symbols from the solver with details like price precision, quantity precision, symbol name and ID, and the symbol's validity status.

3. **GET add-sub-address-in-whitelist/{address}/{client}**

* Input Parameters:
  * `address`: User's sub-address.
  * `client`: Given potential collaboration with multiple front-ends and contract versions of SYMMIO, this specifies the multi-account contract to be referenced.
* **Output:** A 200 HTTP status code denotes successful whitelisting.

4. **GET open-interest**

* out-put schema:

  ```
  {
    "total_cap": int,
    "used": int
  }
  ```
* Description: This API discloses the cumulative available notional capacity of the solver (summing up the capacities across all symbols) alongside the used capacity.

5. **POST position-state/{start}/{size}**

* Input Parameters:
  * Query Parameters: `start` and `size` are utilized for pagination.
  * Request data:

```
   {
     "address": "string",
     "quote_id": int,
     "symbols": [
       "string"
     ],
     "states": [
       "string"
     ],
     "create_time_gte": int,
     "modify_time_gte": int
   }
```

* Description: The position state mechanism notifies users of the reasons for request rejections and offers insights into activities on the solver's end. The current version of IntentX employs this route to fetch user notifications since the user's last active session. Comprehensive details on this mechanism will be elucidated in the web-socket section.

6. **GET notional\_cap/{symbol}**

* Response Schema:

  ```
  {
    "total_cap": int,
    "used": int
  }
  ```
* Description: This API reveals the total and consumed capacity of the solver specific to a given symbol.

7. **GET price-range/{symbol}**

* Response Schema:

  ```
  {
    "min_price": int,
    "max_price": int
  }
  ```
* Description: The API delineates the range of acceptable prices, indicating the minimum and maximum for a particular symbol.

8. **GET check\_in-whitelist/{address}/{client}**

* Description: Determines whether a user's wallet has previously been whitelisted.

9. **GET error\_codes**

* Description: Fetches a correspondence between all error codes and their associated messages.

10. **GET error\_codes/{error\_code}**

* Description: Retrieves the message corresponding to a specific error code.

11. **GET get\_locked\_params/{symbol}?leverage={leverage}**

* Response Schema:

  ```
  {
    "cva": int,
    "mm": int,
    "lf": int,
    "leverage": int
  }
  ```

  * Description: Solvers have the prerogative to request varied percentages for the CVA, MM, and LF based on different leverages. This route elucidates these percentages.

12. **GET get\_market\_info**

* Response Schema:

  ```
  {
  "symbol": {
      "price": int,
      "price_change_percent": int,
      "trade_volume": int,
      "notional_cap": int
    }
  }
  ```
* Description: This API is integral to the market information page of IntentX

### 8.2. List of Web-Sockets <a href="#user-content-82--list-of-web-sockets" id="user-content-82--list-of-web-sockets"></a>

**8.2.1. Notification Web-Socket**

Due to a delay in contracts and various events such as the filling of a position or the rejection of a request by the solver, IntentX is capable of displaying these notifications to the user in real time. The following information describes the current types of notifications within the current notification system, but if any solver requires additional types of notifications, please feel free to inquire.

**Table 4: Different Types of Notifications**

<table><thead><tr><th>Notification</th><th width="118">State Type</th><th width="133">Action Status</th><th>Additional Fields to be Sent</th></tr></thead><tbody><tr><td>Filling status of intent limit</td><td>report</td><td>*</td><td>filled_amount_open, quote_id, counterparty_address</td></tr><tr><td>Filling status of closing order limit</td><td>report</td><td>*</td><td>filled_amount_close, quote_id, counterparty_address</td></tr><tr><td>Notification when the solver has viewed a request</td><td>alert</td><td>seen</td><td>last_seen_action, quote_id, counterparty_address</td></tr><tr><td>Notification when the solver successfully responds to a request from PartyA</td><td>alert</td><td>success</td><td>last_seen_action, quote_id, counterparty_address</td></tr><tr><td>Notification when the solver rejects a request from PartyA</td><td>alert</td><td>failed</td><td>error_code, last_seen_action, quote_id, counterparty_address</td></tr></tbody></table>

**8.2.2. uPNL Web-Socket**

This web-socket caters to user experience, displaying Upnl and related information. Note that this data serves solely for frontend representation and holds no business significance.

```
{
    "upnl": int,
    "notional": int,
    "timestamp": int,
    "available_balance": int,
    "allocated_balance": int,
    "cva": int,
    "mm": int,
    "lf": int,
    "total_locked": int,
    "pending_cva": int,
    "pending_mm": int,
    "pending_lf": int,
    "total_pending_locked": int
}
```

### 9. Recommended Architecture for the Solver <a href="#user-content-8-recommended-architecture-for-the-hedger" id="user-content-8-recommended-architecture-for-the-hedger"></a>

In this section, we present a proposed architecture tailored for solver services and components. This architecture is designed for solvers intending to hedge their positions with a broker. Each micro-service in this architecture performs a specific function. The diagram below illustrates the architecture.

<div data-full-width="true"><figure><img src="/files/WHSB8pPXFPkL8U7wJQdf" alt=""><figcaption></figcaption></figure></div>

​ **Figure 9: Recommended Architecture for the Solver**

Each circle in the diagram represents a distinct micro-service within the solver system. The micro-services within containers act as backup services for one another. It is imperative to ensure maximum isolation between these micro-services, facilitating communication via message brokers like RabbitMQ and Redis. Employing a micro-service architecture offers a plethora of advantages. For instance, any malfunction in one service will minimally impact others. Moreover, modifications to any individual module will not affect others, provided there's no change in its input or output specifications. It's strongly advised to utilize separate Docker containers for each micro-service to enhance isolation and streamline resource management. This modular approach promotes superior scalability and fault tolerance. Each micro-service can scale autonomously, and a failure in one won't compromise the others. In essence, a micro-service architecture offers numerous advantages, such as enhanced isolation, scalability, fault tolerance, and efficient resource management.

A brief overview of each micro-service's function is as follows:

* **Solver Web-Server**: This micro-service offers the APIs and web-sockets essential for IntentX, as discussed in the preceding section. It extracts data from the Solver database, processes it, and transmits it to IntentX.
* **SYMMIO Blockchain Input Module**: This module's duty is to capture events from the blockchain. Given the critical nature of this information for the solver, three separate micro-services, performing identical functions, have been established. This redundancy ensures that if one service falters, the others remain operational. These micro-services function as event-listeners, procuring a real-time stream of blockchain events via a websocket RPC. The subgraph fetcher extracts data from the subgraph, while the event poller captures events using an HTTP RPC.
* **Web3 Agent**: This module facilitates transactions and view calls required by other micro-services.
* **Balance Manager**: This component manages the allocation of the solver's funds across its sub-accounts to virtually eliminate liquidation risks. For instance, if the solver's health ratio is disparate across sub-accounts, this module will reallocate funds accordingly to maintain equilibrium.
* **Position Manager**: Serving as the solver's core service, the Position Manager handles pivotal actions and decisions. It processes events fetched from the blockchain and the status of pending broker positions. This module evaluates solver policies and executes appropriate actions such as initiating or terminating positions on either the broker or contract side. Given its significance, it's advisable to deploy multiple instances of this service.
* **Broker Order Monitoring**: This module oversees the status of limit orders with the broker and notifies the Position Manager upon order execution. Two micro-services, one relying on a WebSocket and the other on an API call, fetch these orders to ensure uninterrupted solver availability.
* **Broker Order Maker**: This module oversees necessary updates on the broker side, encompassing order creation, cancellation, and termination.
* **Position Validator**: Every position is reflected across three platforms: the broker, the blockchain, and the solver database. This module's role is to ensure uniformity across these platforms and alert developers in case of discrepancies.
* **Monitoring and Developer Alerts**: This system monitors all micro-services, raising alerts to developers if any anomalies arise.


# FAQ

## Trading and Contracts

### **What are perpetual contracts?**

Perpetual contracts are a type of futures contract without an expiry date, allowing traders to hold positions for as long as they desire.&#x20;

### **How do I start trading perpetual contracts on IntentX?**

Create an account, deposit USDC collateral, and start trading! Please visit the [‘Trading Tutorials’ pages](/intentx-platform/trading-on-intentx/trading-tutorials) in our docs for help with setup!&#x20;

### **What assets are available for trading with perpetual contracts on IntentX?**&#x20;

IntentX currently allows for trading on 290+ pairs, you can find the full list in our docs on the [‘Pair List’ page](/intentx-platform/pair-list).&#x20;

### **How is margin trading handled in perpetual contracts on IntentX?**&#x20;

IntentX accounts utilize cross-margin, meaning that your portfolio (all assets and positions) is collateral. This means that your ENTIRE account is at risk for liquidation.&#x20;

### What are the fees for trading perpetual contracts on IntentX?&#x20;

IntentX charges a 0.06% platform fee (0.03% open + 0.03% close) on all positions. Other ‘fees’ include funding rates and the spread(s) quoted by solvers.&#x20;

### How do liquidations work in perpetual contract trading on IntentX?&#x20;

Liquidation occurs when your ‘Equity Balance’ drops below the required Maintenance Margin (CVA). Due to your account being cross-margin, all of the assets/positions in the account will be liquidated should this occur.

### **Can I use leverage in perpetual contract trading on IntentX?**&#x20;

Yes, we allow up to 60X leverage on trading pairs.&#x20;

### **What risk management tools are available for perpetual trading on IntentX?**&#x20;

You can use the ‘Manage Account’ page in the UI to view all trading/account statistics and deposit/withdraw funds. Stop Loss and Take Profit will also be usable features in the future.

## **Platform Usage and Features**

### **How do I get a referral link for IntentX?**&#x20;

When you open an account on IntentX, you automatically receive a referral link. To find your referral link, click [here](https://app.intentx.io/referrals).

### **How do referrals work?**&#x20;

Both referrers and referees get a 15% bonus on ‘Trade and Earn’ rewards. Please refer to the ['Referral Program' page](/intentx-platform/referral-program) for more details.

### **How do I trade using the mobile/PWA version of IntentX?**&#x20;

Follow the guide in your mobile browser, or on our [‘IntentX Mobile and Progressive Web App’ page](/intentx-platform/mobile-and-progressive-web-app), to set up our PWA on your Android or iOS phone.&#x20;

### **How do I view my trade history?**&#x20;

Click on the ‘Order History’ tab in the trading UI.&#x20;

### **How do I export my trade history?**&#x20;

Click the ‘Export CSV’ button in the ‘Order History’ tab in the trading UI.&#x20;

### **Where can I see my trade statistics/manage my account?**&#x20;

You can manage and view all of your account statistics on the ‘Manage Account’ page.&#x20;

### **Where do I see my referrals?**&#x20;

View the ‘Referrals’ page in the UI to find your referral statistics.&#x20;

### **What networks are supported by IntentX?**&#x20;

IntentX is currently supported by the Mantle Network & Base L2, with plans to move to many other chains in the future.&#x20;

### **Is there a token associated with IntentX?**&#x20;

Yes, the $INTX token has been live since the 31st of May 2024. Find out more [here](https://www.coingecko.com/en/coins/intentx).

### **Is IntentX audited?**&#x20;

Sherlock audits all backend contracts (SYMMIO). Quantstamp will audit all IntentX contracts.

## **Technical Questions and Support**

### **What type of collateral is used for trading on IntentX?**&#x20;

The only collateral that can be utilized on IntentX is USDC & USDe, depending on your trading chain. We recommend swapping for USDC using DeFi Llama’s Meta-DEX Aggregator, [LlamaSwap](https://swap.defillama.com/). We also recommend swapping for USDe using [MerchantMoe](https://merchantmoe.com/) on the Mantle Network.

### **How do I bridge to the chain I want to trade on with IntentX?**&#x20;

You can bridge your assets/USDC via any bridge you like to the Base network or Mantle Network. We recommend the [Stargate Bridge](https://stargate.finance/transfer).&#x20;

### **How do I create an isolated trade?**&#x20;

Because IntentX accounts are cross-margin, you must create multiple sub-accounts to have isolated trades.&#x20;

### **What should I do if TradingView charts aren't loading?**&#x20;

Make sure that you turn your add-blocker off and refresh the page.&#x20;

### **How do I view the profit and loss of my trades?**&#x20;

You can view your position uPNL and PNL on the ‘Positions’ and ‘Order History’ tabs respectively in the trading UI. You can view your cumulative PNL on the ‘Manage Account’ page.&#x20;

### **What do terms like Maintenance Margin (CVA), and Equity Balance mean?**

* **Maintenance Margin (CVA)** - the overall margin required for your account to remain solvent
* **Equity Balance** - the total account balance at any given moment, factoring in all of your open positions
* **Remaining Equity to Liquidation** - how much equity balance you have remaining before your accounts balance is liquidated.
* **Allocated Balance** - available funds to open orders with and their total allocated amounts
* **Locked Margin** - the total margin engaged across all live positions, acting as a buffer to prevent excessive position openings
* **Available for Orders** - the funds that are still accessible for placing new orders.
* **Estimated Liquidation Price** - the estimated liquidation prices for their new and open positions

### **Where can I find support if I have issues or questions about trading?**&#x20;

You can find support in our documentation or by opening a ticket in our discord.

## **Liquidity, Positions, and Pricing**

### **What does it mean when there is ‘No Liquidity Available’? When will more liquidity be added?**&#x20;

This means that all of the available open interest provided by the solver is being utilized in open trades. More liquidity will become available as trades are closed/liquidated, or if the solver adds more collateral to facilitate additional OI.&#x20;

### **What is Open Interest (OI) in the context of IntentX?**&#x20;

OI is the notional value of all short- and long-open interest on the platform. You can view the current and total OI in the ‘Open Interest’ box within the trading UI.&#x20;

### **How can I find the available liquidity for a trading pair?**&#x20;

Select the pair you would like to trade. Once loaded you can view the current and available liquidity for that pair in the ‘Avail. Liquidity’ box in the trading UI.&#x20;

### **Why can't I close my position on IntentX if my uPNL is positive?**&#x20;

If your uPNL is positive but you cannot close, the slippage to close may likely cause a liquidation. To address this you can change your slippage in your advanced settings or close the position in smaller increments.&#x20;

### **What are the platform fees on IntentX?**&#x20;

IntentX charges a flat 0.06% platform fee for all trades (0.03% open/close). Additional ‘fees’ may include funding rates and the solver spread.&#x20;

### **How do I view the spread?**&#x20;

Use the ’Spread (bps)’ box in the trading UI to view the current solver spread.

## **Trade Management and Risk**

### **Why was my trade request rejected?**&#x20;

Trades can be rejected by the solver at their discretion (I.e. the current price is now dramatically different from the streamed quote). If your request is rejected, please re-input the trade and try again.&#x20;

### **How do I cancel a trade if it is stuck?**&#x20;

Click the ‘Close’ button on your position in the ‘Positions’ tab.&#x20;

### **Are there Stop Loss and Take Profit options?**&#x20;

Stop loss and take profit options will be available in the future.&#x20;

### **Can I cancel a pending withdrawal?**&#x20;

Not currently, but this will be available in the future.&#x20;

### **Can I move collateral between sub-accounts?**&#x20;

Not currently, but this will be available in the future.&#x20;

### **What does it mean when a position is pending?**&#x20;

The solver has not confirmed the trade yet, please either force close the order or wait for them to ‘Confirm’ or ‘Reject’ the trade.&#x20;

### **Why is the liquidation price estimated?**&#x20;

The liquidation price for positions are estimated because they are based on the current margin in the account, which is dynamic as it is cross-margin. Please remember these are simply estimates and will change with the margin in your account.&#x20;

### **What are funding rates?**&#x20;

Users with open positions will pay or receive funding fees depending on the underlying contract skew. You can view the current funding rate in the ‘Funding Rate’ box of the trading UI.

## **CVA and Withdrawals**

### **What is Credit Valuation Adjustment (CVA) and how does it affect trading on IntentX?**&#x20;

CVA is the Maintenance Margin required for your account to remain solvent. Your Equity Balance MUST be higher than your CVA, or your entire account will be liquidated.&#x20;

### **Why is the CVA higher with higher leverage?**&#x20;

Because IntentX does not house liquidity locally, nor have an insurance fund to offset losses, there can be no bad debt in the system in the event of a liquidation. Thus, higher leverage requires a higher CVA to ensure that all counterparties are made whole in the event of a liquidation.&#x20;

### **Why is there a 12-hour withdrawal time?**&#x20;

There is a 12-hour withdrawal period to prevent fraudulent activities and double-spending. In the future, we hope to reduce the time to withdraw.


# Official Links

**Website:** [**https://intentx.io/**](https://intentx.io/)

**Twitter:** [**https://twitter.com/IntentX\_**](https://twitter.com/IntentX_)

**Discord:** [**https://discord.gg/IntentX**](https://discord.gg/IntentX)

**Documents:** [**https://docs.intentx.io/**](https://docs.intentx.io/)

**Medium:** [**https://medium.com/@IntentX**](https://medium.com/@IntentX)

**Telegram:**  [**https://t.me/intentxio**](https://t.me/intentxio)


# Terms & Conditions

These Terms and Conditions, along with any documents referenced herein (collectively referred to as "Terms"), apply to you as an individual or the entity you represent ("you" or "your"). These Terms outline the conditions governing your access to IntentX ("the Site"). If you do not agree with any section of these Terms, you shall not to use the Site.

## 1. USE OF THE SITE

IntentX serves solely as an informational site for Message Data only. “Message Data” means instructions or messages entered into, transmitted through or made available on the Site.\
\
IntentX does not operate an exchange platform or offer any trade execution or clearing services and has no oversight, involvement, or control concerning your transactions using the Site. All transactions between users of the Site are executed peer-to-peer directly between the users' blockchain addresses through third-party developed and deployed smart contracts.\
\
IntentX is not part of any transaction on the blockchain networks underlying the Site; we do not have possession, custody, or control over any crypto assets appearing on the Site; and we do not have possession, custody, or control over any user's funds. Further, we do not store, send, or receive any crypto assets. You understand that when you interact with any underling third party smart contracts, you always retain control over your crypto assets.\
\
Accessing the Platform may necessitate the creation of an account through a third-party service, requiring you to provide accurate and complete information. At no point does IntentX collect, verify, authorize, or validate the information associated with the creation or use of these accounts. The responsibility of maintaining the confidentiality of your account credentials, including but not limited to email, username, and password, rests solely with you. You are also accountable for all activities occurring under your account. In the event of any unauthorized access or security breach related to your account, you are obliged to notify IntentX promptly. However, it is important to emphasize that IntentX bears no responsibility for the management or security of any third-party login methods and associated account information.

* 1.1. To access or use the Site, you hereby affirm the following to IntentX:
  * 1.1.1. If you are accessing as an individual, you confirm that you have reached the legal age in your residing jurisdiction and possess the legal capacity to agree and comply with these Terms;
  * 1.1.2. If accessing as an entity, you assert that you are authorized to accept and adhere to these Terms on behalf of the entity, and all references to "you" will be directed to said entity;
  * 1.1.3. User has the legal and jurisdictional capacity to use the Site and to transmit or receive Message Data through the Site.&#x20;
  * 1.14. User’s use of the Site complies and will comply with:\
    (i) all applicable Laws; \
    (ii) the policies and practices of any securities, futures and/or digital asset exchange regulatory organizations applicable to user and to Message Data entered by a user through the Site, and \
    (iii) User has all consents, rights, authority and has taken all actions necessary, to use the Site and to transmit or receive Message Data through the Site, as set forth herein.
  * 1.1.5. You are not a U.S. Person;
  * 1.1.6. You are not a resident, citizen, or representative of any country facing embargoes or similar sanctions imposed by the United States, United Kingdom, or European Union. (collectively, "Restricted Territories");
  * 1.1.7. You are not subject to economic or trade sanctions administered or enforced by any governmental authority; or otherwise, you are not a member of any sanctions list or equivalent maintained by the United States government, the United Kingdom government, the European Union, or the United Nations, including without limitation the U.S. Office of Foreign Asset Control Specifically Designated Nationals and Blocked Person List (collectively, "Sanctions Lists Persons");
  * 1.1.8. You have no intentions to engage in transactions with individuals or entities residing in Restricted Territories or listed on Sanctions Lists;
  * 1.1.9. You shall not employ VPNs, anonymization tools, or any other means to bypass or evade applicable restrictions or regulations; and
  * 1.1.10. Your access is not (a) prohibited by and does not otherwise violate or assist you in violating any domestic or foreign law, rule, statute, regulation, by-law, order, protocol, code, decree, letter, or another directive, requirement, guidance, or guideline, published or in force that applies to or is otherwise intended to govern or regulate any person, property, transaction, activity, event or other matter, including any rule, letter, order, judgment, directive or other requirements, guidance, or guideline issued by any domestic or foreign federal, provincial or state, municipal, local or other governmental, regulatory, judicial or administrative authority having jurisdiction over IntentX or you as otherwise duly enacted, enforceable by law, the common law or equity (collectively, "Applicable Laws"); or (b) contribute to or facilitate any illegal activity.
* 1.2. As a condition to accessing or using the Site, you acknowledge, understand, and agree to the following:
  * 1.2.1. From time to time, the Site may be inaccessible or inoperable for any reason, including, but not limited to: (a) equipment malfunctions; (b) periodic maintenance procedures or repairs that IntentX or any of its suppliers or contractors may undertake from time to time; (c) causes beyond IntentX's control or that IntentX could not reasonably foresee; (d) disruptions and temporary or permanent unavailability of underlying blockchain infrastructure; or (e) unavailability of third-party service providers or external partners for any reason;
  * 1.2.2. IntentX retains the right to modify or disable access to the Site in the case of a breach of these Terms or if we have grounds to suspect that your representations are incorrect or misleading. We will not be held liable for any loss or damage arising from such actions;
  * 1.2.3. The Site may evolve, which means third parties may apply changes, replace, or discontinue (temporarily or permanently) the access at any time in their sole discretion;
  * 1.2.4. The pricing information provided on the Site does not represent an offer, a solicitation of an offer, or any advice regarding, or recommendation to enter into, a transaction with IntentX;
  * 1.2.5. No Brokerage Relationship with IntentX; No Responsibility for Message Data. User acknowledges and agrees that: \
    &#x20;  (a) IntentX is not now, and shall not be a party to, the executing broker-dealer for or exchange for, any orders or transactions that result from Message Data that User sends through the Site; \
    &#x20;  (b) although the System may transmit the Message Data that User sends through the Site, IntentX is not providing any service of dealing in (whether buying or selling) any products and is not accepting any orders for execution and is not responsible for the execution of any orders; \
    &#x20;  (c) IntentX is not responsible for any party to any transaction resulting from the transmission of Message Date; \
    &#x20;  (d) IntentX is not providing any advice (including investment related advice or the advisability of trading) to User and \
    &#x20;  (e) IntentX has no obligation to accept or transmit all or any part of any Message Data that is sent through the Site. Without limitation of the foregoing, IntentX has no responsibility for transmissions that are inaccurate, are not received or are delayed by the Site. For the avoidance of doubt, User is not a brokerage customer of IntentX.
  * 1.2.6. You are solely responsible for your use of the Site, including every digital asset transfer you initiate or receive;
  * 1.2.7. To the fullest not prohibited by Applicable Law, we owe no fiduciary duties or liabilities to you or any other party, and that to the extent any such duties or liabilities may exist at law or in equity, you hereby irrevocably disclaim, waive, and eliminate those duties and liabilities;
  * 1.2.8. You are solely responsible for reporting and paying any taxes applicable to your use of the Site; and
  * 1.2.9. We have no control over, or liability for, the delivery, quality, safety, legality, or any other aspect of any digital assets that you may transfer to or from a third party, and we are not responsible for ensuring that an entity with whom you transact completes the transaction or is authorized to do so. If you experience a problem with any transactions in digital assets using the Site, you bear the entire risk.

## 2. TRANSACTION FEES

You are required to pay all fees for transactions involving certain blockchain networks. These fees may include gas costs and all other fees reflected on the Site at your use, including trading-related fees. IntentX does not receive fees for any blockchain transactions or using the Site.

## 3. DISCLAIMER OF PROFESSIONAL ADVICE OR FIDUCIARY DUTIES

The content and information provided on the Site are not to be interpreted as legal, financial, business, or tax advice. We strongly encourage users to seek professional consultation before participating in activities related to the provided information. The Site's content is meant for informational purposes and is not to be considered as professional counsel. Users should not base their actions, or refrain from action, on the information found on the Site or any other content provided by us, including but not limited to blog posts, articles, third-party content links, Discord content, news feeds, tutorials, tweets, and videos. These Terms do not establish or entail any fiduciary duties on our part.

## 4. PROPRIETARY RIGHT

* 4.1. IntentX own all rights, names, logos, and other marks used on the Site and the Site, including, without limitation, any copyrights in and to any content, code, data, or other materials that you may access or use on or through the Site, your use of or access to the Site does not grant you any ownership or other rights therein.
* 4.2. IntentX may use and share your comments, bug reports, ideas, or other feedback that you may provide, including suggestions about how we might improve. You agree that IntentX is free to use or not use any feedback we receive from you as we see fit, including copying and sharing such feedback with third parties, without any obligation to you.

## 5. MODIFICATION, SUSPENSION, AND TERMINATION

* 5.1. IntentX reserve the right, at our sole discretion, from time to time and with or without prior notice to you, to modify, suspend or disable (temporarily or permanently) the Site or our subdomain to the Site, in whole or in part, for any reason whatsoever, including, without limitation. Upon termination of your access, your right to use the Site from our subdomain will immediately cease. IntentX will not be liable for any losses suffered by you resulting from any modification to the Site or from any modification, suspension, or termination, for any reason, of your access to all or any portion of the Site.
* 5.2. IntentX may revise these Terms from time to time. We will notify you by updating the date at the top of the Terms and maintaining a current version. All modifications will be effective when they are posted. By continuing to access or use the Site after those revisions become effective, you agree to be bound by the revised Terms.

## 6. RISKS

* 6.1. The use of technology related to blockchain, smart contracts, and cryptocurrencies, among others, entails a risk that by accessing transactions, you are assuming. IntentX does not own or control any underlying software through which blockchain networks are formed. By using the Site, you acknowledge and agree:
  * 6.1.1. That IntentX is not responsible for the operation of third party software and networks underlying the Site;
  * 6.1.2. That there exists no guarantee of the functionality, security, or availability of that software and networks; and
  * 6.1.3. That the underlying networks are subject to sudden changes in operating rules and updates, which may materially affect the Site. You are responsible for securing your private key(s). We do not have access to your private key(s); losing control of your private key(s) will permanently and irreversibly deny you access to any blockchain-based network. Neither IntentX nor any other person or entity will be able to retrieve or protect your digital assets. If your private key(s) are lost, you will not be able to transfer your digital assets to any blockchain address or wallet. If this occurs, you will not be able to realize any value or utility from the digital assets you may hold.
* 6.2. IntentX is not responsible for the content of any third party, including, but not limited to, information, materials, products, or services that IntentX does not own or control. In addition, third parties may offer promotions related to your access and use of the Site. IntentX does not endorse or assume any responsibility for such resources or promotions. Suppose you access any such resources or participate in any such promotions. In that case, you do so at your own risk and understand that these Terms do not apply to your dealings or relationships with any third parties. You expressly relieve IntentX of all liability arising from using such resources or participating in such promotions.
* 6.3. You understand that the underlying blockchains and software remains under development, which creates technological and security risks when using the Site, in addition to uncertainty relating to digital assets and transactions therein. You acknowledge that the cost of transacting on the blockchain is variable and may increase at any time, causing an impact on any activities taking place on these blockchains, which may result in price fluctuations or increased costs when using the Site.
* 6.4. Transactions entered into in connection with the Site are irreversible and final, and there are no refunds. You acknowledge and agree that you will access and use the Site at your own risk.
* 6.5. We must comply with Applicable Law, which may require us to, upon request by government agencies, take certain actions or provide information that may not be in your best interests.
* 6.6. You hereby assume and agree that IntentX will have no responsibility or liability for the risks in Section 9. You hereby irrevocably waive, release and discharge all claims, whether known or unknown to you, against IntentX, its affiliates, and their respective shareholders, members, directors, officers, employees, agents, representatives, suppliers, and contractors related to any of the risks set forth in this Section 6.

## 7. PROHIBITED USES

* 7.1 You agree not to engage in the prohibited uses set forth below. The specific activities set forth below are representative but not exhaustive. By using the Site, you confirm that you will not do any of the following:
  * 7.1.1. Promote or facilitate illegal activities, including but not limited to money laundering, terrorist financing, tax evasion, buying or selling illegal drugs, contraband, counterfeit goods, or illegal weapons;
  * 7.1.2. Engage in transactions involving items that infringe or violate any copyright, trademark, right of publicity, privacy, or any other proprietary right of IntentX;
  * 7.1.3. Engage in improper or abusive trading practices, including but not limited to (a) any fraudulent act or scheme to defraud, deceive, trick, or mislead; (b) wash trading (c) trading ahead of another user of the Site or front-running; (d) fraudulent trading; (e) accommodation trading; (f) fictitious transactions; (g) pre-arranged or non-competitive transactions; or (h) cornering;
  * 7.1.4. Uploading or transmitting viruses, worms, Trojan horses, time bombs, cancelbots, spiders, malware, or any other type of malicious code that will or may be used in any way that will affect the functionality or operation of the Site;
  * 7.1.5. Use the Site or Site in any way that is, in our sole discretion, libelous, defamatory, profane, obscene, pornographic, sexually explicit, indecent, lewd, vulgar, suggestive, harassing, stalking, hateful, threatening, offensive, discriminatory, bigoted, abusive, inflammatory, fraudulent, deceptive, or otherwise objectionable or likely or intended to incite, threaten, facilitate, promote, or encourage hate, racial intolerance, or violent acts against others;
  * 7.1.6. Harass, abuse, or harm another person or entity, including IntentX's collaborator and service providers;
  * 7.1.7. Impersonate another user of the Site or otherwise misrepresent yourself; or
  * 7.1.8. Engage or attempt to engage or encourage, induce or assist any third party, or yourself attempt, to engage in any of the activities prohibited under this Section 4 or any other provision of these Terms.

## 8. DISCLOSURES; DISCLAIMERS

IntentX is an informational site for the SYMMIO Protocol. IntentX does not operate an exchange platform or offer trade execution or clearing services and has no oversight, involvement, or control concerning your transactions using the Site. All transactions between users of the Site are executed peer-to-peer directly between the users' blockchain addresses through third-party developed smart contract.

You are responsible for complying with all Applicable Laws that govern your Perpetual Contracts. As a result of restrictions under the Commodity Exchange Act and the regulations promulgated thereunder by the U.S. Commodity Futures Trading Commission ("CFTC"), no U.S. Person may enter into Perpetual Contracts using the Site.

You understand that IntentX is not registered or licensed by any regulatory agency or authority. No such agency or authority has reviewed or approved the use of the Site.

You agree that the Site and the Site are provided on an "AS IS" and "AS AVAILABLE" basis. IntentX makes no guarantees of any kind or connection with the Site.

## 9. LIMITATION OF LIABILITY

In no event shall IntentX, its affiliates, its suppliers and contractors, and its affiliates', suppliers' and contractors' respective stockholders, members, directors, officers, managers, employees, attorneys, agents, representatives, suppliers, and contractors shall be liable for any direct, indirect, incidental, special, punitive, consequential or similar damages or liabilities whatsoever (including, without limitation, damages for loss of fiat, assets, data, information, revenue, opportunities, use, goodwill, profits or other business or financial benefit) arising out of or in connection with the Site, or other item provided by or on behalf of IntentX, whether under contract, tort (including negligence), civil liability, statute, strict liability, breach of warranties, or under any other theory of liability, and whether or not we have been advised of, knew of or should have known of the possibility of such damages and notwithstanding any failure of the essential purpose of these Terms or any limited remedy hereunder nor is IntentX in any way responsible for the execution or settlement of transactions between users of the Site.

## 10. INDEMNIFICATION

You will defend, indemnify, and hold harmless IntentX, its affiliates, members, member, managers, employees, attorneys, representatives, suppliers, and contractors from any claim, demand, lawsuit, action, proceeding, investigation, liability, damage, loss, cost or expense, including without limitation reasonable attorneys' fees, arising out of or relating to (a) your use of or conduct in connection with the Site (b) your violation of these Terms; or (c) your misuse of the Site, or any smart contract and/or script related thereto; (d) your violation of any laws, rules, regulations, codes, statutes, ordinances, or orders of any governmental or quasi-governmental authorities; (e) your violation of the rights of any third party, including any intellectual property right, publicity, confidentiality, property, or privacy right; (f) your use of a third-party product, service, and/or website; or (g) any misrepresentation made by you. We reserve the right to assume, at your expense, the exclusive defense, and control of any matter subject to indemnification by you. You agree to cooperate with our defense of any claim. You will not, in any event, settle any claim without.

## 11. DISPUTE RESOLUTION & ARBITRATION

IntentX will use its best efforts to resolve potential disputes through informal, good faith negotiations. If a potential dispute arises, you must contact us by sending a written notice of your claim ("Notice") to IntentX on any of our official channels. The notice must (a) describe the nature and basis of the claim and (b) set forth the specific relief sought. Our notice to you will be similar in form to that described above. If you and IntentX cannot reach an agreement to resolve the claim within sixty (60) days of your contact, then you and IntentX agree to resolve the potential dispute according to the process set forth below.

Any claim or controversy arising out of or relating to the Site or these Terms, or any other acts or omissions for which you may contend that we are liable, including (but not limited to) any claim or controversy as to arbitrability ("Dispute"), shall be finally and exclusively settled by arbitration under the ICC International Court of Arbitration. You understand that you are required to resolve all Disputes by binding arbitration. The arbitration shall be confidential before a single arbitrator, who shall be selected pursuant to the ICC Court rules. Unless we agree otherwise, the arbitrator may not consolidate your claims with those of any other party. Any judgment on the award rendered by the arbitrator may be entered in any court of competent jurisdiction.

Any claim arising out of or related to these Terms or the Site must be filed within one year after such claim arose; otherwise, the claim is permanently barred, which means that you and IntentX will not have the right to assert the claim.

## 12. GOVERNING LAW

The interpretation and enforcement of these Terms, and any dispute related to these Terms, the Site, will be governed by and construed and enforced under the laws of the Bahamas, as applicable.

## 13. GENERAL INFORMATION

* 13.1. Any right or remedy of IntentX set forth in these Terms is in addition to, and not in lieu of, any other right or remedy whether described in these Terms, under Applicable Law, at law, or in equity. The failure or delay of IntentX in exercising any right, power, or privilege under these Terms shall not operate as a waiver thereof.
* 13.2. The following sections of these Terms will survive any termination of your access to the Site, regardless of the reasons for its expiration or termination, in addition to any other provision which by law or by its nature should survive: Sections 3 through 12.
* 13.3. The invalidity or unenforceability of any of these Terms shall not affect the validity or enforceability of any other of these Terms, all of which shall remain in full force and effect.
* 13.4. IntentX will have no responsibility or liability for any failure or delay in performance of the Site, or any loss or damage that you may incur, due to any circumstance or event beyond our control, including without limitation any flood, extraordinary weather conditions, earthquake, or other act of God, fire, war, insurrection, riot, labor dispute, accident, any law, order regulation, direction, action or request of the government, communications, power failure, or equipment or software malfunction.
* 13.5. You may not assign or transfer any right to use the Site, the Site, or any of your rights or obligations under these Terms, without our express prior written consent, including by operation of law or in connection with any change of control. We may assign or transfer any or all of our rights or obligations under these Terms, in whole or part, without notice or obtaining your consent or approval.
* 13.6. These Terms contain the entire agreement between you and IntentX and supersede all prior and contemporaneous understandings between the parties regarding the Site and the Site.
* 13.7. In the event of any conflict between these Terms and any other agreement you may have with us, these Terms will control unless the other agreement specifically identifies these Terms and declares that the other agreement supersedes these Terms.
* 13.8. You agree that, except as otherwise expressly provided in these Terms, there shall be no third-party beneficiaries to the Terms other than the Indemnified Parties.\
  \
  **If you have any questions regarding these Terms, please contact us at <info@intentx.io>.**\
  \
  Last Update: October 7, 2023


# Security & Audits

Security is of utmost importance to our project and to our traders. We take pride in working with 100% audited and tested contracts in every one of our products.

In addition to a transparent and public audit process, contracts undergo peer review from leading developers in the space.

## **Trade Settlement Contracts:**

IntentX currently utilizes SYMMIO-Core v0.8 contracts for trade settlement which have undergone a full Sherlock Audit:

{% embed url="<https://audits.sherlock.xyz/contests/85>" %}

## Token and Staking Contracts:

The INTX token and xINTX staking contract are fully audited by Quantstamp:

{% embed url="<https://certificate.quantstamp.com/full/intent-x/a195e62f-30b6-4219-b9e5-42af8a9e2fd5/index.html>" %}


# Brand & Media Assets

### **Want to create something IntentX-related? Please use the assets below!**

{% file src="/files/Q6FdoRBUoLO7tbLvcJw1" %}

{% file src="/files/WzXq1glv9PANaeH9e4MJ" %}

{% file src="/files/k1MrzMdBGo0xcDyiegFX" %}

{% file src="/files/kSCgSxRDgOoGzr1KbdpM" %}


# Contracts

| Description                     | Contract Address                           |
| ------------------------------- | ------------------------------------------ |
| INTX Token (Mantle)             | 0x4b7F28397B4294277E7825f224172944f4f5A877 |
| INTX Token (Base)               | 0x7D27187eb33a7B1d99258FF222633670F84fa342 |
| xINTX Staking                   | 0x2554727881c5fB22965c6fcB7C6042b367845362 |
| Mantle INTX Treasury (Multisig) | 0xEF23F554af7fA7421aF1Ff53F2B4838C05AFd7a2 |
|                                 |                                            |


