Class AggregatorTrader

    • Constructor Detail

      • AggregatorTrader

        public AggregatorTrader​(de.dlr.gitlab.fame.agent.input.DataProvider dataProvider)
        Creates an AggregatorTrader
        Parameters:
        dataProvider - provides input from config
    • Method Detail

      • getClientDataForSetType

        protected List<ClientData> getClientDataForSetType​(RenewablePlantOperator.SetType setType)
        Return all data of clients that match the given setType
        Parameters:
        setType - to search for
        Returns:
        client data for given set type
      • submitHourlyBids

        protected abstract ArrayList<BidData> submitHourlyBids​(de.dlr.gitlab.fame.time.TimeStamp time,
                                                               de.dlr.gitlab.fame.communication.Contract contract,
                                                               ArrayList<MarginalCost> sortedMarginals)
        Prepares hourly bids based on given marginals and sends them to the contracted partner
        Parameters:
        time - at which to calculate bids
        contract - to fulfil
        sortedMarginals - to be used for bid calculation
        Returns:
        submitted bids
      • logClientDispatchAndRevenues

        protected void logClientDispatchAndRevenues​(BidData bid,
                                                    double dispatchedEnergy,
                                                    double powerPrice)
        Logs actual dispatch and revenue for client of given BidData at its delivery time
        Parameters:
        bid - original bid sent for clearing
        dispatchedEnergy - assigned to this bid
        powerPrice - awarded price
      • applyPayoutStrategy

        protected abstract double applyPayoutStrategy​(long plantOperatorId,
                                                      de.dlr.gitlab.fame.time.TimePeriod accountingPeriod,
                                                      double marketRevenue)
        Define a pay-out strategy for the contractual pay-out (in child classes)
        Parameters:
        plantOperatorId - the operator to pay
        accountingPeriod - to be considered
        marketRevenue - earned with bids associated with that operator
        Returns:
        value to pay out to that plant operator