Documentation
¶
Index ¶
- Variables
- func GetAMMs(keys []string) []string
- type InsufficientDataError
- type JupiterDCAFilledEvent
- type JupiterDCAFilledLayout
- type JupiterDCAParser
- type JupiterLimitOrderParser
- type JupiterLimitOrderV2CreateOrderEvent
- type JupiterLimitOrderV2CreateOrderLayout
- type JupiterLimitOrderV2Parser
- type JupiterLimitOrderV2TradeEvent
- type JupiterLimitOrderV2TradeLayout
- type JupiterParser
- type JupiterRouteData
- type JupiterShredInstruction
- type JupiterShredParser
- type JupiterSwapEvent
- type JupiterSwapInfo
- type JupiterSwapLayout
- type JupiterVAFillEvent
- type JupiterVAFillLayout
- type JupiterVAOpenEvent
- type JupiterVAOpenLayout
- type JupiterVAParser
- type JupiterVAWithdrawEvent
- type JupiterVAWithdrawLayout
Constants ¶
This section is empty.
Variables ¶
var ErrInsufficientData = &InsufficientDataError{}
Custom error
Functions ¶
Types ¶
type InsufficientDataError ¶
type InsufficientDataError struct{}
func (*InsufficientDataError) Error ¶
func (e *InsufficientDataError) Error() string
type JupiterDCAFilledEvent ¶
type JupiterDCAFilledEvent struct {
UserKey string
DCAKey string
InputMint string
OutputMint string
InAmount *big.Int
OutAmount *big.Int
FeeMint string
Fee *big.Int
}
JupiterDCAFilledEvent represents parsed DCA filled event
type JupiterDCAFilledLayout ¶
type JupiterDCAFilledLayout struct {
UserKey [32]byte
DCAKey [32]byte
InputMint [32]byte
OutputMint [32]byte
InAmount uint64
OutAmount uint64
FeeMint [32]byte
Fee uint64
}
JupiterDCAFilledLayout represents Jupiter DCA filled event data
func ParseJupiterDCAFilledLayout ¶
func ParseJupiterDCAFilledLayout(data []byte) (*JupiterDCAFilledLayout, error)
ParseJupiterDCAFilledLayout parses Jupiter DCA filled event Layout: userKey(32) + dcaKey(32) + inputMint(32) + outputMint(32) + inAmount(8) + outAmount(8) + feeMint(32) + fee(8)
func (*JupiterDCAFilledLayout) ToObject ¶
func (l *JupiterDCAFilledLayout) ToObject() *JupiterDCAFilledEvent
ToObject converts layout to object with base58 encoded keys
type JupiterDCAParser ¶
type JupiterDCAParser struct {
*parsers.BaseParser
}
JupiterDCAParser parses Jupiter DCA transactions
func NewJupiterDCAParser ¶
func NewJupiterDCAParser( adapter *adapter.TransactionAdapter, dexInfo types.DexInfo, transferActions map[string][]types.TransferData, classifiedInstructions []types.ClassifiedInstruction, ) *JupiterDCAParser
NewJupiterDCAParser creates a new Jupiter DCA parser
func (*JupiterDCAParser) ProcessTrades ¶
func (p *JupiterDCAParser) ProcessTrades() []types.TradeInfo
ProcessTrades parses Jupiter DCA trades
func (*JupiterDCAParser) ProcessTransfers ¶
func (p *JupiterDCAParser) ProcessTransfers() []types.TransferData
ProcessTransfers parses DCA transfer operations
type JupiterLimitOrderParser ¶
type JupiterLimitOrderParser struct {
*parsers.BaseParser
}
JupiterLimitOrderParser parses Jupiter Limit Order transactions (V1)
func NewJupiterLimitOrderParser ¶
func NewJupiterLimitOrderParser( adapter *adapter.TransactionAdapter, dexInfo types.DexInfo, transferActions map[string][]types.TransferData, classifiedInstructions []types.ClassifiedInstruction, ) *JupiterLimitOrderParser
NewJupiterLimitOrderParser creates a new Jupiter Limit Order parser
func (*JupiterLimitOrderParser) ProcessTrades ¶
func (p *JupiterLimitOrderParser) ProcessTrades() []types.TradeInfo
ProcessTrades returns empty trades for limit order V1 (no immediate trades)
func (*JupiterLimitOrderParser) ProcessTransfers ¶
func (p *JupiterLimitOrderParser) ProcessTransfers() []types.TransferData
ProcessTransfers parses limit order transfer operations
type JupiterLimitOrderV2CreateOrderEvent ¶
type JupiterLimitOrderV2CreateOrderEvent struct {
OrderKey string
Maker string
InputMint string
OutputMint string
InputTokenProgram string
OutputTokenProgram string
MakingAmount *big.Int
TakingAmount *big.Int
ExpiredAt *string
FeeBps uint16
FeeAccount string
}
JupiterLimitOrderV2CreateOrderEvent represents parsed create order event
type JupiterLimitOrderV2CreateOrderLayout ¶
type JupiterLimitOrderV2CreateOrderLayout struct {
OrderKey [32]byte
Maker [32]byte
InputMint [32]byte
OutputMint [32]byte
InputTokenProgram [32]byte
OutputTokenProgram [32]byte
MakingAmount uint64
TakingAmount uint64
ExpiredAt *int64
FeeBps uint16
FeeAccount [32]byte
}
JupiterLimitOrderV2CreateOrderLayout represents Jupiter Limit Order V2 create event
func ParseJupiterLimitOrderV2CreateOrderLayout ¶
func ParseJupiterLimitOrderV2CreateOrderLayout(data []byte) (*JupiterLimitOrderV2CreateOrderLayout, error)
ParseJupiterLimitOrderV2CreateOrderLayout parses Jupiter Limit Order V2 create order event
func (*JupiterLimitOrderV2CreateOrderLayout) ToObject ¶
func (l *JupiterLimitOrderV2CreateOrderLayout) ToObject() *JupiterLimitOrderV2CreateOrderEvent
ToObject converts layout to object
type JupiterLimitOrderV2Parser ¶
type JupiterLimitOrderV2Parser struct {
*parsers.BaseParser
}
JupiterLimitOrderV2Parser parses Jupiter Limit Order V2 transactions
func NewJupiterLimitOrderV2Parser ¶
func NewJupiterLimitOrderV2Parser( adapter *adapter.TransactionAdapter, dexInfo types.DexInfo, transferActions map[string][]types.TransferData, classifiedInstructions []types.ClassifiedInstruction, ) *JupiterLimitOrderV2Parser
NewJupiterLimitOrderV2Parser creates a new Jupiter Limit Order V2 parser
func (*JupiterLimitOrderV2Parser) ProcessTrades ¶
func (p *JupiterLimitOrderV2Parser) ProcessTrades() []types.TradeInfo
ProcessTrades parses Jupiter Limit Order V2 trades
func (*JupiterLimitOrderV2Parser) ProcessTransfers ¶
func (p *JupiterLimitOrderV2Parser) ProcessTransfers() []types.TransferData
ProcessTransfers parses Limit Order V2 transfer operations
type JupiterLimitOrderV2TradeEvent ¶
type JupiterLimitOrderV2TradeEvent struct {
OrderKey string
Taker string
RemainingMakingAmt *big.Int
RemainingTakingAmt *big.Int
MakingAmount *big.Int
TakingAmount *big.Int
}
JupiterLimitOrderV2TradeEvent represents parsed trade event
type JupiterLimitOrderV2TradeLayout ¶
type JupiterLimitOrderV2TradeLayout struct {
OrderKey [32]byte
Taker [32]byte
RemainingMakingAmt uint64
RemainingTakingAmt uint64
MakingAmount uint64
TakingAmount uint64
}
JupiterLimitOrderV2TradeLayout represents Jupiter Limit Order V2 trade event
func ParseJupiterLimitOrderV2TradeLayout ¶
func ParseJupiterLimitOrderV2TradeLayout(data []byte) (*JupiterLimitOrderV2TradeLayout, error)
ParseJupiterLimitOrderV2TradeLayout parses Jupiter Limit Order V2 trade event
func (*JupiterLimitOrderV2TradeLayout) ToObject ¶
func (l *JupiterLimitOrderV2TradeLayout) ToObject() *JupiterLimitOrderV2TradeEvent
ToObject converts layout to object
type JupiterParser ¶
type JupiterParser struct {
*parsers.BaseParser
}
JupiterParser parses Jupiter V6 swap transactions
func NewJupiterParser ¶
func NewJupiterParser( adapter *adapter.TransactionAdapter, dexInfo types.DexInfo, transferActions map[string][]types.TransferData, classifiedInstructions []types.ClassifiedInstruction, ) *JupiterParser
NewJupiterParser creates a new Jupiter parser
func (*JupiterParser) ProcessTrades ¶
func (p *JupiterParser) ProcessTrades() []types.TradeInfo
ProcessTrades parses Jupiter swap trades
type JupiterRouteData ¶ added in v1.2.0
type JupiterRouteData struct {
User string `json:"user"`
InputMint string `json:"inputMint"`
OutputMint string `json:"outputMint"`
InputAmount uint64 `json:"inputAmount"`
OutputAmount uint64 `json:"outputAmount"`
SlippageBps uint16 `json:"slippageBps"`
}
JupiterRouteData contains Jupiter route instruction data
type JupiterShredInstruction ¶ added in v1.2.0
type JupiterShredInstruction struct {
Type string `json:"type"`
Data interface{} `json:"data"`
Slot uint64 `json:"slot"`
Timestamp int64 `json:"timestamp"`
Signature string `json:"signature"`
Idx string `json:"idx"`
Signer []string `json:"signer"`
}
JupiterShredInstruction represents a parsed Jupiter instruction
type JupiterShredParser ¶ added in v1.2.0
type JupiterShredParser struct {
// contains filtered or unexported fields
}
JupiterShredParser parses Jupiter V6 instructions from shred-stream
func NewJupiterShredParser ¶ added in v1.2.0
func NewJupiterShredParser(adapter *adapter.TransactionAdapter, classifier *classifier.InstructionClassifier) *JupiterShredParser
NewJupiterShredParser creates a new JupiterShredParser
func (*JupiterShredParser) ProcessInstructions ¶ added in v1.2.0
func (p *JupiterShredParser) ProcessInstructions() []interface{}
ProcessInstructions processes Jupiter instructions and returns parsed results
func (*JupiterShredParser) ProcessTypedInstructions ¶ added in v1.2.0
func (p *JupiterShredParser) ProcessTypedInstructions() []types.ParsedShredInstruction
ProcessTypedInstructions returns typed ParsedShredInstruction results
type JupiterSwapEvent ¶
type JupiterSwapEvent struct {
AMM string
InputMint string
InputAmount *big.Int
OutputMint string
OutputAmount *big.Int
InputMintDecimals uint8
OutputMintDecimals uint8
Idx string
}
JupiterSwapEvent represents parsed swap event
type JupiterSwapInfo ¶
type JupiterSwapInfo struct {
AMMs []string
TokenIn map[string]*big.Int
TokenOut map[string]*big.Int
Decimals map[string]uint8
Idx string
}
JupiterSwapInfo holds intermediate swap information
type JupiterSwapLayout ¶
type JupiterSwapLayout struct {
AMM [32]byte
InputMint [32]byte
InputAmount uint64
OutputMint [32]byte
OutputAmount uint64
}
JupiterSwapLayout represents Jupiter V6 swap event data
func ParseJupiterSwapLayout ¶
func ParseJupiterSwapLayout(data []byte) (*JupiterSwapLayout, error)
ParseJupiterSwapLayout parses Jupiter V6 swap event from data Layout: amm(32) + inputMint(32) + inputAmount(8) + outputMint(32) + outputAmount(8)
func (*JupiterSwapLayout) ToSwapEvent ¶
func (l *JupiterSwapLayout) ToSwapEvent() *JupiterSwapEvent
ToSwapEvent converts layout to swap event data
type JupiterVAFillEvent ¶
type JupiterVAFillEvent struct {
ValueAverage string
User string
Keeper string
InputMint string
OutputMint string
InputAmount *big.Int
OutputAmount *big.Int
Fee *big.Int
NewActualUsdcValue uint64
SupposedUsdcValue uint64
Value uint64
InLeft uint64
InUsed uint64
OutReceived uint64
}
JupiterVAFillEvent represents parsed VA fill event
type JupiterVAFillLayout ¶
type JupiterVAFillLayout struct {
ValueAverage [32]byte
User [32]byte
Keeper [32]byte
InputMint [32]byte
OutputMint [32]byte
InputAmount uint64
OutputAmount uint64
Fee uint64
NewActualUsdcValue uint64
SupposedUsdcValue uint64
Value uint64
InLeft uint64
InUsed uint64
OutReceived uint64
}
JupiterVAFillLayout represents Jupiter VA fill event data
func ParseJupiterVAFillLayout ¶
func ParseJupiterVAFillLayout(data []byte) (*JupiterVAFillLayout, error)
ParseJupiterVAFillLayout parses Jupiter VA fill event
func (*JupiterVAFillLayout) ToObject ¶
func (l *JupiterVAFillLayout) ToObject() *JupiterVAFillEvent
ToObject converts layout to object
type JupiterVAOpenEvent ¶
type JupiterVAOpenEvent struct {
User string
ValueAverage string
Deposit uint64
InputMint string
OutputMint string
ReferralFeeAccount string
OrderInterval int64
IncrementUsdcValue uint64
CreatedAt int64
}
JupiterVAOpenEvent represents parsed VA open event
type JupiterVAOpenLayout ¶
type JupiterVAOpenLayout struct {
User [32]byte
ValueAverage [32]byte
Deposit uint64
InputMint [32]byte
OutputMint [32]byte
ReferralFeeAccount [32]byte
OrderInterval int64
IncrementUsdcValue uint64
CreatedAt int64
}
JupiterVAOpenLayout represents Jupiter VA open event data
func ParseJupiterVAOpenLayout ¶
func ParseJupiterVAOpenLayout(data []byte) (*JupiterVAOpenLayout, error)
ParseJupiterVAOpenLayout parses Jupiter VA open event
func (*JupiterVAOpenLayout) ToObject ¶
func (l *JupiterVAOpenLayout) ToObject() *JupiterVAOpenEvent
ToObject converts layout to object
type JupiterVAParser ¶
type JupiterVAParser struct {
*parsers.BaseParser
}
JupiterVAParser parses Jupiter VA (Value Average) transactions
func NewJupiterVAParser ¶
func NewJupiterVAParser( adapter *adapter.TransactionAdapter, dexInfo types.DexInfo, transferActions map[string][]types.TransferData, classifiedInstructions []types.ClassifiedInstruction, ) *JupiterVAParser
NewJupiterVAParser creates a new Jupiter VA parser
func (*JupiterVAParser) ProcessTrades ¶
func (p *JupiterVAParser) ProcessTrades() []types.TradeInfo
ProcessTrades parses Jupiter VA trades
func (*JupiterVAParser) ProcessTransfers ¶
func (p *JupiterVAParser) ProcessTransfers() []types.TransferData
ProcessTransfers parses VA transfer operations
type JupiterVAWithdrawEvent ¶
type JupiterVAWithdrawEvent struct {
ValueAverage string
Mint string
Amount uint64
InOrOut string
UserWithdraw bool
InLeft uint64
InWithdrawn uint64
OutWithdrawn uint64
}
JupiterVAWithdrawEvent represents parsed VA withdraw event
type JupiterVAWithdrawLayout ¶
type JupiterVAWithdrawLayout struct {
ValueAverage [32]byte
Mint [32]byte
Amount uint64
InOrOut uint8
UserWithdraw uint8
InLeft uint64
InWithdrawn uint64
OutWithdrawn uint64
}
JupiterVAWithdrawLayout represents Jupiter VA withdraw event data
func ParseJupiterVAWithdrawLayout ¶
func ParseJupiterVAWithdrawLayout(data []byte) (*JupiterVAWithdrawLayout, error)
ParseJupiterVAWithdrawLayout parses Jupiter VA withdraw event
func (*JupiterVAWithdrawLayout) ToObject ¶
func (l *JupiterVAWithdrawLayout) ToObject() *JupiterVAWithdrawEvent
ToObject converts layout to object