2 个版本

0.1.1 2023年2月22日
0.1.0 2023年2月22日

#21#defi

Apache-2.0

44KB
1K SLoC

Zeta ABI 🧬

Discord Chat License

Zeta ABI

ABI 是 Zeta 的跨程序集成生态系统。

此存储库包含 Zeta 跨程序调用 (CPI) 接口以及一个使用示例 abi-wrapper

build

跨程序调用

指令

当前支持的指令如下

  • initialize_margin_account - 创建并初始化用户的保证金账户
  • initialize_open_orders - 创建并初始化用户的未成交订单账户
  • deposit - 将 USDC 保证金存入保证金账户
  • withdraw - 从保证金账户提取 USDC 保证金
  • place_order_v4 - 在相关市场上放置 (价格,大小,方向) 的期货订单
  • place_perp_order_v2 - 在相关市场上放置 (价格,大小,方向) 的永续订单
  • cancel_order_xxx - 订单取消函数集合,通过 orderId,clientOrderId,市场等
  • close_open_orders - 关闭未成交订单账户
  • liquidate - 触发清算

账户

当前支持的账户和相关数据(不完整)

  • ZetaGroup - 包含有关标的衍生品市场所有衍生品的信息
    • 标的
    • Serum 市场
    • 行使价
    • 类型(看涨,看跌,期货)
    • 到期日
  • 希腊字母
    • 市场价格
    • Delta
    • Vega
    • 隐含波动率
  • 保证金账户
    • 余额
    • 头寸
    • 辅助函数:get_initial_margin(),get_maintenance_margin(),get_unrealized_pnl()

程序

abi-wrapper

在模拟包装程序中概述了基本用法示例,该程序仅调用主 zeta 程序指令。还包括账户布局,并概述了如何从 Zeta 程序读取所有相关链上数据。这应该为作为智能合约和链下客户端执行核心程序功能提供所有必要的样板。

依赖项

~20–30MB
~510K SLoC