stochos

package module
v0.0.0-...-cfbacb0 Latest Latest
Warning

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

Go to latest
Published: May 16, 2023 License: MIT Imports: 3 Imported by: 0

README

stochos

Stochastic processes for Monte Carlo simulations

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Distribution

type Distribution interface {
	Sample() float64
}

type DistributionFunc

type DistributionFunc func() float64

func NewStandardNormal

func NewStandardNormal(seed int64) DistributionFunc

func (DistributionFunc) Sample

func (f DistributionFunc) Sample() float64

type Drift

type Drift interface {
	Value(s, t float64) float64
}

type DriftFunc

type DriftFunc func(s, t float64) float64

func NewConstantDrift

func NewConstantDrift(c float64) DriftFunc

func NewZeroDrift

func NewZeroDrift() DriftFunc

func (DriftFunc) Value

func (f DriftFunc) Value(s, t float64) float64

type Geometric

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

func NewGeometric

func NewGeometric(value State, drift Drift, volatility float64, distribution Distribution) *Geometric

func NewGeometricBrownian

func NewGeometricBrownian(value State, drift Drift, volatility float64, seed int64) *Geometric

func (Geometric) Current

func (bs Geometric) Current() State

func (*Geometric) Next

func (bs *Geometric) Next(s, t float64) State

type LocalVolatility

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

func NewLocalVolatility

func NewLocalVolatility(value State, drift Drift, surface VolatilitySurface, seed int64) *LocalVolatility

func (LocalVolatility) Current

func (lv LocalVolatility) Current() State

func (*LocalVolatility) Next

func (lv *LocalVolatility) Next(s, t float64) State

type Numéraire

type Numéraire struct {
	// contains filtered or unexported fields
}

func NewNuméraire

func NewNuméraire(value State, drift Drift) *Numéraire

func (Numéraire) Current

func (n Numéraire) Current() State

func (*Numéraire) Next

func (n *Numéraire) Next(s, t float64) State

type Path

type Path []State

func Simulate

func Simulate(process Process, grid TimeGrid) Path

type Process

type Process interface {
	Current() State
	Next(s, t float64) State
}

type State

type State = float64

type TimeGrid

type TimeGrid []float64

func NewTimeGrid

func NewTimeGrid(ts ...float64) TimeGrid

func NewUniformTimeGrid

func NewUniformTimeGrid(start, end float64, m int) TimeGrid

type VolatilitySurface

type VolatilitySurface interface {
	Value(t, m float64) float64
}

type VolatilitySurfaceFunc

type VolatilitySurfaceFunc func(t, m float64) float64

func NewFlatSurface

func NewFlatSurface(value float64) VolatilitySurfaceFunc

func (VolatilitySurfaceFunc) Value

func (f VolatilitySurfaceFunc) Value(t, m float64) float64

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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