edu.cuny.cat.trader.strategy
Class ZIQStrategy

java.lang.Object
  extended by java.util.Observable
      extended by edu.cuny.cat.trader.strategy.AbstractStrategy
          extended by edu.cuny.cat.trader.strategy.FixedQuantityStrategyImpl
              extended by edu.cuny.cat.trader.strategy.AdaptiveStrategyImpl
                  extended by edu.cuny.cat.trader.strategy.MomentumStrategy
                      extended by edu.cuny.cat.trader.strategy.ZIQStrategy
All Implemented Interfaces:
AuctionEventListener, AdaptiveStrategy, FixedQuantityStrategy, Strategy, edu.cuny.config.param.Parameterizable, edu.cuny.obj.Prototypeable, edu.cuny.obj.Resetable, java.io.Serializable, java.lang.Cloneable

public class ZIQStrategy
extends MomentumStrategy
implements edu.cuny.obj.Prototypeable

A simplified implementation of the Zero-Intelligence-Plus (ZIP) strategy, which works well in CDAs. It is named ZIQ because it follows ZIP and keeps trying to beat the market quotes. See:

"Minimal Intelligence Agents for Bargaining Behaviours in Market-based Environments" Dave Cliff 1997.

Version:
$Revision: 1.7 $
Author:
Jinzhong Niu
See Also:
ZIPStrategy, Serialized Form

Field Summary
 
Fields inherited from class edu.cuny.cat.trader.strategy.MomentumStrategy
absolutePerterbationDistribution, currentPrice, initialMarginDistribution, lastShout, lastShoutAccepted, lastShoutPrice, learner, P_DEF_BASE, P_LEARNER, P_SCALING, relativePerterbationDistribution, scaling
 
Fields inherited from class edu.cuny.cat.trader.strategy.FixedQuantityStrategyImpl
quantity
 
Fields inherited from class edu.cuny.cat.trader.strategy.AbstractStrategy
agent, currentShout, MIN_PRICE_DIFFERENCE
 
Constructor Summary
ZIQStrategy()
           
ZIQStrategy(AbstractTradingAgent agent)
           
 
Method Summary
protected  void adjustMargin()
           
protected  void buyerStrategy()
           
 java.lang.Object protoClone()
           
protected  void sellerStrategy()
           
protected  void shoutPosted(ShoutPostedEvent event)
           
protected  void transactionPosted(TransactionPostedEvent event)
           
 
Methods inherited from class edu.cuny.cat.trader.strategy.MomentumStrategy
adjustMargin, calculatePrice, eventOccurred, getCurrentPrice, getLastShout, getLearner, getScaling, initMargin, isLastShoutAccepted, modifyShout, perterb, processDayClosed, processLastShout, requiresAuctionHistory, setLearner, setMargin, setScaling, setup, targetMargin, toString
 
Methods inherited from class edu.cuny.cat.trader.strategy.FixedQuantityStrategyImpl
determineQuantity, getQuantity, setQuantity
 
Methods inherited from class edu.cuny.cat.trader.strategy.AbstractStrategy
getAgent, initialize, modifyShout, reset, setAgent
 
Methods inherited from class java.util.Observable
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface edu.cuny.obj.Resetable
reset
 
Methods inherited from interface edu.cuny.cat.trader.strategy.Strategy
determineQuantity, modifyShout, setAgent
 

Constructor Detail

ZIQStrategy

public ZIQStrategy()

ZIQStrategy

public ZIQStrategy(AbstractTradingAgent agent)
Method Detail

protoClone

public java.lang.Object protoClone()
Specified by:
protoClone in interface edu.cuny.obj.Prototypeable
Overrides:
protoClone in class AbstractStrategy

shoutPosted

protected void shoutPosted(ShoutPostedEvent event)
Overrides:
shoutPosted in class MomentumStrategy

transactionPosted

protected void transactionPosted(TransactionPostedEvent event)
Overrides:
transactionPosted in class MomentumStrategy

adjustMargin

protected void adjustMargin()
Specified by:
adjustMargin in class MomentumStrategy

sellerStrategy

protected void sellerStrategy()

buyerStrategy

protected void buyerStrategy()