battery_optimizer.uk.legacy.legacy_request#
Functions
|
|
|
|
|
|
|
Classes
|
|
|
|
|
|
|
|
|
|
|
|
|
- class battery_optimizer.uk.legacy.legacy_request.BatteryParameters(*, battery_capacity, soc_min, soc_max, soc_initial, max_charge_power, charging_efficiency, max_discharge_power, discharging_efficiency, total_battery_cycle, invest_cost, grid_connection_export, grid_connection_import, PV_kWp, activation_likelihood, charged_energy, discharged_energy, cycle_cost)#
Bases:
BaseModel- Parameters:
battery_capacity (float)
soc_min (float)
soc_max (float)
soc_initial (float)
max_charge_power (float)
charging_efficiency (float)
max_discharge_power (float)
discharging_efficiency (float)
total_battery_cycle (int)
invest_cost (float)
grid_connection_export (float)
grid_connection_import (float)
PV_kWp (float)
activation_likelihood (float)
charged_energy (float)
discharged_energy (float)
cycle_cost (float)
- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- classmethod soc_initial_sensible(soc_initial, values)#
- class battery_optimizer.uk.legacy.legacy_request.EFASetting(*, EFA, DCH, DCL, Market_DCH, Market_DCL)#
Bases:
BaseModel- Parameters:
- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class battery_optimizer.uk.legacy.legacy_request.IndustrialCosts(*, perspective, AAHEDC, CfD, CM, RO, FiT, LLF, TLM, BSUoS, Energy, MgmFee, ImbalRiskChar, TNUoS, DUoS_ch, DUoS_dch)#
Bases:
BaseModel- Parameters:
- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class battery_optimizer.uk.legacy.legacy_request.LegacyRequest(*, name, strategy, local_tz, strategy_parameters, lookahead_time='3D', settlement_period='30min', start_time, end_time, portfolio_overview, volume_weighted_mean_prices, perfect_price_forecast, battery_parameters)#
Bases:
BaseModel- Parameters:
name (str)
strategy (Literal['uk_battery'])
local_tz (Literal['Europe/London'])
strategy_parameters (StrategyParameters)
lookahead_time (str)
settlement_period (str)
start_time (datetime)
end_time (datetime)
portfolio_overview (list[PortfolioOverview])
volume_weighted_mean_prices (list[VolumeWeightedMeanPrices])
perfect_price_forecast (bool)
battery_parameters (BatteryParameters)
- battery_parameters: BatteryParameters#
- classmethod ensure_consistent_datetime_index(volume_weighted_mean_prices, values)#
- model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'frozen': False, 'json_encoders': {<class 'pandas._libs.tslibs.timedeltas.Timedelta'>: <function LegacyRequest.<lambda>>, <class 'pandas.core.frame.DataFrame'>: <function LegacyRequest.<lambda>>}}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- portfolio_overview: list[PortfolioOverview]#
- strategy_parameters: StrategyParameters#
- volume_weighted_mean_prices: list[VolumeWeightedMeanPrices]#
- class battery_optimizer.uk.legacy.legacy_request.PortfolioOverview(*, datetime, spot_price, PV_prod_normalized, dch_price, dcl_price, triad_time, optimize_dc_time, optimize_spot_time, spot_bought, spot_sold, dch_marketed, dcl_marketed, DUoS_ch, DUoS_dch, cust_energy_costs)#
Bases:
BaseModel- Parameters:
datetime (datetime)
spot_price (float)
PV_prod_normalized (float)
dch_price (float)
dcl_price (float)
triad_time (bool)
optimize_dc_time (bool)
optimize_spot_time (bool)
spot_bought (float)
spot_sold (float)
dch_marketed (float)
dcl_marketed (float)
DUoS_ch (float)
DUoS_dch (float)
cust_energy_costs (float)
- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class battery_optimizer.uk.legacy.legacy_request.StrategyParameters(*, industrial_costs, DC_settings, battery_name, date_range_freq='3D', cycle_limit=2, power_swing, power_swing_limit, market_access, DC_access, Target_SOC_end, Target_SOC_end_lower_limit, Target_SOC_end_upper_limit)#
Bases:
BaseModel- Parameters:
industrial_costs (IndustrialCosts)
DC_settings (list[EFASetting])
battery_name (Literal['Warrington'])
date_range_freq (str)
cycle_limit (int)
power_swing (bool)
power_swing_limit (float)
market_access (bool)
DC_access (bool)
Target_SOC_end (bool)
Target_SOC_end_lower_limit (float)
Target_SOC_end_upper_limit (float)
- DC_settings: list[EFASetting]#
- industrial_costs: IndustrialCosts#
- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class battery_optimizer.uk.legacy.legacy_request.VolumeWeightedMeanPrices(*, datetime, volume_weighted_mean_price_eur_mwh)#
Bases:
BaseModel- model_config: ClassVar[ConfigDict] = {}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- battery_optimizer.uk.legacy.legacy_request.datetime_records_as_dataframe(cls, records)#
- battery_optimizer.uk.legacy.legacy_request.is_fraction(fraction)#
- battery_optimizer.uk.legacy.legacy_request.records_as_dataframe(cls, records)#