Documentation
¶
Overview ¶
Package protocol provides implementations for different DeFi protocols
Index ¶
- type AmmConfig
- type MeteoraDlmmProtocol
- func (protocol *MeteoraDlmmProtocol) FetchPoolByID(ctx context.Context, poolID string) (pkg.Pool, error)
- func (protocol *MeteoraDlmmProtocol) FetchPoolsByPair(ctx context.Context, baseMint string, quoteMint string) ([]pkg.Pool, error)
- func (protocol *MeteoraDlmmProtocol) ProtocolName() pkg.ProtocolName
- type PumpAmmProtocol
- type RaydiumAMMProtocol
- type RaydiumClmmProtocol
- type RaydiumCpmmProtocol
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AmmConfig ¶
type MeteoraDlmmProtocol ¶
MeteoraDlmmProtocol handles interactions with Meteora DLMM (Dynamic Liquidity Market Maker) pools
func NewMeteoraDlmm ¶
func NewMeteoraDlmm(solClient *sol.Client) *MeteoraDlmmProtocol
NewMeteoraDlmm creates a new MeteoraDlmmProtocol instance
func (*MeteoraDlmmProtocol) FetchPoolByID ¶
func (protocol *MeteoraDlmmProtocol) FetchPoolByID(ctx context.Context, poolID string) (pkg.Pool, error)
FetchPoolByID retrieves a specific Meteora DLMM pool by its ID
func (*MeteoraDlmmProtocol) FetchPoolsByPair ¶
func (protocol *MeteoraDlmmProtocol) FetchPoolsByPair(ctx context.Context, baseMint string, quoteMint string) ([]pkg.Pool, error)
FetchPoolsByPair retrieves all Meteora DLMM pools for a given token pair
func (*MeteoraDlmmProtocol) ProtocolName ¶
func (protocol *MeteoraDlmmProtocol) ProtocolName() pkg.ProtocolName
type PumpAmmProtocol ¶
func NewPumpAmm ¶
func NewPumpAmm(solClient *sol.Client) *PumpAmmProtocol
func (*PumpAmmProtocol) FetchPoolByID ¶
func (*PumpAmmProtocol) FetchPoolsByPair ¶
func (*PumpAmmProtocol) ProtocolName ¶
func (p *PumpAmmProtocol) ProtocolName() pkg.ProtocolName
type RaydiumAMMProtocol ¶
func NewRaydiumAmm ¶
func NewRaydiumAmm(solClient *sol.Client) *RaydiumAMMProtocol
func (*RaydiumAMMProtocol) FetchPoolByID ¶
FetchPoolByID fetches a specific pool by its ID
func (*RaydiumAMMProtocol) FetchPoolsByPair ¶
func (*RaydiumAMMProtocol) ProtocolName ¶
func (p *RaydiumAMMProtocol) ProtocolName() pkg.ProtocolName
type RaydiumClmmProtocol ¶
func NewRaydiumClmm ¶
func NewRaydiumClmm(solClient *sol.Client) *RaydiumClmmProtocol
func (*RaydiumClmmProtocol) FetchPoolByID ¶
func (*RaydiumClmmProtocol) FetchPoolsByPair ¶
func (*RaydiumClmmProtocol) ProtocolName ¶
func (p *RaydiumClmmProtocol) ProtocolName() pkg.ProtocolName
type RaydiumCpmmProtocol ¶
RaydiumCpmmProtocol represents the Raydium CPMM protocol implementation
func NewRaydiumCpmm ¶
func NewRaydiumCpmm(solClient *sol.Client) *RaydiumCpmmProtocol
NewRaydiumCpmm creates a new instance of RaydiumCpmmProtocol
func (*RaydiumCpmmProtocol) FetchPoolByID ¶
FetchPoolByID retrieves a CPMM pool by its ID
func (*RaydiumCpmmProtocol) FetchPoolsByPair ¶
func (p *RaydiumCpmmProtocol) FetchPoolsByPair(ctx context.Context, baseMint string, quoteMint string) ([]pkg.Pool, error)
FetchPoolsByPair retrieves all pools for a given token pair
func (*RaydiumCpmmProtocol) ProtocolName ¶
func (p *RaydiumCpmmProtocol) ProtocolName() pkg.ProtocolName