在 Flash 上构建

轻松集成 Flash.trade

简介

用 TypeScript 编写的 Flash.trade SDK 为开发者、合作伙伴和其他人提供了集成 flash.trade 的最简单方式。本页面将指导您设置 Flash 客户端、创建交易并执行它们。

安装 Flash SDK

npm install flash-sdk

yarn add flash-sdk

设置 Flash SDK

import { AnchorProvider, BN } from "@coral-xyz/anchor";
import { PerpetualsClient, PoolConfig } from 'flash-sdk';

const RPC_URL = process.env.RPC_URL;

// 配置 AnchorProvider
const provider: AnchorProvider = AnchorProvider.local(RPC_URL, {
    commitment: 'processed',
    preflightCommitment: 'processed',
    skipPreflight: true,
});

// 配置您想要交互的资金池
// 对于 devnet:devnet.1,devnet.2,devnet.3,devnet.4,devnet.5
// 对于 mainnet:Crypto.1,Virtual.1,Governance.1,Community.1,Community.2
// 所有资金池详情可通过运行 `code ./node_modules/flash-sdk/dist/PoolConfig.json` 找到
const POOL_CONFIG = PoolConfig.fromIdsByName('Crypto.1', 'mainnet-beta'); 

// 您现在可以设置 Flash 客户端
const flashClient = new PerpetualsClient(
    provider,
    POOL_CONFIG.programId,
    POOL_CONFIG.perpComposibilityProgramId,
    POOL_CONFIG.fbNftRewardProgramId,
    POOL_CONFIG.rewardDistributionProgram.programId,
    {
        prioritizationFee: 0, // 这可以通过调用 flashClient.setPrioritizationFee 动态设置
    }
)

注意:如果您使用 AnchorProvider,必须将 ANCHOR_WALLET 作为环境变量传递。这个钱包/密钥对不必签署交易,但如果您将其用作视图函数的一部分,那么这个钱包公钥将用于模拟。它还需要被初始化,即必须有一些 SOL。

最后更新于

这有帮助吗?