# SuanShu, a Java numerical and statistical library

## Class KnightSatchellTran1995

• All Implemented Interfaces:
RandomNumberGenerator, Seedable

public class KnightSatchellTran1995
extends HMMRNG
Implements the Knight-Satchell-Tran model of financial asset returns.
• Emmanual Acar, Stephen Satchell. "Section 5.3," Advanced Trading Rules, Second Edition (Quantitative Finance) Butterworth-Heinemann; 2nd edition. June 19, 2002
• Knight J. L., Satchell S. E. & Tran K. C. "Statistical modelling of asymmetric risk in asset returns," Applied Mathematical Finance, Volume 2, Issue 3, 1995.
• ### Field Summary

Fields
Modifier and Type Field and Description
double alpha0
double alpha1
double mu
double p
double q
double rate0
double rate1
• ### Constructor Summary

Constructors
Constructor and Description
KnightSatchellTran1995(double mu, double q, double alpha0, double rate0, double p, double alpha1, double rate1)
Constructs an instance of the Knight-Satchell-Tran model of returns.
KnightSatchellTran1995(double mu, double q, double alpha0, double rate0, double p, double alpha1, double rate1, RandomStandardNormalGenerator rnorm, RandomLongGenerator rlg)
Constructs an instance of the Knight-Satchell-Tran model of returns.
KnightSatchellTran1995(KnightSatchellTran1995 that)
Copy constructor.
• ### Method Summary

All Methods
Modifier and Type Method and Description
double nextDouble()
Gets the next simulated observation.
double PrZt0()
Computes the stationary probability of in state Z_t = 0.
double PrZt1()
Computes the stationary probability of in state Z_t = 1.
String toString()
• ### Methods inherited from class com.numericalmethod.suanshu.stats.hmm.HMMRNG

next, seed
• ### Methods inherited from class com.numericalmethod.suanshu.stats.markovchain.SimpleMC

A, bin, getStationaryProbabilities, nextState, nStates, PI
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
• ### Field Detail

• #### p

public final double p
• #### q

public final double q
• #### mu

public final double mu
• #### alpha0

public final double alpha0
• #### rate0

public final double rate0
• #### alpha1

public final double alpha1
• #### rate1

public final double rate1
• ### Constructor Detail

• #### KnightSatchellTran1995

public KnightSatchellTran1995(double mu,
double q,
double alpha0,
double rate0,
double p,
double alpha1,
double rate1,
RandomStandardNormalGenerator rnorm,
RandomLongGenerator rlg)
Constructs an instance of the Knight-Satchell-Tran model of returns.
Parameters:
mu - long term mean of returns
q - Pr(Z_t = 0 | Z_{t-0} = 0)
alpha0 - shape parameter of negative shocks in Z_t = 0
rate0 - rate parameter; 1/scale parameter of negative shocks
p - Pr(Z_t = 1 | Z_{t-1} = 1)
alpha1 - shape parameter of positive shocks in Z_t = 1
rate1 - rate parameter; 1/scale parameter of positive shocks
rnorm - a standard normal rng
rlg - a uniform rlg
• #### KnightSatchellTran1995

public KnightSatchellTran1995(double mu,
double q,
double alpha0,
double rate0,
double p,
double alpha1,
double rate1)
Constructs an instance of the Knight-Satchell-Tran model of returns.
Parameters:
mu - long term mean of returns
q - Pr(Z_t = 0 | Z_{t-0} = 0)
alpha0 - shape parameter of negative shocks in Z_t = 0
rate0 - rate parameter; 1/scale parameter of negative shocks
p - Pr(Z_t = 1 | Z_{t-1} = 1)
alpha1 - shape parameter of positive shocks in Z_t = 1
rate1 - rate parameter; 1/scale parameter of positive shocks
• #### KnightSatchellTran1995

public KnightSatchellTran1995(KnightSatchellTran1995 that)
Copy constructor.
Parameters:
that - another KST model
• ### Method Detail

• #### PrZt0

public double PrZt0()
Computes the stationary probability of in state Z_t = 0.
Returns:
the stationary probability of state 0
• #### PrZt1

public double PrZt1()
Computes the stationary probability of in state Z_t = 1.
Returns:
the stationary probability of state 1
• #### nextDouble

public double nextDouble()
Gets the next simulated observation.
Specified by:
nextDouble in interface RandomNumberGenerator
Overrides:
nextDouble in class HMMRNG
Returns:
next observation
• #### toString

public String toString()
Overrides:
toString in class Object