xrpl
    Preparing search index...

    Interface AMMCreate

    Create a new Automated Market Maker (AMM) instance for trading a pair of assets (fungible tokens or XRP).

    Creates both an AMM object and a special AccountRoot object to represent the AMM. Also transfers ownership of the starting balance of both assets from the sender to the created AccountRoot and issues an initial balance of liquidity provider tokens (LP Tokens) from the AMM account to the sender.

    CAUTION: When you create the AMM, you should fund it with (approximately) equal-value amounts of each asset. Otherwise, other users can profit at your expense by trading with this AMM (performing arbitrage). The currency risk that liquidity providers take on increases with the volatility (potential for imbalance) of the asset pair. The higher the trading fee, the more it offsets this risk, so it's best to set the trading fee based on the volatility of the asset pair.

    interface AMMCreate {
        Account: string;
        AccountTxnID?: string;
        Amount: Amount;
        Amount2: Amount;
        Delegate?: string;
        Fee?: string;
        Flags?: number | GlobalFlagsInterface;
        LastLedgerSequence?: number;
        Memos?: Memo[];
        NetworkID?: number;
        Sequence?: number;
        Signers?: Signer[];
        SigningPubKey?: string;
        SourceTag?: number;
        TicketSequence?: number;
        TradingFee: number;
        TransactionType: "AMMCreate";
        TxnSignature?: string;
        [key: string]: unknown;
    }

    Hierarchy (View Summary)

    Indexable

    • [key: string]: unknown
    Index

    Properties

    Account: string

    The unique address of the transaction sender.

    AccountTxnID?: string

    Hash value identifying another transaction. If provided, this transaction is only valid if the sending account's previously-sent transaction matches the provided hash.

    Amount: Amount

    The first of the two assets to fund this AMM with. This must be a positive amount.

    Amount2: Amount

    The second of the two assets to fund this AMM with. This must be a positive amount.

    Delegate?: string

    The delegate account that is sending the transaction.

    Fee?: string

    Integer amount of XRP, in drops, to be destroyed as a cost for distributing this transaction to the network. Some transaction types have different minimum requirements.

    Flags?: number | GlobalFlagsInterface

    Set of bit-flags for this transaction.

    LastLedgerSequence?: number

    Highest ledger index this transaction can appear in. Specifying this field places a strict upper limit on how long the transaction can wait to be validated or rejected.

    Memos?: Memo[]

    Additional arbitrary information used to identify this transaction.

    NetworkID?: number

    The network id of the transaction.

    Sequence?: number

    The sequence number of the account sending the transaction. A transaction is only valid if the Sequence number is exactly 1 greater than the previous transaction from the same account. The special case 0 means the transaction is using a Ticket instead.

    Signers?: Signer[]

    Array of objects that represent a multi-signature which authorizes this transaction.

    SigningPubKey?: string

    Hex representation of the public key that corresponds to the private key used to sign this transaction. If an empty string, indicates a multi-signature is present in the Signers field instead.

    SourceTag?: number

    Arbitrary integer used to identify the reason for this payment, or a sender on whose behalf this transaction is made. Conventionally, a refund should specify the initial payment's SourceTag as the refund payment's DestinationTag.

    TicketSequence?: number

    The sequence number of the ticket to use in place of a Sequence number. If this is provided, Sequence must be 0. Cannot be used with AccountTxnID.

    TradingFee: number

    The fee to charge for trades against this AMM instance, in units of 1/100,000; a value of 1 is equivalent to 0.001%. The maximum value is 1000, indicating a 1% fee. The minimum value is 0.

    TransactionType: "AMMCreate"

    The type of transaction. Valid types include: Payment, OfferCreate, TrustSet, and many others.

    TxnSignature?: string

    The signature that verifies this transaction as originating from the account it says it is from.