mirror of
https://github.com/0xfnzero/solana-streamer.git
synced 2026-07-27 17:37:45 +00:00
da550e0c3a
This commit addresses two critical issues: 1. PumpFun buy_exact_sol_in Parameter Order Fix - Fixed incorrect parameter parsing in buy_exact_sol_in instruction - Created dedicated parse_buy_exact_sol_in_instruction function - Correct order: spendable_sol_in (SOL) first, min_tokens_out (token) second - Previous bug: reused parse_buy_instruction which has reversed order - Impact: Fixes ~4-5% of PumpFun trades that were being parsed incorrectly - Issue reported by community: SOL and token amounts were swapped 2. Raydium CPMM Field Naming Alignment - Updated PoolState struct field names to match IDL specification exactly - Changed token0_vault -> token_0_vault (and similar for all token fields) - Changed mint0_decimals -> mint_0_decimals - Changed protocol_fees_token0 -> protocol_fees_token_0 - Ensures consistency with official IDL from solana-program-idls repo - Improves code maintainability and readability 3. IDL Files Sync - Added latest IDL files from https://github.com/0xfnzero/solana-program-idls - Includes: pumpfun, pump_amm, raydium_cpmm, raydium_clmm, raydium_pool_v4 - Also added: meteora_amm, meteora_damm_v2, meteora_dlmm, orca_whirlpool, raydium_launchpad - All IDL files stored in idl/ directory for reference Files Modified: - src/streaming/event_parser/protocols/pumpfun/parser.rs - src/streaming/event_parser/protocols/raydium_cpmm/types.rs - src/streaming/event_parser/protocols/raydium_cpmm/events.rs - src/streaming/event_parser/protocols/raydium_cpmm/parser.rs Testing: - ✅ Compiles successfully (cargo build --release) - ✅ All field name updates verified - ✅ Parameter order matches IDL specification Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2292 lines
47 KiB
JSON
2292 lines
47 KiB
JSON
{
|
|
"version": "0.3.0",
|
|
"name": "raydium_amm",
|
|
"instructions": [
|
|
{
|
|
"name": "initialize",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "systemProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMintAddress",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "coinMintAddress",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "pcMintAddress",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolWithdrawQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolTargetOrdersAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolTempLpTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userWallet",
|
|
"isMut": true,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "nonce",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "openTime",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "initialize2",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "splAssociatedTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "systemProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMint",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "coinMint",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "pcMint",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolWithdrawQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolTempLp",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userWallet",
|
|
"isMut": true,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "userTokenCoin",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userTokenPc",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "nonce",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "openTime",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "initPcAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "initCoinAmount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "monitorStep",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "clock",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolWithdrawQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumReqQ",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQ",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "planOrderLimit",
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "placeOrderLimit",
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "cancelOrderLimit",
|
|
"type": "u16"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "deposit",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMintAddress",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userOwner",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "maxCoinAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "maxPcAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "baseSide",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "withdraw",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMintAddress",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolWithdrawQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolTempLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userOwner",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "serumEventQ",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "migrateToOpenBook",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "systemProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTokenCoin",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTokenPc",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "newAmmOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "newSerumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "newSerumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "admin",
|
|
"isMut": true,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "setParams",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammCoinVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammPcVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVault",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAdminAccount",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "param",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "value",
|
|
"type": {
|
|
"option": "u64"
|
|
}
|
|
},
|
|
{
|
|
"name": "newPubkey",
|
|
"type": {
|
|
"option": "publicKey"
|
|
}
|
|
},
|
|
{
|
|
"name": "fees",
|
|
"type": {
|
|
"option": {
|
|
"defined": "Fees"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "lastOrderDistance",
|
|
"type": {
|
|
"option": {
|
|
"defined": "LastOrderDistance"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "needTakeAmounts",
|
|
"type": {
|
|
"option": {
|
|
"defined": "NeedTake"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "withdrawPnl",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammConfig",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "coinPnlTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "pcPnlTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "pnlOwnerAccount",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "withdrawSrm",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOwnerAccount",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "srmToken",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "destSrmToken",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "swapBaseIn",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userSourceTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userDestinationTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userSourceOwner",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amountIn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimumAmountOut",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "preInitialize",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "systemProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolWithdrawQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMintAddress",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "coinMintAddress",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "pcMintAddress",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolTempLpTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userWallet",
|
|
"isMut": true,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "nonce",
|
|
"type": "u8"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "swapBaseOut",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userSourceTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userDestinationTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "userSourceOwner",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "maxAmountIn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "amountOut",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "simulateInfo",
|
|
"accounts": [
|
|
{
|
|
"name": "amm",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "lpMintAddress",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQueue",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "param",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "swapBaseInValue",
|
|
"type": {
|
|
"option": {
|
|
"defined": "SwapInstructionBaseIn"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "swapBaseOutValue",
|
|
"type": {
|
|
"option": {
|
|
"defined": "SwapInstructionBaseOut"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "adminCancelOrders",
|
|
"accounts": [
|
|
{
|
|
"name": "tokenProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "amm",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammAuthority",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOpenOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammTargetOrders",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolCoinTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "poolPcTokenAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "ammOwnerAccount",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "ammConfig",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumMarket",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumCoinVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumPcVaultAccount",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumVaultSigner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumEventQ",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumBids",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "serumAsks",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "limit",
|
|
"type": "u16"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "createConfigAccount",
|
|
"accounts": [
|
|
{
|
|
"name": "admin",
|
|
"isMut": true,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "ammConfig",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "owner",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "systemProgram",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"isMut": false,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "updateConfigAccount",
|
|
"accounts": [
|
|
{
|
|
"name": "admin",
|
|
"isMut": false,
|
|
"isSigner": true
|
|
},
|
|
{
|
|
"name": "ammConfig",
|
|
"isMut": true,
|
|
"isSigner": false
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "param",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "owner",
|
|
"type": "publicKey"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "TargetOrders",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "owner",
|
|
"type": {
|
|
"array": ["u64", 4]
|
|
}
|
|
},
|
|
{
|
|
"name": "buyOrders",
|
|
"type": {
|
|
"array": [
|
|
{
|
|
"defined": "TargetOrder"
|
|
},
|
|
50
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "padding1",
|
|
"type": {
|
|
"array": ["u64", 8]
|
|
}
|
|
},
|
|
{
|
|
"name": "targetX",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "targetY",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "planXBuy",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "planYBuy",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "planXSell",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "planYSell",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "placedX",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "placedY",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "calcPnlX",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "calcPnlY",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "sellOrders",
|
|
"type": {
|
|
"array": [
|
|
{
|
|
"defined": "TargetOrder"
|
|
},
|
|
50
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "padding2",
|
|
"type": {
|
|
"array": ["u64", 6]
|
|
}
|
|
},
|
|
{
|
|
"name": "replaceBuyClientId",
|
|
"type": {
|
|
"array": ["u64", 10]
|
|
}
|
|
},
|
|
{
|
|
"name": "replaceSellClientId",
|
|
"type": {
|
|
"array": ["u64", 10]
|
|
}
|
|
},
|
|
{
|
|
"name": "lastOrderNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "lastOrderDenominator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "planOrdersCur",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "placeOrdersCur",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "validBuyOrderNum",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "validSellOrderNum",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "padding3",
|
|
"type": {
|
|
"array": ["u64", 10]
|
|
}
|
|
},
|
|
{
|
|
"name": "freeSlotBits",
|
|
"type": "u128"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "Fees",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "minSeparateNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minSeparateDenominator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "tradeFeeNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "tradeFeeDenominator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "pnlNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "pnlDenominator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "swapFeeNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "swapFeeDenominator",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "AmmInfo",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "status",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "nonce",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "orderNum",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "depth",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "coinDecimals",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "pcDecimals",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "state",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "resetFlag",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minSize",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "volMaxCutRatio",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "amountWave",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "coinLotSize",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "pcLotSize",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minPriceMultiplier",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "maxPriceMultiplier",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "sysDecimalValue",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "fees",
|
|
"type": {
|
|
"defined": "Fees"
|
|
}
|
|
},
|
|
{
|
|
"name": "outPut",
|
|
"type": {
|
|
"defined": "OutPutData"
|
|
}
|
|
},
|
|
{
|
|
"name": "tokenCoin",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "tokenPc",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "coinMint",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "pcMint",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "lpMint",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "openOrders",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "market",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "serumDex",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "targetOrders",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "withdrawQueue",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "tokenTempLp",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "ammOwner",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "lpAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "clientOrderId",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "padding",
|
|
"type": {
|
|
"array": ["u64", 2]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"types": [
|
|
{
|
|
"name": "WithdrawDestToken",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "withdrawAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "coinAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "pcAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "destTokenCoin",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "destTokenPc",
|
|
"type": "publicKey"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "WithdrawQueue",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "owner",
|
|
"type": {
|
|
"array": ["u64", 4]
|
|
}
|
|
},
|
|
{
|
|
"name": "head",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "count",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "buf",
|
|
"type": {
|
|
"array": [
|
|
{
|
|
"defined": "WithdrawDestToken"
|
|
},
|
|
64
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "TargetOrder",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "price",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "vol",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "OutPutData",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "needTakePnlCoin",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "needTakePnlPc",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "totalPnlPc",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "totalPnlCoin",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "poolOpenTime",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "punishPcAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "punishCoinAmount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "orderbookToInitTime",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "swapCoinInAmount",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "swapPcOutAmount",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "swapTakePcFee",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "swapPcInAmount",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "swapCoinOutAmount",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "swapTakeCoinFee",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "AmmConfig",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "pnlOwner",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "cancelOwner",
|
|
"type": "publicKey"
|
|
},
|
|
{
|
|
"name": "pending1",
|
|
"type": {
|
|
"array": ["u64", 28]
|
|
}
|
|
},
|
|
{
|
|
"name": "pending2",
|
|
"type": {
|
|
"array": ["u64", 32]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "LastOrderDistance",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "lastOrderNumerator",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "lastOrderDenominator",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "NeedTake",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "needTakePc",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "needTakeCoin",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "SwapInstructionBaseIn",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "amountIn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimumAmountOut",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "SwapInstructionBaseOut",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "maxAmountIn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "amountOut",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"errors": [
|
|
{
|
|
"code": 0,
|
|
"name": "AlreadyInUse",
|
|
"msg": "AlreadyInUse"
|
|
},
|
|
{
|
|
"code": 1,
|
|
"name": "InvalidProgramAddress",
|
|
"msg": "InvalidProgramAddress"
|
|
},
|
|
{
|
|
"code": 2,
|
|
"name": "ExpectedMint",
|
|
"msg": "ExpectedMint"
|
|
},
|
|
{
|
|
"code": 3,
|
|
"name": "ExpectedAccount",
|
|
"msg": "ExpectedAccount"
|
|
},
|
|
{
|
|
"code": 4,
|
|
"name": "InvalidCoinVault",
|
|
"msg": "InvalidCoinVault"
|
|
},
|
|
{
|
|
"code": 5,
|
|
"name": "InvalidPCVault",
|
|
"msg": "InvalidPCVault"
|
|
},
|
|
{
|
|
"code": 6,
|
|
"name": "InvalidTokenLP",
|
|
"msg": "InvalidTokenLP"
|
|
},
|
|
{
|
|
"code": 7,
|
|
"name": "InvalidDestTokenCoin",
|
|
"msg": "InvalidDestTokenCoin"
|
|
},
|
|
{
|
|
"code": 8,
|
|
"name": "InvalidDestTokenPC",
|
|
"msg": "InvalidDestTokenPC"
|
|
},
|
|
{
|
|
"code": 9,
|
|
"name": "InvalidPoolMint",
|
|
"msg": "InvalidPoolMint"
|
|
},
|
|
{
|
|
"code": 10,
|
|
"name": "InvalidOpenOrders",
|
|
"msg": "InvalidOpenOrders"
|
|
},
|
|
{
|
|
"code": 11,
|
|
"name": "InvalidSerumMarket",
|
|
"msg": "InvalidSerumMarket"
|
|
},
|
|
{
|
|
"code": 12,
|
|
"name": "InvalidSerumProgram",
|
|
"msg": "InvalidSerumProgram"
|
|
},
|
|
{
|
|
"code": 13,
|
|
"name": "InvalidTargetOrders",
|
|
"msg": "InvalidTargetOrders"
|
|
},
|
|
{
|
|
"code": 14,
|
|
"name": "InvalidWithdrawQueue",
|
|
"msg": "InvalidWithdrawQueue"
|
|
},
|
|
{
|
|
"code": 15,
|
|
"name": "InvalidTempLp",
|
|
"msg": "InvalidTempLp"
|
|
},
|
|
{
|
|
"code": 16,
|
|
"name": "InvalidCoinMint",
|
|
"msg": "InvalidCoinMint"
|
|
},
|
|
{
|
|
"code": 17,
|
|
"name": "InvalidPCMint",
|
|
"msg": "InvalidPCMint"
|
|
},
|
|
{
|
|
"code": 18,
|
|
"name": "InvalidOwner",
|
|
"msg": "InvalidOwner"
|
|
},
|
|
{
|
|
"code": 19,
|
|
"name": "InvalidSupply",
|
|
"msg": "InvalidSupply"
|
|
},
|
|
{
|
|
"code": 20,
|
|
"name": "InvalidDelegate",
|
|
"msg": "InvalidDelegate"
|
|
},
|
|
{
|
|
"code": 21,
|
|
"name": "InvalidSignAccount",
|
|
"msg": "Invalid Sign Account"
|
|
},
|
|
{
|
|
"code": 22,
|
|
"name": "InvalidStatus",
|
|
"msg": "InvalidStatus"
|
|
},
|
|
{
|
|
"code": 23,
|
|
"name": "InvalidInstruction",
|
|
"msg": "Invalid instruction"
|
|
},
|
|
{
|
|
"code": 24,
|
|
"name": "WrongAccountsNumber",
|
|
"msg": "Wrong accounts number"
|
|
},
|
|
{
|
|
"code": 25,
|
|
"name": "WithdrawTransferBusy",
|
|
"msg": "Withdraw_transfer is busy"
|
|
},
|
|
{
|
|
"code": 26,
|
|
"name": "WithdrawQueueFull",
|
|
"msg": "WithdrawQueue is full"
|
|
},
|
|
{
|
|
"code": 27,
|
|
"name": "WithdrawQueueEmpty",
|
|
"msg": "WithdrawQueue is empty"
|
|
},
|
|
{
|
|
"code": 28,
|
|
"name": "InvalidParamsSet",
|
|
"msg": "Params Set is invalid"
|
|
},
|
|
{
|
|
"code": 29,
|
|
"name": "InvalidInput",
|
|
"msg": "InvalidInput"
|
|
},
|
|
{
|
|
"code": 30,
|
|
"name": "ExceededSlippage",
|
|
"msg": "instruction exceeds desired slippage limit"
|
|
},
|
|
{
|
|
"code": 31,
|
|
"name": "CalculationExRateFailure",
|
|
"msg": "CalculationExRateFailure"
|
|
},
|
|
{
|
|
"code": 32,
|
|
"name": "CheckedSubOverflow",
|
|
"msg": "Checked_Sub Overflow"
|
|
},
|
|
{
|
|
"code": 33,
|
|
"name": "CheckedAddOverflow",
|
|
"msg": "Checked_Add Overflow"
|
|
},
|
|
{
|
|
"code": 34,
|
|
"name": "CheckedMulOverflow",
|
|
"msg": "Checked_Mul Overflow"
|
|
},
|
|
{
|
|
"code": 35,
|
|
"name": "CheckedDivOverflow",
|
|
"msg": "Checked_Div Overflow"
|
|
},
|
|
{
|
|
"code": 36,
|
|
"name": "CheckedEmptyFunds",
|
|
"msg": "Empty Funds"
|
|
},
|
|
{
|
|
"code": 37,
|
|
"name": "CalcPnlError",
|
|
"msg": "Calc pnl error"
|
|
},
|
|
{
|
|
"code": 38,
|
|
"name": "InvalidSplTokenProgram",
|
|
"msg": "InvalidSplTokenProgram"
|
|
},
|
|
{
|
|
"code": 39,
|
|
"name": "TakePnlError",
|
|
"msg": "Take Pnl error"
|
|
},
|
|
{
|
|
"code": 40,
|
|
"name": "InsufficientFunds",
|
|
"msg": "Insufficient funds"
|
|
},
|
|
{
|
|
"code": 41,
|
|
"name": "ConversionFailure",
|
|
"msg": "Conversion to u64 failed with an overflow or underflow"
|
|
},
|
|
{
|
|
"code": 42,
|
|
"name": "InvalidUserToken",
|
|
"msg": "user token input does not match amm"
|
|
},
|
|
{
|
|
"code": 43,
|
|
"name": "InvalidSrmMint",
|
|
"msg": "InvalidSrmMint"
|
|
},
|
|
{
|
|
"code": 44,
|
|
"name": "InvalidSrmToken",
|
|
"msg": "InvalidSrmToken"
|
|
},
|
|
{
|
|
"code": 45,
|
|
"name": "TooManyOpenOrders",
|
|
"msg": "TooManyOpenOrders"
|
|
},
|
|
{
|
|
"code": 46,
|
|
"name": "OrderAtSlotIsPlaced",
|
|
"msg": "OrderAtSlotIsPlaced"
|
|
},
|
|
{
|
|
"code": 47,
|
|
"name": "InvalidSysProgramAddress",
|
|
"msg": "InvalidSysProgramAddress"
|
|
},
|
|
{
|
|
"code": 48,
|
|
"name": "InvalidFee",
|
|
"msg": "The provided fee does not match the program owner's constraints"
|
|
},
|
|
{
|
|
"code": 49,
|
|
"name": "RepeatCreateAmm",
|
|
"msg": "Repeat create amm about market"
|
|
},
|
|
{
|
|
"code": 50,
|
|
"name": "NotAllowZeroLP",
|
|
"msg": "Not allow Zero LP"
|
|
},
|
|
{
|
|
"code": 51,
|
|
"name": "InvalidCloseAuthority",
|
|
"msg": "Token account has a close authority"
|
|
},
|
|
{
|
|
"code": 52,
|
|
"name": "InvalidFreezeAuthority",
|
|
"msg": "Pool token mint has a freeze authority"
|
|
},
|
|
{
|
|
"code": 53,
|
|
"name": "InvalidReferPCMint",
|
|
"msg": "InvalidReferPCMint"
|
|
},
|
|
{
|
|
"code": 54,
|
|
"name": "InvalidConfigAccount",
|
|
"msg": "InvalidConfigAccount"
|
|
},
|
|
{
|
|
"code": 55,
|
|
"name": "RepeatCreateConfigAccount",
|
|
"msg": "Repeat create staking config account"
|
|
},
|
|
{
|
|
"code": 56,
|
|
"name": "UnknownAmmError",
|
|
"msg": "Unknown Amm Error"
|
|
}
|
|
],
|
|
"metadata": {
|
|
"instruction_selector_type": "index",
|
|
"address": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8"
|
|
}
|
|
}
|