Injective | Documentation
InjectiveGithub
Injective | 中文文档
Injective | 中文文档
  • 关于 Injective
  • 快速入门
    • 钱包
      • 创建钱包
      • 账户
      • 质押
      • 治理
      • 拍卖
    • 代币标准
      • INJ 代币
      • Token Factory
      • CW20 标准
    • 交易
      • Gas 和 Fees
  • 指南
    • 创建钱包
    • 桥接
      • From Ethereum
      • Using Wormhole
      • Using IBC
      • From Solana
    • 发布代币
    • 发布市场
    • Denom 元数据
    • 获取INJ
  • 工具包
    • injectived
      • 安装 injectived
      • 使用 injectived
      • 指令
    • Injective TS SDK
    • Injective Go SDK
    • Injective Python SDK
    • Injective CW SDK
    • The Graph
  • 参考
  • 术语表
  • 开发者
    • 快速入门
      • 指南
        • 测试网提案
        • 转换地址
        • 计算
          • 最低价格刻度
          • 最低数量刻度
    • 交易所开发者
      • 构建 DEX
      • 预言机提供方
    • Cosmwasm 开发者
      • 您的首个智能合约
      • 指南
        • 本地开发
        • 主网开发
        • 给部署地址白名单
        • 创建您的 Swap 合约
        • 创建 UIs
      • CW20 适配器
      • Injective Test Tube
    • 模块
      • Injective
        • 拍卖(Auction)
          • State
          • 消息
          • EndBlock
          • 事件
          • 参数
        • 交易所(Exchange)
          • 衍生品市场概念
          • 现货市场概念
          • 二元期权市场概念
          • 其他概念
          • 状态
          • 状态转换
          • 消息
          • 提案
          • BeginBlock
          • EndBlock
          • 事件
          • 参数
          • MsgPrivilegedExecuteContract
        • 保险(Insurance)
          • 状态
          • 状态转换
          • 消息
          • EndBlock
          • 事件
          • 参数
          • 改进
        • OCR
          • 概念
          • 状态
          • 消息
          • 提案
          • BeginBlock
          • 钩子(Hooks)
          • 事件
          • 参数
        • 预言机(Oracle)
          • 状态
          • Keeper
          • 消息
          • 提案
          • 事件
          • 改进
        • Peggy
          • 定义
          • 工作流
          • 状态
          • 消息
          • 处罚
          • EndBlock
          • 事件
          • 参数
          • 中继语义
          • 改进
        • 权限(Permissions)
          • 概念
          • 状态
          • 状态转换
        • 代币工厂(TokenFactory)
          • 概念
          • 状态
          • 消息
          • 事件
          • 参数
        • WasmX
          • 概念
          • 数据
          • 提案
          • 消息
          • 参数
      • 核心
        • Auth
        • AuthZ
        • 银行(Bank)
        • 共识(Consensus)
        • 危机(Crisis)
        • 分发(Distribution)
        • 证据(Evidence)
        • 费用授权(Feegrant)
        • 治理(Gov)
        • 群组(Group)
        • 铸造(Mint)
        • NFT
        • 参数(Params)
        • 惩罚(Slashing)
        • 质押(Staking)
        • 升级(Upgrade)
        • Circuit
        • Genutils
    • dApps 开发文档
  • 节点
    • 快速入门
      • 和节点交互
      • 运行节点
        • 设置密钥环
        • 加入网络
        • Cosmovisor
        • 升级您的节点
    • 验证者
      • 主网
        • Peggo
        • 规范链升级
          • Upgrade to 10002-rc1
          • Upgrade to 10002-rc2
          • Upgrade to 10003-rc1
          • Upgrade to 10004-rc1
          • Upgrade to 10004-rc1-patch
          • Upgrade to 10005-rc1
          • Upgrade to 10006-rc1
          • Upgrade to 10007-rc1
          • Upgrade to 10008 - Camelot
          • Upgrade to 10009
          • Upgrade to v1.10
          • Upgrade to v1.11
          • Upgrade to v1.12.0 - Volan
          • Upgrade to v1.12.1
          • Upgrade to v1.13.0 - Altaris
          • Upgrade to v1.13.2
          • Upgrade to v1.13.3
          • Upgrade to v1.14.0
          • Upgrade to v1.14.1
      • 测试网
        • 测试网 Peggo
    • 公共端点
    • 高级端点
    • Injective 索引器设置
  • 交易员
    • 快速入门
    • 文档
    • API 参考
  • 常用链接
    • Injective 101
    • Injective Hub
    • Injective 浏览器
    • Chain API Reference
    • Indexer API Reference
    • 测试网水龙头
Powered by GitBook
On this page
  • 并发友好的市场订单清算价格算法
  • 原子市场订单执行
  • 交易奖励
  • 费用折扣
Export as PDF
  1. 开发者
  2. 模块
  3. Injective
  4. 交易所(Exchange)

其他概念

Previous二元期权市场概念Next状态

Last updated 2 months ago

并发友好的市场订单清算价格算法

我们应用范式来利用并发进行高效的数据处理。

  1. 在所有市场中并发匹配所有可匹配的订单(详细信息见订单匹配)。

  • 中间结果是清算价格和已匹配订单的列表,包括它们的成交数量。

  • 最终结果是所有新事件的临时缓存,以及所有位置、订单、子账户存款、交易奖励积分和已支付费用的更改。

  1. 等待所有市场的执行并持久化所有数据。

注意:除了执行结算外,设计还必须考虑市场数据传播的需求,以供链下消费。

原子市场订单执行

一个常见的请求是,基于Cosmwasm构建的新应用程序希望在订单执行时收到通知。在常规的订单执行流程中,这是不可能的,因为频繁批量拍卖(FBA)是在EndBlocker内执行的。为了绕过FBA,介绍了一种新的原子市场订单类型。为了能够即时执行这种原子市场订单,需要额外的交易费用。计算原子市场订单费用时,市场的taker费用会乘以市场类型的AtomicMarketOrderFeeMultiplier。

  • SpotAtomicMarketOrderFeeMultiplier

  • DerivativeAtomicMarketOrderFeeMultiplier

  • BinaryOptionsAtomicMarketOrderFeeMultiplier

这些乘数由全球交易所参数定义。此外,交易所参数还定义了AtomicMarketOrderAccessLevel,指定执行原子市场订单所需的最低访问级别。

const (
	AtomicMarketOrderAccessLevel_Nobody                         AtomicMarketOrderAccessLevel = 0
	AtomicMarketOrderAccessLevel_BeginBlockerSmartContractsOnly AtomicMarketOrderAccessLevel = 1
	AtomicMarketOrderAccessLevel_SmartContractsOnly             AtomicMarketOrderAccessLevel = 2
	AtomicMarketOrderAccessLevel_Everyone                       AtomicMarketOrderAccessLevel = 3
)

交易奖励

治理通过批准一个 TradingRewardCampaignLaunchProposal 提交,该提案指定:

  • 第一个活动的开始时间戳

  • TradingRewardCampaignInfo,其中指定:

    • 活动持续时间(秒)

    • 接受的交易手续费报价货币符号

    • 可选的市场特定的加成信息

    • 排除的市场ID,这些市场的交易将无法获得奖

  • CampaignRewardPools,指定每个连续活动的最大时期奖励,这构成了每个活动的交易奖励池

在每个活动期间,交易所将记录每个交易者从所有合格市场获得的累计交易奖励积分(如果适用,加成会被应用),即报价货币匹配且不在排除列表中的市场。

在每个活动结束时,即活动开始时间戳 + 活动持续时间经过后,每个交易者将根据其在该活动时期的交易奖励积分,按比例获得交易奖励池的份额。

活动不会自动续期。如果在 CampaignRewardPools 中没有定义额外的活动,则交易奖励活动将结束。

费用折扣

治理通过批准一个 FeeDiscountProposal 提交,该提案定义了一个费用折扣计划,其中指定了折扣阶梯,每个阶梯都规定了如果交易者满足指定的最低 INJ 持仓量,并且在指定的时间段内(桶数 * 桶持续时间秒数,通常为 30 天)完成了至少指定交易量(基于指定的报价货币符号),交易者将获得的做市商和吃单者折扣率。该计划还指定了一个排除的市场ID列表,这些市场的交易量将不计入交易量贡献。

  • 在被接受的报价货币符号列表中的现货市场,基础资产和报价资产都属于该列表的市场将不会获得奖励(例如,USDC/USDT 现货市场)。

  • 在具有负做市商费用的市场中,做市商的成交不会为交易者提供任何费用折扣。

  • 如果费用折扣提案通过的时间少于 30 天,即提案创建以来还没有经过 BucketCount * BucketDuration(30 天),那么费用交易量要求将被忽略,以避免对立即入驻的做市商进行不公平的惩罚。

内部的交易量存储在桶中,通常有 30 个桶,每个桶持续 24 小时。当某个桶超过 30 天时,它将被移除。此外,为了提高性能,会缓存一个账户的费用折扣阶梯,该缓存每 24 小时更新一次。

拆分-应用-合并