net.sourceforge.jasa.agent.strategy
Class GDQStrategy

java.lang.Object
  extended by AbstractStrategy
      extended by net.sourceforge.jasa.agent.strategy.AbstractTradingStrategy
          extended by net.sourceforge.jasa.agent.strategy.FixedQuantityStrategyImpl
              extended by net.sourceforge.jasa.agent.strategy.FixedDirectionStrategy
                  extended by net.sourceforge.jasa.agent.strategy.GDQStrategy
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, FixedQuantityStrategy, TradingStrategy, MarketEventListener

public class GDQStrategy
extends FixedDirectionStrategy
implements java.io.Serializable

An implementation of the modified Gjerstad Dickhaut strategy in which quadratic, instead of cubic originally, functions are used to calculate the probability of any bid being accepted and bid to maximize expected profit. See

"Price Formation in Double Auctions" S. Gjerstad, J. Dickhaut and R. Palmer

Note that you must configure a report of type HistoricalDataReport in order to use this strategy.

Parameters

base .maxprice
double >= 0
(max price in market)

See Also:
HistoricalDataReport
 

Field Summary
protected  HistoricalDataReport historicalDataReport
           
protected  double max
           
static double MAX_PRICE
           
protected  double maxPoint
           
static java.lang.String P_DEF_BASE
           
static java.lang.String P_MAXPRICE
           
 
Fields inherited from class net.sourceforge.jasa.agent.strategy.AbstractTradingStrategy
auction, tradeDirectionPolicy
 
Constructor Summary
GDQStrategy()
           
 
Method Summary
 TokenTradingAgent getAgent()
           
 HistoricalDataReport getHistoricalDataReport()
           
 boolean modifyShout(Order shout)
           
 void onRoundClosed(Market auction)
           
 java.lang.Object protoClone()
           
 void setHistoricalDataReport(HistoricalDataReport historicalDataReport)
           
 
Methods inherited from class net.sourceforge.jasa.agent.strategy.FixedDirectionStrategy
isBuy, isSell, setBuy
 
Methods inherited from class net.sourceforge.jasa.agent.strategy.FixedQuantityStrategyImpl
determineQuantity, getQuantity, setQuantity
 
Methods inherited from class net.sourceforge.jasa.agent.strategy.AbstractTradingStrategy
clone, getTradeDirectionPolicy, initialise, isBuy, modifyOrder, reset, setAgent, setTradeDirectionPolicy
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.sourceforge.jasa.agent.TradingStrategy
initialise, isBuy, modifyOrder, setAgent, subscribeToEvents
 

Field Detail

maxPoint

protected double maxPoint

max

protected double max

historicalDataReport

protected HistoricalDataReport historicalDataReport

P_DEF_BASE

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

P_MAXPRICE

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

MAX_PRICE

public static double MAX_PRICE
Constructor Detail

GDQStrategy

public GDQStrategy()
Method Detail

protoClone

public java.lang.Object protoClone()
Overrides:
protoClone in class AbstractTradingStrategy

getAgent

public TokenTradingAgent getAgent()
Overrides:
getAgent in class AbstractTradingStrategy

modifyShout

public boolean modifyShout(Order shout)
Overrides:
modifyShout in class FixedDirectionStrategy

onRoundClosed

public void onRoundClosed(Market auction)

getHistoricalDataReport

public HistoricalDataReport getHistoricalDataReport()

setHistoricalDataReport

public void setHistoricalDataReport(HistoricalDataReport historicalDataReport)