#phoenix #associated #command #command-line #cli #devnet #mint-tokens

bin+lib phoenix-cli

用于从命令行与 Phoenix 程序交互的 CLI 和相关库

12 个版本

0.3.8 2024 年 4 月 27 日
0.3.7 2023 年 12 月 14 日
0.3.6 2023 年 8 月 22 日
0.3.4 2023 年 7 月 17 日
0.1.7 2023 年 2 月 24 日

#322魔法豆

MIT 许可证

92KB
2K SLoC

phoenix-cli

用于与 Phoenix DEX 交互的 CLI

程序部署

程序 开发网
Phoenix Dex PhoeNiXZ8ByJGLkxNfZRnkUfjvmuYqLR89jjFHGqdXY
程序 主网
Phoenix Dex PhoeNiXZ8ByJGLkxNfZRnkUfjvmuYqLR89jjFHGqdXY

安装

如果您还没有安装 Cargo,则需要安装它。

在您的 shell 中运行以下命令以安装它(或访问 https://rustup.rs/

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

要安装 Phoenix CLI,请在您的 shell 中运行以下命令

cargo install phoenix-cli

运行 CLI

要查看所有可用命令的列表,请运行 phoenix-cli --help image

要放大特定命令,请运行 phoenix-cli <COMMAND> --help

在运行 CLI 时可选项包括以下参数

  • -u, --url 包含您的 RPC 终端。使用 "local"、"dev" 和 "main" 分别为相应的默认终端。默认为您的 Solana CLI 配置设置 - 如果未找到配置,则默认为主网。
  • -k, --keypair-path 包含您希望使用的密钥对的路径。默认为您的 Solana CLI 配置设置 - 如果找不到配置,则默认为 .config/solana/id.json
  • -c, --commitment 包含 RPC 的提交级别。默认为您的 Solana CLI 配置设置 - 如果找不到配置,则默认为 Confirmed

命令

get-all-markets

返回 Phoenix 上存在的所有市场的摘要信息。摘要信息包括市场密钥、基础和报价令牌密钥以及权限密钥。建议使用 no-gpa 标志从静态配置文件中读取,并避免进行昂贵的网络调用。

$phoenix-cli -umain get-all-markets --no-gpa

Found 2 market(s)
--------------------------------------------
Market: 14CAwu3LiBBk5fcHGdTsFyVxDwvpgFiSfDwgPJxECcE5
Base Token: 7Z6Kczxo8ViRpfnsVvVaATB5fQ8bN2CQpxP8DHfd1vz5
Quote Token: 5zUmtDCDeR17UYjvKKqvYp3S9pqcZA69cDoYPtojseJ4
Authority: 9odqiJyK4zCMNfPi6AUE6gi9tomqZKPFYcDiokMXYRzS
--------------------------------------------
Market: 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg
Base Token: So11111111111111111111111111111111111111112
Quote Token: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Authority: 9odqiJyK4zCMNfPi6AUE6gi9tomqZKPFYcDiokMXYRzS

get-market

返回特定市场的详细信息。信息包括基础和报价令牌的市场余额、基础和报价令牌密钥、基础和报价令牌的规模、tick 大小以及按基点计算的接受者费用。

$phoenix-cli -umain get-market 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

Market: 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg
Status: Active
Authority: 9odqiJyK4zCMNfPi6AUE6gi9tomqZKPFYcDiokMXYRzS
Sequence number: 696709
Base Vault balance: 0.000
Quote Vault balance: 10.485
Base Token: So11111111111111111111111111111111111111112
Quote Token: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Base vault key: 8g4Z9d6PqGkgH31tMW6FwxGhwYJrXpxZHQrkikpLJKrG
Quote vault key: 3HSYXeGc3LjEPCuzoNDjQN37F1ebsSiR4CqXVqQCdekZ
Base Lot Size, in whole units: 0.001
Quote Lot Size, in whole units: 0.000001
Tick size in quote atoms per base unit: 0.001
Taker fees in basis points: 2
Fee destination pubkey: 6pwvUFHxtwNrcMqb12V3ni2FXcMnvTWvBWX5DXmPpg1Y
Raw base units per base unit: 1
Market Size Params: MarketSizeParams { bids_size: 4096, asks_size: 4096, num_seats: 8321 }
Successor pubkey: 9odqiJyK4zCMNfPi6AUE6gi9tomqZKPFYcDiokMXYRzS
Uncollected fees, in quote units: 10.48482
Collected fees, in quote units: 0.0

get-traders-for-market

返回在给定市场上拥有批准席位的所有交易者密钥。

$phoenix-cli -umain get-traders-for-market 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

Found 3 trader(s). Printing traders with locked or free lots
--------------------------------
Trader pubkey: 3HBWHuyxWv4uN8U8SeukocrWPfLZJqrtj9DgDHsGo2HR
Base token locked: 116.873
Base token free: 6.666
Quote token locked: 2647.022716
Quote token free: 1222.250847

get-top-of-book

返回给定市场的最佳买价和最佳卖价。

$phoenix-cli -umain get-top-of-book 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

       22.990  5.838
 5.843 22.980 

get-book-levels

返回市场订单簿的前 N 个级别。N 默认设置为 10。

$phoenix-cli -umain get-book-levels 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg -l 5

          23.030  109.725
          23.015   66.583
          23.005   29.987
          22.995   15.006
          22.990    4.838
   5.843  22.980         
  15.031  22.975         
  30.087  22.965         
  66.917  22.955         
 110.552  22.940  

get-full-book

返回给定市场的完整订单簿。

$phoenix-cli -umain get-full-book 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

          23.210  409.500
          23.025  166.320
          23.005  109.954
          22.990   96.747
          22.980   15.025
          22.975    5.845
   5.850  22.965         
  15.050  22.960         
  30.125  22.950         
  67.057  22.930         
 110.784  22.915         
 168.137  22.895         
 426.985  22.710         

get-transaction

返回在给定事务签名中发生的市场事件摘要(放置、填充、减少/取消)。

$phoenix-cli -umain get-transaction 4gw6UDWsDCWrh2eqYxvVzbVyywfPVo24V2qMTSVGJJAdxvv9Tx4pBrqE1cLTgomP2QkZ7wigbjoN3GpibhJY8PFV

market: 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg, event_type: Fill, timestamp: 1677629539, signature: 4gw6UDWsDCWrh2eqYxvVzbVyywfPVo24V2qMTSVGJJAdxvv9Tx4pBrqE1cLTgomP2QkZ7wigbjoN3GpibhJY8PFV, slot: 180067446, sequence_number: 680904, event_index: 0, maker: 3HBWHuyxWv4uN8U8SeukocrWPfLZJqrtj9DgDHsGo2HR, taker: CcoiNhaTR88CSkEdsdeJpEMWnfCNqMf4HGGzXjwnvZF, price: 21.815, side: Bid, quantity: 2.288
market: 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg, event_type: Fill, timestamp: 1677629539, signature: 4gw6UDWsDCWrh2eqYxvVzbVyywfPVo24V2qMTSVGJJAdxvv9Tx4pBrqE1cLTgomP2QkZ7wigbjoN3GpibhJY8PFV, slot: 180067446, sequence_number: 680904, event_index: 1, maker: 3HBWHuyxWv4uN8U8SeukocrWPfLZJqrtj9DgDHsGo2HR, taker: CcoiNhaTR88CSkEdsdeJpEMWnfCNqMf4HGGzXjwnvZF, price: 21.811, side: Bid, quantity: 27.459
market: 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg, event_type: Fill, timestamp: 1677629539, signature: 4gw6UDWsDCWrh2eqYxvVzbVyywfPVo24V2qMTSVGJJAdxvv9Tx4pBrqE1cLTgomP2QkZ7wigbjoN3GpibhJY8PFV, slot: 180067446, sequence_number: 680904, event_index: 2, maker: 3HBWHuyxWv4uN8U8SeukocrWPfLZJqrtj9DgDHsGo2HR, taker: CcoiNhaTR88CSkEdsdeJpEMWnfCNqMf4HGGzXjwnvZF, price: 21.806, side: Bid, quantity: 17.066
Total quote token fees paid: 0.204193

get-market-status

返回给定市场的状态。市场可以处于以下状态:活跃、仅限挂单、暂停、关闭、未初始化、废弃。

$phoenix-cli -umain get-market-status 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

Market status: Active

get-seat-info

返回交易者席位的状况和地址。默认返回付款人的席位信息。席位可以处于以下状态:已批准、未批准、已退休

$phoenix-cli -umain get-seat-info 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg -t3HBWHuyxWv4uN8U8SeukocrWPfLZJqrtj9DgDHsGo2HR

Seat address: GGyZqgoqnKsvMTsmSSkTrDjtdSFUsEoioKz9Yr2vEnZa
Seat status: Approved

get-open-orders

返回给定市场上交易者的所有开放订单。默认返回付款人的开放订单。返回每个订单的侧面、订单ID、tick 价格、价格和规模。

$phoenix-cli -umain get-open-orders 14CAwu3LiBBk5fcHGdTsFyVxDwvpgFiSfDwgPJxECcE5 -tmkrc4jMLEPRoKLUnNL7Ctnwb7uJykbwiYvFjB4sw9Z9

Open Bids
ID                   | Price (ticks)        | Price      | Quantity  
18446744073707873235 | 4466                 | 22.330     | 3.134     
18446744073707873233 | 4465                 | 22.325     | 8.062     
18446744073707873231 | 4462                 | 22.310     | 16.136    
18446744073707873237 | 4461                 | 22.305     | 35.866    
18446744073707873247 | 4457                 | 22.285     | 89.746    
18446744073707873229 | 4457                 | 22.285     | 59.232    
18446744073707873245 | 4420                 | 22.100     | 226.244   

Open Asks
ID                   | Price (ticks)        | Price      | Quantity  
1678379              | 4468                 | 22.340     | 3.133     
1678381              | 4469                 | 22.345     | 8.055     
1678383              | 4470                 | 22.350     | 16.107    
1678377              | 4473                 | 22.365     | 35.770    
1678385              | 4475                 | 22.375     | 58.994    
1678367              | 4483                 | 22.415     | 89.225    
1678369              | 4520                 | 22.600     | 221.238  

request-seat

在链上发送事务以在给定市场上为付款人分配席位。这将花费 ~.0018 SOL 作为租金。请注意,席位必须随后由市场权限批准,才能放置限价订单。

$phoenix-cli -umain request-seat 4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg

Requested seat, transaction signature: 3Qq7MZQ8XoLeT8fSfeFBTxRy8zFPvCFPbvwU2Zhu16gKT3o8tHo8HRxvHfyb75dvuJjDqo3sTpvfGL9v3tco8nAN

mint-tokens

将 ticker_string(例如:SOL)的代币铸造成给定的公钥。默认数量为 100_000_000_000。此命令仅适用于与省略号代币水龙头关联的代币。在主网上,这仅适用于地址为 14CAwu3LiBBk5fcHGdTsFyVxDwvpgFiSfDwgPJxECcE5 的 BASE/QUOTE 市场

$phoenix-cli -umain mint-tokens BASE aChXgDyJn7g5BCkjccisGc78LrQZKEmNgt5sz8Tdkzn -a 100000

Creating ATA
100000 Tokens minted! Mint pubkey: 7Z6Kczxo8ViRpfnsVvVaATB5fQ8bN2CQpxP8DHfd1vz5,  Recipient address: aChXgDyJn7g5BCkjccisGc78LrQZKEmNgt5sz8Tdkzn

mint-tokens-for-market

将给定市场的基准和报价令牌铸造成给定的公钥。默认数量为 100_000_000_000(基准)和 100_000_000(报价)。此命令仅适用于与省略号代币水龙头关联的代币。在主网上,这仅适用于地址为 14CAwu3LiBBk5fcHGdTsFyVxDwvpgFiSfDwgPJxECcE5 的 BASE/QUOTE 市场

$phoenix-cli -umain mint-tokens-for-market 14CAwu3LiBBk5fcHGdTsFyVxDwvpgFiSfDwgPJxECcE5 aChXgDyJn7g5BCkjccisGc78LrQZKEmNgt5sz8Tdkzn

Creating ATA for base token
Creating ATA for quote token
Tokens minted! Signature: 2mN6o7gBB41UFEboQuCMaeG1t5qQ1uRAvTDoXUhsk1yBoKXQtrXsHVtkQAT9R3oRUSPbhDkZjCQtNtjcYP4TqwVV

依赖关系

~99MB
~2M SLoC