このページは、最新の英語版のコンテンツと一致していない場合があります。

XRP Ledger Dev Portalをさまざまな言語で提供するよう取り組んでいますが、すべての翻訳ページが最新版として提供されているわけではありません。コンテンツの更新にご協力いただける場合は、ぜひ貢献をお願いいたします

AMMCreate

[ソース]

(AMM amendment が必要です。)

資産(代替可能トークンまたはXRP)のペアを取引するための新しい自動マーケットメーカー(AMM)インスタンスを作成します。

AMMを表すAMMエントリ特殊なAccountRootエントリを作成します。また、両資産の開始残高の所有権を送信者から、作成されたAccountRootに移し、初期残高の流動性プロバイダトークン(LPトークン)をAMMアカウントから送信者に発行します。

注意: AMMを作成する際には、各資産を(ほぼ)同額ずつ投入する必要があります。そうしないと、他のユーザがこのAMMを使った取引で利益を得ることができ、あなたがその損失を被ることとなります(アービトラージの実行 。流動性プロバイダが負う通貨リスクは、資産ペアのボラティリティ(不均衡の可能性)が高ければ高いほど、大きくなります。取引手数料が高いほど、このリスクを相殺することになりますので、資産ペアのボラティリティに応じて取引手数料を設定するとよいでしょう。

AMMCreate JSONの例

{
    "Account" : "rJVUeRqDFNs2xqA7ncVE6ZoAhPUoaJJSQm",
    "Amount" : {
        "currency" : "TST",
        "issuer" : "rP9jPyP5kyvFRb6ZiRghAGw5u8SGAmU4bd",
        "value" : "25"
    },
    "Amount2" : "250000000",
    "Fee" : "10",
    "Flags" : 2147483648,
    "Sequence" : 6,
    "TradingFee" : 500,
    "TransactionType" : "AMMCreate"
}

AMMCreate フィールド

共通フィールドに加えて、AMMCreateトランザクションは以下のフィールドを使用します。

フィールド JSONの型 内部の型 必須? 説明
Amount 通貨額 Amount はい このAMMの最初の資金となる2つの資産のうち、1つ目の資産です。これは正数である必要があります。
Amount2 通貨額 Amount はい このAMMの最初の資金となる2つの資産のうち、2つ目の資産です。これは正数である必要があります。
TradingFee 数値 UInt16 はい このAMMインスタンスに対する取引に課される手数料を1/100,000単位で指定します(値1は0.001%に相当)。最大値は1000で、1%の手数料を意味します。最小値は 0です。

AmountAmount2の一方または両方はトークンであり、最大でどちらか一方をXRPにすることが可能です。通貨コードと発行者が同じものは使用できません。AMMのLPトークンは、別のAMMの資産の1つとして使用することができます。トークンの発行者はDefault Rippleを有効にしていなければなりません。Clawback Amendment が有効になっている場合、それらの発行者はAllow Clawbackフラグを有効にしていてはいけません。AMMのLPトークンは、別のAMMの資産の一つとして使用することができます。

特殊なトランザクションコスト

各AMMインスタンスはAccountRootレジャーエントリ、AMMレジャーエントリ、プール内の各トークンのトラストラインを含むため、AMMCreateトランザクションは台帳スパムを抑止するために通常よりもはるかに高いトランザクションコストを必要とします。標準的な最低0.00001XRPの代わりに、AMMCreateは少なくとも所有者準備金の増分(現在は2XRP)を破棄しなければなりません。これはAccountDeleteトランザクションと同じ特別なトランザクションコストです。

エラーケース

すべてのトランザクションで発生する可能性のあるエラーに加えて、AMMCreateトランザクションでは、次のトランザクション結果コードが発生する可能性があります。

エラーコード 説明
temDISABLED このネットワークでは、AMM機能 は有効ではありません。
temINVALID_FLAG トランザクションに無効なFlags値が指定されています。現在、このトランザクションタイプに定義されたフラグはないので、グローバルフラグのみが許可されます。
temBAD_AMM_TOKENS AmountAmount2値が正しくありません。例えば、両方とも同じトークンを参照している場合です。
temBAD_FEE TradingFeeの値が不正です。ゼロまたは正の整数でなければならず、1000を超えることはできません。
terNO_ACCOUNT リクエストで参照されたいずれかのアカウントが存在しません。
tecNO_AUTH 送信者は資産(AmountまたはAmount2)のいずれかを保有する権限がありません。
tecNO_LINE 送信者は資産(AmountまたはAmount2)のうちいずれか1つに対するトラストラインを保有していません。
tecFROZEN 資産(AmountまたはAmount2)の少なくとも1つが現在凍結されています。
tecUNFUNDED_AMM 送信者はAmountAmount2で指定された金額をAMMに入金するための十分な資金を保有していません。
tecAMM_EXISTS この通貨ペアを扱っているAMMが既に存在しています。