trader

package
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2019 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const XLM = "XLM"

XLM is a constant for XLM

Variables

This section is empty.

Functions

This section is empty.

Types

type BotConfig

type BotConfig struct {
	SourceSecretSeed       string     `valid:"-" toml:"SOURCE_SECRET_SEED"`
	TradingSecretSeed      string     `valid:"-" toml:"TRADING_SECRET_SEED"`
	AssetCodeA             string     `valid:"-" toml:"ASSET_CODE_A"`
	IssuerA                string     `valid:"-" toml:"ISSUER_A"`
	AssetCodeB             string     `valid:"-" toml:"ASSET_CODE_B"`
	IssuerB                string     `valid:"-" toml:"ISSUER_B"`
	TickIntervalSeconds    int32      `valid:"-" toml:"TICK_INTERVAL_SECONDS"`
	MaxTickDelayMillis     int64      `valid:"-" toml:"MAX_TICK_DELAY_MILLIS"`
	DeleteCyclesThreshold  int64      `valid:"-" toml:"DELETE_CYCLES_THRESHOLD"`
	SubmitMode             string     `valid:"-" toml:"SUBMIT_MODE"`
	FillTrackerSleepMillis uint32     `valid:"-" toml:"FILL_TRACKER_SLEEP_MILLIS"`
	HorizonURL             string     `valid:"-" toml:"HORIZON_URL"`
	Fee                    *FeeConfig `valid:"-" toml:"FEE"`
	AlertType              string     `valid:"-" toml:"ALERT_TYPE"`
	AlertAPIKey            string     `valid:"-" toml:"ALERT_API_KEY"`
	MonitoringPort         uint16     `valid:"-" toml:"MONITORING_PORT"`
	MonitoringTLSCert      string     `valid:"-" toml:"MONITORING_TLS_CERT"`
	MonitoringTLSKey       string     `valid:"-" toml:"MONITORING_TLS_KEY"`
	GoogleClientID         string     `valid:"-" toml:"GOOGLE_CLIENT_ID"`
	GoogleClientSecret     string     `valid:"-" toml:"GOOGLE_CLIENT_SECRET"`
	AcceptableEmails       string     `valid:"-" toml:"ACCEPTABLE_GOOGLE_EMAILS"`
	// contains filtered or unexported fields
}

BotConfig represents the configuration params for the bot

func (*BotConfig) AssetBase

func (b *BotConfig) AssetBase() horizon.Asset

AssetBase returns the config's assetBase

func (*BotConfig) AssetQuote

func (b *BotConfig) AssetQuote() horizon.Asset

AssetQuote returns the config's assetQuote

func (*BotConfig) Init

func (b *BotConfig) Init() error

Init initializes this config

func (*BotConfig) SourceAccount

func (b *BotConfig) SourceAccount() string

SourceAccount returns the config's source account

func (BotConfig) String

func (b BotConfig) String() string

String impl.

func (*BotConfig) TradingAccount

func (b *BotConfig) TradingAccount() string

TradingAccount returns the config's trading account

type FeeConfig added in v1.5.0

type FeeConfig struct {
	CapacityTrigger float64 `valid:"-" toml:"CAPACITY_TRIGGER"`   // trigger when "ledger_capacity_usage" in /fee_stats is >= this value
	Percentile      uint8   `valid:"-" toml:"PERCENTILE"`         // percentile computation to use from /fee_stats (10, 20, ..., 90, 95, 99)
	MaxOpFeeStroops uint64  `valid:"-" toml:"MAX_OP_FEE_STROOPS"` // max fee in stroops per operation to use
}

FeeConfig represents input data for how to deal with network fees

type Trader

type Trader struct {
	// contains filtered or unexported fields
}

Trader represents a market making bot, which is composed of various parts include the strategy and various APIs.

func MakeBot

func MakeBot(
	api *horizon.Client,
	assetBase horizon.Asset,
	assetQuote horizon.Asset,
	tradingPair *model.TradingPair,
	tradingAccount string,
	sdex *plugins.SDEX,
	strat api.Strategy,
	timeController api.TimeController,
	deleteCyclesThreshold int64,
	submitMode api.SubmitMode,
	threadTracker *multithreading.ThreadTracker,
	fixedIterations *uint64,
	dataKey *model.BotKey,
	alert api.Alert,
) *Trader

MakeBot is the factory method for the Trader struct

func (*Trader) Start

func (t *Trader) Start()

Start starts the bot with the injected strategy

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL