Class RenewableTrader

  • All Implemented Interfaces:
    DayAheadMarketTrader, PowerPlantScheduler, de.dlr.gitlab.fame.agent.AgentAbility

    public class RenewableTrader
    extends AggregatorTrader
    Markets renewable capacities considering various different support instruments
    Author:
    Johannes Kochems, Christoph Schimeczek, Felix Nitsch, Farzad Sarfarazi, Kristina Nienhaus
    • Field Detail

      • parameters

        public static final de.dlr.gitlab.fame.agent.input.Tree parameters
        Inputs specific to RenewableTraders
    • Constructor Detail

      • RenewableTrader

        public RenewableTrader​(de.dlr.gitlab.fame.agent.input.DataProvider dataProvider)
                        throws de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException
        Creates a RenewableTrader
        Parameters:
        dataProvider - provides input from config
        Throws:
        de.dlr.gitlab.fame.agent.input.ParameterData.MissingDataException - if any required data is not provided
    • Method Detail

      • calcBids

        protected Bid calcBids​(Marginal marginal,
                               de.dlr.gitlab.fame.time.TimeStamp targetTime,
                               long producerUuid,
                               boolean hasErrors)
        Description copied from class: AggregatorTrader
        Creates a Bid from given Marginal
        Specified by:
        calcBids in class AggregatorTrader
        Parameters:
        marginal - pair of true cost and power potential
        targetTime - associated with the marginal and bid
        producerUuid - id of plant operator associated with marginal
        hasErrors - if true errors will be added to the power of the bid
        Returns:
        created bid
      • applyPayoutStrategy

        protected double applyPayoutStrategy​(long plantOperatorId,
                                             de.dlr.gitlab.fame.time.TimePeriod accountingPeriod,
                                             double marketRevenue)
        Forward the sum of revenues from support and markets to plant operators; may keep a certain share of the overall revenues
        Specified by:
        applyPayoutStrategy in class AggregatorTrader
        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