Documentation ¶
Index ¶
- func CalculateFiatPrice(ctx context.Context, repo eupholio.Repository, year int, loc *time.Location, ...) error
- func UpdateBalanceByYear(ctx context.Context, repo eupholio.Repository, year int, loc *time.Location, ...) error
- type CalculateContext
- func (c *CalculateContext) Balance(currency string) (*balance, bool)
- func (c *CalculateContext) Balances() map[string]*balance
- func (c *CalculateContext) ClosePosition(currency string, quantity *decimal.Big)
- func (c *CalculateContext) InitPosition(currency string, quantity *decimal.Big)
- func (c *CalculateContext) OpenPosition(currency string, quantity *decimal.Big)
- func (c *CalculateContext) Position(currency string) *decimal.Big
- func (c *CalculateContext) String() string
- type Calculator
- type Config
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CalculateFiatPrice ¶
func UpdateBalanceByYear ¶
func UpdateBalanceByYear(ctx context.Context, repo eupholio.Repository, year int, loc *time.Location, fiat currency.Symbol, c Calculator, options ...Option) error
UpdateBalanceByYear calcurates the profit of a year
Types ¶
type CalculateContext ¶
type CalculateContext struct {
// contains filtered or unexported fields
}
func NewCaluculateContext ¶
func NewCaluculateContext() *CalculateContext
func (*CalculateContext) Balance ¶
func (c *CalculateContext) Balance(currency string) (*balance, bool)
func (*CalculateContext) Balances ¶
func (c *CalculateContext) Balances() map[string]*balance
func (*CalculateContext) ClosePosition ¶
func (c *CalculateContext) ClosePosition(currency string, quantity *decimal.Big)
func (*CalculateContext) InitPosition ¶
func (c *CalculateContext) InitPosition(currency string, quantity *decimal.Big)
func (*CalculateContext) OpenPosition ¶
func (c *CalculateContext) OpenPosition(currency string, quantity *decimal.Big)
func (*CalculateContext) Position ¶
func (c *CalculateContext) Position(currency string) *decimal.Big
func (*CalculateContext) String ¶
func (c *CalculateContext) String() string
type Calculator ¶
type Calculator interface {
CalculateBalance(beginingBalances models.BalanceSlice, entries models.EntrySlice, year int, options ...Option) (models.BalanceSlice, error)
}
Click to show internal directories.
Click to hide internal directories.