Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
GlobalConfig はプロトコルレベルの設定アカウントです。複数存在でき、キーは (curve_type, index) で管理されます。すべてのローンチは Initialize 時に厳密に 1 つを選択します。選択された GlobalConfig の値はそのローンチのパラメータの上限となります。プラットフォーム固有のカスタマイズ(プラットフォームごとのフィーレート、許可されるカーブシェイプ、卒業時の NFT 分割)については、products/launchlab/platform-config を参照してください。概要
GlobalConfig は (curve_type, index) ごとの PDA で、すべてのローンチが従わなければならないプロトコルルールを固定します:
- 許可されるボンディングカーブの種類(
curve_type)。 - カーブが買い・売りの都度課す取引手数料率。
- 卒業時に課すマイグレーション手数料。
- 供給量、ロック率、売却率、マイグレーション率の下限。
- クォートミント(通常はラップド SOL または USDC)— ユーザーが購入する資産。
- プロトコル側の 3 つのウォレット:プロトコル手数料オーナー、マイグレーション手数料オーナー、および AMM v4 / CPMM への卒業を認可する 2 つのマイグレーション制御ウォレット。
- オプションのフラグ(
requires_platform_auth):どのプラットフォームがこの設定を使用できるかを制御します。
GlobalConfig アカウントは LaunchLab プログラムの管理者によって作成・更新されます(Anchor ベースの Raydium プログラム全体で共有されるハードコードされた管理者公開鍵 — reference/program-addresses を参照)。
レイアウト
create_config インストラクションが信頼できる情報源です)。
フィールドのセマンティクス
curve_type と index
これら 2 つが GlobalConfig を一意にキーします。(curve_type, index) の組ごとに 1 つの GlobalConfig が存在します:
curve_type = 0— 定数商品仮想準備金カーブ。デフォルトで最もよく使用されます。curve_type = 1— 固定価格カーブ。curve_type = 2— 線形価格カーブ。
index は u16 で、管理者がカーブタイプごとに複数の設定を発行できます(例:より厳しいフィーを設定したもの、より高い最小クォート調達を設定したもの)。Initialize でローンチが (curve_type, index) のペアを指定すると、プログラムが一致する GlobalConfig をロードします。
フィー
trade_fee_rate— 取引量の1/1_000_000の単位で表示。カーブのすべての買い・売りに適用されます。protocol_fee_ownerはCollectFeeを通じてそのシェアを請求します。migrate_fee— 卒業時に一度だけ課される固定手数料(ラムポートまたはクォート単位、設定による)。migrate_fee_ownerがCollectMigrateFeeを通じて請求します。max_share_fee_rate—10_000(100 bps)で初期化されます。バインドされたPlatformConfigからのプラットフォームのシェア手数料率を上限とします(platform-configを参照)。プログラムはtrade_fee_rate + max_share_fee_rate < RATE_DENOMINATOR_VALUEを強制します。
供給量とレートの下限
これらの下限は、ローンチがInitialize で選択できるカーブシェイプパラメータを制限します。クリエイターの CurveParams がいずれかを違反した場合、Initialize は InvalidInput で復帰します。
min_base_supply— カーブが宣言できる最小supply(小数点なし)。デフォルトは10_000_000。max_lock_rate—1/1_000_000単位で表示。デフォルト300_000(30%)。ベスティングをtotal_locked_amount <= supply * max_lock_rate / 1_000_000で制限します。min_base_sell_rate—1/1_000_000単位で表示。デフォルト200_000(20%)。base_supply_graduation / supplyを下から制限します。min_base_migrate_rate—1/1_000_000単位で表示。デフォルト200_000(20%)。卒業後のプールのシードとなるトークン数を制限します。min_quote_fund_raising— ローンチが宣言できる最小quote_reserve_target(小数点付き)。デフォルトはクォートミントの30_000_000_000ユニット。
クォートミントとプロトコルウォレット
quote_mint— ユーザーが購入する資産。ほとんどのローンチはラップド SOL(So111…112)または USDC(EPjF…Dt1v)を使用します。1 つのGlobalConfigは 1 つのクォートミントにバインドされます。異なるクォートが必要なローンチは異なる(curve_type, index)をターゲットにします。protocol_fee_owner—CollectFeeに署名し、この設定にバインドされたすべてのローンチで発生したプロトコル手数料を請求する公開鍵。オンチェーン保存で、管理者がUpdateConfigを通じてローテーションできます。migrate_fee_owner—CollectMigrateFeeに署名する公開鍵。
マイグレーションウォレット
2 つの卒業パスには異なる署名者が必要です:migrate_to_amm_wallet—MigrateToAmmに署名する必要があります。migrate_type = 0(AMM v4 + OpenBook に卒業)のローンチに使用されます。migrate_to_cpswap_wallet—MigrateToCpswapに署名する必要があります。migrate_type = 1(CPMM に卒業)に使用されます。Token-2022 ローンチは常にこのパスを取ります。
requires_platform_auth
u8 フラグ(0 = 誰でもこの設定を使用可能; 0 以外 = 有効な PlatformGlobalAccess PDA を持つプラットフォームのみがローンチ可能)。設定されている場合、この GlobalConfig に対するすべての Initialize は、CreatePlatformGlobalAccess(管理者のみ)を通じてプラットフォームが事前に認可されていることを証明する一致する PlatformGlobalAccess アカウントを含む必要があります。プラットフォーム側のメカニクスについては platform-config を参照してください。
初期化時のデフォルト
CreateConfig が呼び出されると、プログラムは多くのフィールドをハードコードされたデフォルトでシードします:
curve_type、index、migrate_fee、trade_fee_rate、quote_mint、および 4 つのウォレット公開鍵を作成時に明示的に設定します。以降の値は UpdateConfig を通じて調整できます。
ローンチが GlobalConfig を選択する方法
Initialize でクリエイターは以下を渡します:
(curve_type, index)— どのGlobalConfigPDA をロードするかを選択。CurveParams— カーブシェイプを説明(supply、total_base_sell、total_quote_fund_raising、migrate_type)。VestingParams— ロックされた供給を説明。MintParams— ベースミント用。
curve_typeがglobal_config.curve_typeと一致。supply >= global_config.min_base_supply。total_locked_amount <= supply * max_lock_rate / 1_000_000。total_base_sell >= supply * min_base_sell_rate / 1_000_000。(supply − total_base_sell − total_locked_amount) >= supply * min_base_migrate_rate / 1_000_000— つまり、卒業後のプールをシードするのに十分なトークンが残されている。total_quote_fund_raising >= min_quote_fund_raising。requires_platform_auth != 0の場合、有効なPlatformGlobalAccessPDA が含まれている。
Initialize 後、ローンチの PoolState は global_config 公開鍵を直接保存するため、バインディングは永続的です。
更新パス
UpdateConfig は管理者のみで、(param: u8, value: u64) のペアを取ります。各 param 値はどのフィールドを変更するかを選択します:
param | 変更されたフィールド |
|---|---|
| 0 | migrate_fee |
| 1 | trade_fee_rate |
| 2 | max_share_fee_rate |
| 3 | min_base_supply |
| 4 | max_lock_rate |
| 5 | min_base_sell_rate |
| 6 | min_base_migrate_rate |
| 7 | min_quote_fund_raising |
protocol_fee_owner、migrate_fee_owner、migrate_to_amm_wallet、migrate_to_cpswap_wallet)は別の Pubkey 引数シェイプを取ります。管理者トランザクションを構成する前に update_config ソースから厳密なディスパッチテーブルを確認してください。
requires_platform_auth は set_requires_platform_auth(bool) を通じてトグルされます。
クライアントから GlobalConfig を読む
getAllGlobalConfigs ヘルパーを歩行するか、それらをミラーする LaunchLab API エンドポイントをクエリしてください。オンチェーンアカウント数は少数(実際には 1 桁)です。
参照
products/launchlab/platform-config— プラットフォームごとのオーバーレイでカーブシェイプをさらに制約します。products/launchlab/accounts— ローンチの完全なアカウントグラフ。products/launchlab/instructions—Initializeと更新インストラクション。reference/program-addresses— 管理者公開鍵、プログラム ID、共有権限。
raydium-launch/programs/launchpad/src/states/config.rs—GlobalConfig構造体とinitialize。raydium-launch/programs/launchpad/src/lib.rs—create_config、update_config。


