portfolio

package
v0.0.0-...-48f5d39 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2018 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Portfolio

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

func NewPortfolio

func NewPortfolio() *Portfolio

func (*Portfolio) AddPosition

func (b *Portfolio) AddPosition(st asset.AssetType, positions *PositionType)

func (*Portfolio) Balance

func (p *Portfolio) Balance() *balance.Balance

func (*Portfolio) BetaWeightedDelta

func (p *Portfolio) BetaWeightedDelta(targetBetaStock *asset.Stock) float64

func (*Portfolio) Copy

func (p *Portfolio) Copy() *Portfolio

func (*Portfolio) Gamma

func (p *Portfolio) Gamma() float64

func (*Portfolio) Position

func (b *Portfolio) Position(st asset.AssetType) []*PositionType

func (*Portfolio) SetBalance

func (p *Portfolio) SetBalance(b *balance.Balance)

func (*Portfolio) Theta

func (p *Portfolio) Theta() float64

func (*Portfolio) Vega

func (p *Portfolio) Vega() float64

type PositionType

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

if AssetType == Option

Stock = retrievesnapshot()
Option = retrievesnapshot()

if AssetType == Stock

Stock = retrievesnapshot()
Option = nil

func NewPosition

func NewPosition() *PositionType

func (*PositionType) AccountType

func (p *PositionType) AccountType() int64

func (*PositionType) AssetType

func (p *PositionType) AssetType() asset.AssetType

func (*PositionType) AveragePrice

func (p *PositionType) AveragePrice() financial.Money

func (*PositionType) BetaWeightedDelta

func (p *PositionType) BetaWeightedDelta(targetBetaStock *asset.Stock) float64
How to calculate beta weighted delta

ewz: 20.70
spy (beta target): 202.20
ewz beta: 1.57
ewz 19 put delta: 21.90
beta w spy delta 19 pub: 3.56

21.9 = 6.15 * 3.56
(spy) 202.20 / (ewz) 20.70 = 9.8 / (ews beta) 1.57  = 6.22
spy stock price / pos stock price = notionalAdjFactor (rename)
notionalAdjFactor / pos beta = delta adjuster

21.9 / (adj) 6.15 = 3.56
pos delta / delta adjuster = spy beta weighted delta

this is for options only Assume p.UnderlyingStock != nil && p.UnderlyingStock != nil

func (*PositionType) ClosePrice

func (p *PositionType) ClosePrice() financial.Money

func (*PositionType) CurrentValue

func (p *PositionType) CurrentValue() financial.Money

func (*PositionType) Cusip

func (p *PositionType) Cusip() string

func (*PositionType) PositionType

func (p *PositionType) PositionType() string

func (*PositionType) PutCallIndicator

func (p *PositionType) PutCallIndicator() string

func (*PositionType) Quantity

func (p *PositionType) Quantity() float64

func (*PositionType) SetAccountType

func (p *PositionType) SetAccountType(newAccountType int64)

func (*PositionType) SetAssetType

func (p *PositionType) SetAssetType(newAssetType asset.AssetType)

func (*PositionType) SetAveragePrice

func (p *PositionType) SetAveragePrice(newAveragePrice financial.Money)

func (*PositionType) SetClosePrice

func (p *PositionType) SetClosePrice(newClosePrice financial.Money)

func (*PositionType) SetCurrentValue

func (p *PositionType) SetCurrentValue(newCurrentValue financial.Money)

func (*PositionType) SetCusip

func (p *PositionType) SetCusip(newCusip string)

func (*PositionType) SetPositionType

func (p *PositionType) SetPositionType(newPositionType string)

func (*PositionType) SetPutCallIndicator

func (p *PositionType) SetPutCallIndicator(newPutCallIndicator string)

func (*PositionType) SetQuantity

func (p *PositionType) SetQuantity(newQuantity float64)

func (*PositionType) SetSymbol

func (p *PositionType) SetSymbol(newSymbol string)

func (*PositionType) SetUnderlyingOption

func (p *PositionType) SetUnderlyingOption(newOption *option.Option)

func (*PositionType) SetUnderlyingStock

func (p *PositionType) SetUnderlyingStock(newStock *asset.Stock)

func (*PositionType) SetUnderlyingSymbol

func (p *PositionType) SetUnderlyingSymbol(newUnderlyingSymbol string)

func (*PositionType) Symbol

func (p *PositionType) Symbol() string

func (*PositionType) UnderlyingOption

func (p *PositionType) UnderlyingOption() *option.Option

func (*PositionType) UnderlyingStock

func (p *PositionType) UnderlyingStock() *asset.Stock

func (*PositionType) UnderlyingSymbol

func (p *PositionType) UnderlyingSymbol() string

Jump to

Keyboard shortcuts

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