net.sourceforge.jasa.market.rules
Class EquilibriumBeatingAcceptingPolicy

java.lang.Object
  extended by net.sourceforge.jasa.market.rules.OrderAcceptancePolicy
      extended by net.sourceforge.jasa.market.rules.QuoteBeatingAcceptingPolicy
          extended by net.sourceforge.jasa.market.rules.EquilibriumBeatingAcceptingPolicy
All Implemented Interfaces:
MarketEventListener

public class EquilibriumBeatingAcceptingPolicy
extends QuoteBeatingAcceptingPolicy

implements the shout-accepting rule under which a shout must be more competitive than an estimated equilibrium. The equilibrium is estimated through some learning algorithm, e.g. sliding-window-average learning and widrowhoff learning, by training with transaction prices.

 

Field Summary
protected static IllegalOrderException askException
           
protected static IllegalOrderException bidException
          Reusable exceptions for performance
protected  double delta
          A parameter used to adjust the equilibrium price estimate so as to relax the restriction.
static java.lang.String EST_EQUILIBRIUM_PRICE
           
protected  MimicryLearner learner
           
static java.lang.String P_DEF_BASE
           
static java.lang.String P_DELTA
           
static java.lang.String P_LEARNER
           
 
Fields inherited from class net.sourceforge.jasa.market.rules.QuoteBeatingAcceptingPolicy
DISCLAIMER
 
Fields inherited from class net.sourceforge.jasa.market.rules.OrderAcceptancePolicy
auctioneer
 
Constructor Summary
EquilibriumBeatingAcceptingPolicy()
           
 
Method Summary
protected  void askNotAnImprovementException()
           
protected  void bidNotAnImprovementException()
           
 void check(Order shout)
          checks whether
 void eventOccurred(MarketEvent event)
           
 double getDelta()
           
 MimicryLearner getLearner()
           
 void initialise()
           
 void reset()
           
 void setDelta(double delta)
           
 void setLearner(MimicryLearner learner)
           
 java.lang.String toString()
           
 
Methods inherited from class net.sourceforge.jasa.market.rules.OrderAcceptancePolicy
getAuctioneer, setAuctioneer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

bidException

protected static IllegalOrderException bidException
Reusable exceptions for performance


askException

protected static IllegalOrderException askException

delta

protected double delta
A parameter used to adjust the equilibrium price estimate so as to relax the restriction.


P_DELTA

public static final java.lang.String P_DELTA
See Also:
Constant Field Values

learner

protected MimicryLearner learner

P_LEARNER

public static final java.lang.String P_LEARNER
See Also:
Constant Field Values

P_DEF_BASE

public static final java.lang.String P_DEF_BASE
See Also:
Constant Field Values

EST_EQUILIBRIUM_PRICE

public static final java.lang.String EST_EQUILIBRIUM_PRICE
See Also:
Constant Field Values
Constructor Detail

EquilibriumBeatingAcceptingPolicy

public EquilibriumBeatingAcceptingPolicy()
Method Detail

initialise

public void initialise()
Overrides:
initialise in class OrderAcceptancePolicy

reset

public void reset()
Overrides:
reset in class OrderAcceptancePolicy

check

public void check(Order shout)
           throws IllegalOrderException
checks whether

shout

can beat the estimated equilibrium.

Overrides:
check in class QuoteBeatingAcceptingPolicy
Throws:
IllegalOrderException

bidNotAnImprovementException

protected void bidNotAnImprovementException()
                                     throws IllegalOrderException
Throws:
IllegalOrderException

askNotAnImprovementException

protected void askNotAnImprovementException()
                                     throws IllegalOrderException
Throws:
IllegalOrderException

eventOccurred

public void eventOccurred(MarketEvent event)
Overrides:
eventOccurred in class OrderAcceptancePolicy

setDelta

public void setDelta(double delta)

getDelta

public double getDelta()

getLearner

public MimicryLearner getLearner()

setLearner

public void setLearner(MimicryLearner learner)

toString

public java.lang.String toString()
Overrides:
toString in class OrderAcceptancePolicy