Package org.powertac.common.repo
Class OrderbookRepo
- java.lang.Object
-
- org.powertac.common.repo.ManagedRepo
-
- org.powertac.common.repo.OrderbookRepo
-
- All Implemented Interfaces:
DomainRepo
@Service public class OrderbookRepo extends ManagedRepo
Repository for Orderbooks. Orderbooks are created with makeOrderbook(). Query methods include findByTimeslot().- Author:
- John Collins
-
-
Field Summary
-
Fields inherited from class org.powertac.common.repo.ManagedRepo
interval, offset, timeService
-
-
Constructor Summary
Constructors Constructor Description OrderbookRepo()Standard constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoCleanup()List<Orderbook>findAllByTimeslot(Timeslot timeslot)OrderbookfindByTimeslot(Timeslot timeslot)Returns the most recent Orderbook that has been created for the specified timeslot.OrderbookfindSpotByTimeslot(Timeslot timeslot)Returns the most recent orderbook with a non-null clearing price.Double[]getMaxAskPrices()Returns maxAskPrices array, representing the maximum ask prices for the most recent clearing of the wholesale market.Double[]getMinAskPrices()Returns the minAskPrices array, representing the minimum ask prices for the most recent clearing of the wholesale market.OrderbookmakeOrderbook(Timeslot timeslot, Double clearingPrice)Creates a new Orderbook, with standard defaults (productType = Future, dateExecuted = now).voidrecycle()Clears the index in preparation for a new simulationvoidsetMaxAskPrices(Double[] values)voidsetMinAskPrices(Double[] values)Set the minAskPrices array.intsize()Returns the count of instances in this repo-
Methods inherited from class org.powertac.common.repo.ManagedRepo
setup
-
-
-
-
Method Detail
-
makeOrderbook
public Orderbook makeOrderbook(Timeslot timeslot, Double clearingPrice)
Creates a new Orderbook, with standard defaults (productType = Future, dateExecuted = now).
-
findByTimeslot
public Orderbook findByTimeslot(Timeslot timeslot)
Returns the most recent Orderbook that has been created for the specified timeslot.
-
findSpotByTimeslot
public Orderbook findSpotByTimeslot(Timeslot timeslot)
Returns the most recent orderbook with a non-null clearing price. Note that this can return null if this timeslot has never cleared.
-
setMinAskPrices
public void setMinAskPrices(Double[] values)
Set the minAskPrices array. This is presumably done by the auctioneer when clearing the market, and so the data reflects the prices for the most recent market clearing.
-
setMaxAskPrices
public void setMaxAskPrices(Double[] values)
- Parameters:
values-
-
getMinAskPrices
public Double[] getMinAskPrices()
Returns the minAskPrices array, representing the minimum ask prices for the most recent clearing of the wholesale market.
-
getMaxAskPrices
public Double[] getMaxAskPrices()
Returns maxAskPrices array, representing the maximum ask prices for the most recent clearing of the wholesale market.- Returns:
- maximum ask prices.
-
size
public int size()
Returns the count of instances in this repo
-
recycle
public void recycle()
Clears the index in preparation for a new simulation- Specified by:
recyclein interfaceDomainRepo- Overrides:
recyclein classManagedRepo
-
doCleanup
protected void doCleanup()
- Specified by:
doCleanupin classManagedRepo
-
-