You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* move vocs-docs files to the root
* updating old vocs-docs path
* Remove pnpm action setup from lint workflow
* Update lint workflow to install pnpm globally
* Update lint command in package.json to use glob pattern for documentation files
* Update fee
* set C factor to 0
* Update PK example for Typescript
* Update guide for OEGS testnet
* Update guide for OEGS testnet info
* Update description on PK's
* Update PK example fromwallet
* Put typescript implementation on first tab for now
* Fix revshare tpyo
---------
Co-authored-by: alexeykichin <[email protected]>
Copy file name to clipboardExpand all lines: docs/pages/concepts/architecture/oegs.mdx
+8-12Lines changed: 8 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,21 +1,17 @@
1
1
2
2
# OEGS
3
3
4
-
## What is the Order Entry Gateway Service (OEGS) ?
4
+
## What is the Order Entry Gateway Service (OEGS)
5
5
The Order Entry Gateway represents the next step in dYdX’s multi-stage performance evolution:
6
6
7
-
1. Today — full node gossip across all validators.
8
-
2. Designated proposers — predictable topology for faster routing (available in v9 software upgrade).
9
-
3. Order Entry Gateway Service (OEGS) — specialized nodes for direct, one-hop delivery to proposers (available after v9 upgrade).
7
+
1. Designated proposers — A governance-selected subset of validators responsible for proposing blocks. This creates a predictable topology for faster routing (available in v9 software upgrade).
8
+
2. Order Entry Gateway Service (OEGS) — specialized nodes for direct, one-hop delivery to proposers (available after v9 upgrade).
10
9
11
-
This staged evolution ensures each layer builds on order latency improvements while keeping the protocol’s decentralized governance and consensus guarantees intact.
10
+
The Order Entry Gateway Service (OEGS) is open-sourced infrastructure that provides a direct, optimized path from traders to the proposer set, reducing latency, increasing throughput, and lowering barriers for professional and retail traders alike.
11
+
OEGS is now live on testnet, reach out to us for more information.
12
12
13
-
At dYdX, the mission is clear: make perpetuals trading as fast, fair, and reliable as possible — without compromising the decentralization that defines DeFi. As the protocol scales, the infrastructure that routes and processes orders must evolve alongside it.
14
-
15
-
That’s why we’re introducing the Order Entry Gateway Service (OEGS) — open-sourced infrastructure that provides a direct, optimized path from traders to the proposer set, reducing latency, increasing throughput, and lowering barriers for professional and retail traders alike.
16
-
17
-
## 1. Current State
18
-
In today’s dYdX architecture (original blog post [here](https://www.dydx.xyz/blog/v4-technical-architecture-overview)), orders from traders — whether via the web app, mobile, API, or third-party integration — are submitted to full nodes, which then gossip them across the network until they reach the current block proposer.
13
+
## 1. Previous State
14
+
In dYdX previous architecture (original blog post [here](https://www.dydx.xyz/blog/v4-technical-architecture-overview)), orders from traders — whether via the web app, mobile, API, or third-party integration — are submitted to full nodes, which then gossip them across the network until they reach the current block proposer.
19
15
20
16
**Pros**: Fully decentralized, no single point of routing.
21
17
@@ -43,7 +39,7 @@ Historically, traders relying solely on the public Indexer have faced reliabilit
43
39
## 2. Designated Proposers
44
40
We recently introduced the concept of designated proposers (blog post [here](https://www.dydx.xyz/blog/governance-controlled-path-reliability-and-performance)) — a governance-selected subset of validators responsible for proposing blocks. This change to the open-source software creates a predictable topology, making it possible to route transactions directly to the next proposer instead of broadcasting widely. This is a fully deterministic enhancement to CometBFT that brings increased resilience, network performance, and operational clarity — while preserving the full validator set, stake-based voting power, and decentralized governance of the network.
45
41
46
-
## 3. Enter the Order Entry Gateway Service (OEGS)
42
+
## 3. The Order Entry Gateway Service (OEGS)
47
43
The OEGS builds on the designated proposer model by creating a specialized set of gateway nodes that:
Copy file name to clipboardExpand all lines: docs/pages/concepts/architecture/overview.mdx
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,6 +32,13 @@ In service of building an end-to-end decentralized experience, dYdX has built th
32
32
33
33
-**Mobile**: The iOS and Android apps are built in native Swift and Kotlin, respectively. The mobile apps interact with the Indexer in the same way the web application does, and will send trades directly to the chain. The mobile apps have been open sourced as well, allowing anyone to deploy the mobile app to the App Store or Play store. Specifically for the App store, the deployer needs to have a developer account as well as a Bitrise account to go through the app submission process.
34
34
35
+
### Order Entry Gateway Service (OEGS) ?
36
+
The Order Entry Gateway represents the next step in dYdX’s multi-stage performance evolution and is made possible by the following 2 designs:
37
+
38
+
1. Designated proposers — A governance-selected subset of validators responsible for proposing blocks. This creates a predictable topology for faster routing (available in v9 software upgrade).
39
+
2. Order Entry Gateway Service (OEGS) — open-sourced infrastructure that provides a direct, optimized path from traders to the proposer set, reducing latency, increasing throughput, and lowering barriers for professional and retail traders alike (available now on testnet).
40
+
41
+
35
42
### Lifecycle of an Order
36
43
37
44
Now that we have a better understanding of each of the components of dYdX Chain, let's take a look at how it all comes together when placing an order. When an order is placed on dYdX Chain, it follows the flow below:
Copy file name to clipboardExpand all lines: docs/pages/concepts/trading/rewards/trading-rewards.mdx
+7-2Lines changed: 7 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,12 +94,17 @@ Below is an example using the given formula to calculate the trading reward base
94
94
-`Taker Fee Revenue Share`: the taker fee revenue share is 60% or 0.6 including 50% to MegaVault and 10% to Treasury subDAO, as well as 0% to market mapper for a given market.
95
95
-`C`: A constant multiplier that is currently set to 0.5 by the dYdX governance, but subject to change through dYdX governance.
96
96
97
+
:::note
98
+
Note that the community has voted to set the C parameter to 0
Copy file name to clipboardExpand all lines: docs/pages/interaction/deposits-withdrawals/overview.mdx
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,10 @@
2
2
3
3
This guide provides a **step-by-step** explanation of deposit and withdrawal processes on the dYdX Chain. It includes instructions for Skip Go Fast (`Instant`), Skip Go (`regular`), Coinbase deposits, and direct IBC transfers, along with troubleshooting methods and best practices to ensure seamless transactions.
4
4
5
+
:::note
6
+
Note that for deposits > $20, skip go fast is the default option.
Copy file name to clipboardExpand all lines: docs/pages/interaction/permissioned-keys/index.mdx
+60-31Lines changed: 60 additions & 31 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,11 +9,32 @@ This section will guide you through authenticators use and management. We show t
9
9
10
10
## Owner
11
11
12
+
There are 2 ways to setup Permissioned API Keys:
13
+
1/ Via the Trade interface (default permissions to trade on all cross-margin pairs)
14
+
2/ Via API (customisable)
15
+
16
+
12
17
::::steps
13
18
19
+
### Setup Permissioned API Keys via Trade Interface
20
+
21
+

22
+
23
+
On the dYdX.trade, after signing in with your wallet or socials:
24
+
- click `More → API Trading Keys`.
25
+
- Click `Generate New API Key`. This generates a new keypair:
26
+
- API Wallet Address
27
+
- Private Key
28
+
:::note
29
+
This is a one-time view, make sure to save your Private Key immediately. It will not be shown again and is not stored by dYdX
30
+
:::
31
+
- Check the `terms` and click `Authorize API Key`.
32
+
- Now you can go to [Import private key](/interaction/permissioned-keys#trader) to start trading via API keys.
33
+
34
+
14
35
### Create an authenticator
15
36
16
-
Lets create an authenticator which allows only the **trader** to place orders.
37
+
Alternatively, you can create a custom authenticator which allows only the **trader** to place orders.
17
38
18
39
To create this authenticator, we use two sub-authenticators: `signatureVerification` and `messageFilter`:
19
40
- the `signatureVerification` authenticator must be present in all authenticator sets and contains the **trader**'s public key;
@@ -170,20 +191,53 @@ client
170
191
171
192
::::steps
172
193
173
-
### Get the authenticator ID
174
194
175
-
Grab the authenticator ID created by the **owner** in [**Owner**::Step 2](/interaction/permissioned-keys#add-the-authenticator), either by:
176
-
- request to the **owner** through other channels, or;
177
-
- by using the list authenticators method to fetch the last authenticator (see [**Owner**::Step 3](/interaction/permissioned-keys#last-authenticators)).
195
+
### Get the authenticator ID and permissioned API Key
196
+
197
+
Grab the `authenticatorId` created by the **owner** in [Add authenticator](/interaction/permissioned-keys#add-the-authenticator), either by:
198
+
- request the **owner** for the `authenticatorId` or by using the list authenticators method to fetch the to be used authenticator (see [list authenticators](/interaction/permissioned-keys#last-authenticators)).
199
+
- Get the private key `DYDX_TEST_PRIVATE_KEY` from the owner in [via the Trade Interface](/interaction/permissioned-keys#get-the-private-key).
200
+
201
+
202
+
### Setup the permissioned wallet
203
+
If you got a private key from the trading interface load in via `fromPrivateKey`, otherwise use `fromMnemonic` if you didn't create via the trading interface by assigning to mnemonic.
0 commit comments