Skip to main content
POST
/
strategy
/
submit
/
maker-taker-arbitrage
curl --request POST \
  --url https://api.hypereth.io/v2/hyperliquid/strategy/submit/maker-taker-arbitrage \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <api-key>' \
  --data '
{
  "symbol": "MON/AUSD",
  "amount": "100",
  "maker": {
    "exchange": "kuru",
    "accountId": "acc_A",
    "side": "buy",
    "price": "0.01"
  },
  "taker": {
    "exchange": "kuru",
    "accountId": "acc_B",
    "side": "sell"
  }
}
'
{
  "strategyId": "maker_taker_550e8400-e29b-41d4-a716-446655440000",
  "status": "pending",
  "createdAt": 1710000000000,
  "requestId": "req_123456789"
}

Authorizations

X-API-KEY
string
header
required

Body

application/json
symbol
string
required

Trading pair symbol

Example:

"MON/AUSD"

amount
string
required

Order amount for both legs

Example:

"100"

maker
object
required

Maker leg configuration

taker
object
required

Taker leg configuration

takerTriggerConfig
object

Optional trigger conditions for the taker order

timeout
integer<int64>

Strategy timeout in milliseconds

Example:

30000

clientStrategyId
string

Optional client-provided strategy ID

Example:

"my_strategy_001"

reconciliation
object

Optional reconciliation configuration

Response

Strategy submitted successfully

strategyId
string

Unique strategy ID

Example:

"maker_taker_550e8400-e29b-41d4-a716-446655440000"

status
enum<string>

Initial strategy status

Available options:
pending,
maker_placing,
waiting_trigger,
taker_triggered,
reconciling,
safe_exiting,
recovering,
completed,
completed_with_recovery,
failed,
cancelled,
timed_out,
requires_intervention
createdAt
integer<int64>

Strategy creation timestamp (milliseconds)

requestId
string

Request correlation ID