How to retrieve ENTSOE electrical consumption of France?

Easy to use, 100% Lua-based event scripting framework.

Moderator: leecollings

Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

Hello
I’m new on this forum and would need some help.

I have a Raspberry PI which has Domoticz running a plugin to retrieve my electrical consumption via a LINKY (a intelligent meter installed by the distribution company in France in every house). The site is in french but the graph is more or less self-explanatory:
https://github.com/guillaumezin/DomoticzLinky

I found the following topic created by willemd because in this forum I searched for ENTSOE.
viewtopic.php?t=39423

In this topic I found a link of the ENTSOE web site which describes the “RESTful API - user guide”. but for me this is far too complex:
https://transparency.entsoe.eu/content/ ... Guide.html

What I would like is to collect every hour the electrical consumption of France per production type (Nuclear, Coal, Gas, Wind, Solar, Hydro, Gas) and show this in Domoticz.

Something like the “Hourly electricity origin” graph on the left part of this web site:
https://app.electricitymaps.com/zone/FR

Is this feasible? Somebody can help me?

In advance thanks a lot.

Willy
User avatar
waltervl
Posts: 5791
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by waltervl »

That graph similar like energy types is not feasible in standard Domoticz with Domoticz devices
Perhaps with Dashticz.

But then it should be easier to show the graph directly from their website in a Domoticz custom page: https://www.domoticz.com/wiki/Custom_menu
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Tuesday 05 March 2024 18:12 Hello
I’m new on this forum and would need some help.

I have a Raspberry PI which has Domoticz running a plugin to retrieve my electrical consumption via a LINKY (a intelligent meter installed by the distribution company in France in every house). The site is in french but the graph is more or less self-explanatory:
...

I found the following topic created by willemd because in this forum I searched for ENTSOE.
...

In this topic I found a link of the ENTSOE web site which describes the “RESTful API - user guide”. but for me this is far too complex:
...ml

What I would like is to collect every hour the electrical consumption of France per production type (Nuclear, Coal, Gas, Wind, Solar, Hydro, Gas) and show this in Domoticz.

Something like the “Hourly electricity origin” graph on the left part of this web site:
...

Is this feasible? Somebody can help me?

In advance thanks a lot.

Willy
If you want to use ENTSOE for that you first have to get yourself an API key. That is the easy part. You can request one at their website.

The next step is to look at that documentation you are referencing and find out what kind of parameters you need to pass in the request. Best to start in the appendices. I would guess you need document type A75 and business type A04?
I am not sure which ones to use but it is easy to experiment.

To find out the parameters you can also first find the required graph on the interactive ENTSOE website first like this one:

https://transparency.entsoe.eu/generati ... ST+(UTC+2)

Then you see the parameters used and you can put those in your own API query and refine from there.
It seems in most queries instead of listing all the productionTypes you (psrType), you can leave that out and you will get them all.

Even though you find it complex, experimentation is probably the best way forward.
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

Hello
Tkanks for your replies (willemd and waltervl)

@willemd: the ETSOE link you have given shows a graph which is exactly what I'm looking for, but .... if possible shown in my Domoticz :D

The question is how to achieve this...with my little knowledge...

Should I start from your script you have given in the first post of your topic (which if I understand is a LUA scipt)?

If yes (and assuming I can adpapt this script with the correct parameters) then I have the following questions:
- how to run a LUA script (on my RPI?) just for testing?
- once test is OK how to integrate this script in my Domoticz so that it shows a graph like you have given in the ENTSOE link?

PS: sorry for my very basic questions but I'm a beginner in Domoticz

Many thanks

Willy
HvdW
Posts: 605
Joined: Sunday 01 November 2015 22:45
Target OS: Raspberry Pi / ODroid
Domoticz version: 2023.2
Location: Twente
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by HvdW »

waltervl wrote: Tuesday 05 March 2024 19:37 But then it should be easier to show the graph directly from their website in a Domoticz custom page: https://www.domoticz.com/wiki/Custom_menu
Which makes me ask an offtopic question.
How can I display this Custom menu.
It is possible to switch most menus off and on (tested with Scenes), however the Custom menu refuses to appear.
Bugs bug me.
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

To start with you can ignore the dzvents script. The first thing to do is to make sure you have the correct URL and you can develop that one just by pasting it into your browser and see what kind of results you get.

Here is an example of the URL that I use to get the prices (with my API token replaced by standard text)
https://web-api.tp.entsoe.eu/api?securi ... 2403062200
If you look at the dzvents (not LUA) script you can see how this URL is composed in the dzvent script.

You can only display those values into domoticz if you are able to load them onto a device. I don't know what device type you can use for this kind of data. Not sure if one exists. Maybe you have to use a separate device for each type of production.

It also depends on what you want to do with the data. Do you want to process it further or only display it. If it is just for display, you could load each value onto a separate device and then combine those devices as a stacked bar in dashticz. In that way you are replicating the ENTSOE graph in dashticz. Or, much easier, you could just embed the URL for the ENTSOE graph in a dashticz frame. Have a look in the dashticz manual in the paragraph about "frames".

If you really want to load the values into domoticz you have to use some kind of dzvents script, similar to the one used for loading prices. The principle of the script is that the script is first launched using a timer. This sends the http request. After that, the script is launched by the http response and the values from the response are processed onto devices. Have a look at the dzvents documentation for asynchronous http requests.

Here is my latest dzvents script to load the prices onto a managed counter for later display in domoticz and dashticz.

Code: Select all

-- Script to load day-ahead electricity prices into a managed counter.
-- The script loads prices excluding tax and including tax onto two managed counters and also uses a managed counter to indicate
-- the current hour, so that can be used in a graph to highlight that hour.

-- New prices are available every day at 15:00 for the coming 24 hrs.
-- These are base prices. Providers of dynamic electricity contracts will add their surcharges and government taxes to it.
-- API documentation at: https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html
-- To get this data yourself (it is free):
--    1) Register for an account at https://transparency.entsoe.eu/dashboard/show
--    2) Send an email with subject "Restful API access" and your account email address in the body
--    3) After receipt of their confirmation, go into your account and generate your token.
--    4) Store the token in a domoticz user variable and note down the idx.
--    5) Adapt the idx on the line below.

local Time = require('Time')
-- devices
local idxDynamicELPrices=177
local idxDynamicELPricesIncl=184
local idxCurrentHourIndicator=179

-- user variables
local idxEUtoken=12  -- idx of the user variable with the API token
local idxBTWpercentage=13 -- user variable with BTW/VAT percentage
local idxElTax=4          -- user variable for electricity tax, incl BTW

return {
	on = {
		timer = {
		    'at *:03',  -- Timer to get new electricity prices. Adapt timer to your needs. Normally new electricty prices are available after 15:00. 
		},
		httpResponses = {
			'ELday1prices', -- must match with the callback passed to the openURL command in the code below
			'ELday2prices', -- must match with the callback passed to the openURL command in the code below
		}
	},
	logging = {
		level = domoticz.LOG_INFO,
		marker = 'EU future EL prices',
	},
	execute = function(domoticz, item)
	    
	    if (item.isTimer) then
	        -- section to launch the EU electricity API get request 
	        local UrlStart='https://web-api.tp.entsoe.eu/api?'  -- the API website
	        local EUtoken=domoticz.variables(idxEUtoken)        -- user variable with API token
	        local DocType='A44'                                 -- day ahead prices document type 
	        local PriceRegion='10YNL----------L'                -- region is set to The Netherlands (adapt to your need as per API documentation)
	        
	        --get data current day first
	        local dayahead=0
	        local PricePeriodStart=os.date("%Y%m%d",os.time() + dayahead) .. "0000"  -- range 00:00 to 23:00, this will return full day anyway
	        local PricePeriodEnd=os.date("%Y%m%d", os.time() + dayahead) .. "2200"    
	        
	        -- compose the full URL
	        local EUurl=UrlStart .. 'securityToken=' .. EUtoken.value .. '&documentType=' .. DocType .. '&in_Domain=' .. PriceRegion .. '&out_Domain=' .. PriceRegion .. '&periodStart=' .. PricePeriodStart .. '&periodEnd=' .. PricePeriodEnd
	        
	        domoticz.log("URL : " .. EUurl, domoticz.LOG_INFO)
	        
	        -- launch the URL
			domoticz.openURL({
				url = EUurl,
				method = 'GET',
				callback = 'ELday1prices', -- must match httpResponses above
			})
			
			if Time().hour>=14 then
			
			    -- get the data for the second day
    			local dayahead=24*60*60
    	        local PricePeriodStart=os.date("%Y%m%d",os.time() + dayahead) .. "0000"  -- range 00:00 to 23:00, this will return full day anyway
    	        local PricePeriodEnd=os.date("%Y%m%d", os.time() + dayahead) .. "2200"    
    	        
    	        -- compose the full URL
    	        local EUurl=UrlStart .. 'securityToken=' .. EUtoken.value .. '&documentType=' .. DocType .. '&in_Domain=' .. PriceRegion .. '&out_Domain=' .. PriceRegion .. '&periodStart=' .. PricePeriodStart .. '&periodEnd=' .. PricePeriodEnd
    	        
    	        domoticz.log("URL : " .. EUurl, domoticz.LOG_INFO)
    	        
    	        -- launch the URL
    			domoticz.openURL({
    				url = EUurl,
    				method = 'GET',
    				callback = 'ELday2prices', -- must match httpResponses above
    			})
    		end	

			local PreviousHourDateTime=os.date("%Y-%m-%d %H:00:00",os.time() - 60*60)
			domoticz.log("previous datetime " .. PreviousHourDateTime,domoticz.LOG_INFO)
			local NextHourDateTime=os.date("%Y-%m-%d %H:00:00",os.time() + 60*60)
			domoticz.log("next datetime " .. NextHourDateTime,domoticz.LOG_INFO)
			domoticz.devices(idxCurrentHourIndicator).updateHistory(PreviousHourDateTime,"0;0")
			domoticz.devices(idxCurrentHourIndicator).updateHistory(NextHourDateTime,"0;0")
    		
		else 
		    if (item.isHTTPResponse) then
		        local CurrentHr=os.date("%H",os.time())
		        local CurrentDateTime=os.date("%Y-%m-%d %H:00:00",os.time())
		        -- response to openURL (HTTP GET) request was received
		        if (item.trigger=="ELday1prices") or (item.trigger=="ELday2prices") then
    			    if (item.ok) then
    			        if (item.isXML) then   -- should be XML
    			            --domoticz.log('start dumptable', domoticz.LOG_INFO)
    			            --domoticz.utils.dumpTable(item.xml)  -- dumpTable can be used for debugging
    			            --domoticz.log('end dumptable', domoticz.LOG_INFO)
    			            
    			            local responseKey=""
    			            for key, value in pairs (item.xml) do
    			                domoticz.log('item.xml first line key ' .. key , domoticz.LOG_INFO)
    			                responseKey=key
    			            end
    			            
    			            if responseKey == "Publication_MarketDocument" then
    			                local priceHourStr=""
    			                local priceDate=""
    			                local priceAmount=0
    			                local inclAmount=0
    			                local sValueStr=""
    			                local inclSValueStr=""
        			            for id = 1, 24 do
                                    local priceHour=(id-1)
                                    if priceHour<10 then
                                        priceHourStr="0" .. priceHour
                                    else
                                        priceHourStr=priceHour
                                    end
                                    if (item.trigger=="ELday1prices") then
                                        priceDate=os.date("%Y-%m-%d",os.time()) .. " " .. priceHourStr .. ":00:00"
                                    else
                                        priceDate=os.date("%Y-%m-%d",os.time() + 24*60*60) .. " " .. priceHourStr .. ":00:00"
                                    end    
                                    priceAmount=domoticz.utils.round(item.xml.Publication_MarketDocument.TimeSeries.Period.Point[id]['price.amount']*100,0)
                                    domoticz.log('priceDate ' .. priceDate .. " price " .. priceAmount , domoticz.LOG_INFO)
                                    inclAmount=domoticz.utils.round(priceAmount*(1+domoticz.variables(idxBTWpercentage).value/100)+domoticz.variables(idxElTax).value*100000,0)
                                    sValueStr="0;" .. priceAmount 
                                    inclSValueStr="0;"..inclAmount
                                    domoticz.log('sValueStr ' .. sValueStr , domoticz.LOG_INFO)
                                    domoticz.log('inclSValueStr ' .. inclSValueStr , domoticz.LOG_INFO)
                                    domoticz.devices(idxDynamicELPrices).updateHistory(priceDate,sValueStr)
                                    domoticz.devices(idxDynamicELPricesIncl).updateHistory(priceDate,inclSValueStr)
                                    domoticz.log("current hr " .. CurrentHr,domoticz.LOG_INFO)
                                    domoticz.log("price hr " .. priceHour,domoticz.LOG_INFO)
                                    if (item.trigger=="ELday1prices") then
                                        if tostring(CurrentHr)==tostring(priceHourStr) then
                                            domoticz.devices(idxCurrentHourIndicator).updateHistory(CurrentDateTime,sValueStr)
                                            domoticz.log("updating current hour " .. sValueStr,domoticz.LOG_INFO)
                                            domoticz.devices(idxCurrentHourIndicator).updateCounter(priceAmount)
                                            domoticz.devices(idxDynamicELPrices).updateCounter(priceAmount)
                                            domoticz.devices(idxDynamicELPricesIncl).updateCounter(inclAmount)
                                        end
                                    end
                                end
                            else
                                domoticz.log("No price data received from trigger " .. item.trigger .. " key " .. responseKey, domoticz.LOG_INFO)
                            end    

    			        else
    				        domoticz.log('No XML received', domoticz.LOG_INFO)
    				    end
    			    else
    				    domoticz.log('There was a problem handling the request. Item not ok', domoticz.LOG_INFO)
    				    domoticz.log(item, domoticz.LOG_INFO)
    			    end
	            end
		    end
	    end
	end
}

Update with additional thought: the display as a frame probably will not work because you need to pass a variable (today's date). I would not know how to do that.
Last edited by willemd on Wednesday 06 March 2024 12:37, edited 2 times in total.
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

HvdW wrote: Wednesday 06 March 2024 10:57
waltervl wrote: Tuesday 05 March 2024 19:37 But then it should be easier to show the graph directly from their website in a Domoticz custom page: https://www.domoticz.com/wiki/Custom_menu
Which makes me ask an offtopic question.
How can I display this Custom menu.
It is possible to switch most menus off and on (tested with Scenes), however the Custom menu refuses to appear.
The wiki is a good place to start https://www.domoticz.com/wiki/Custom_menu
HvdW
Posts: 605
Joined: Sunday 01 November 2015 22:45
Target OS: Raspberry Pi / ODroid
Domoticz version: 2023.2
Location: Twente
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by HvdW »

It will only show the menu if there is a custom page or multiple custom pages installed.

Ah! Overlooked this one.
Bugs bug me.
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

Hello willemd
Thanks for your reply.
I have created an account at ENTSOE web site and initiated the process to get the token - I'm waiting for their reply.
I will then perform some tests with the URL you have given me and see what I can get.

In the meantime I have some more questions about Domoticz.

I'm a Linux user (my laptop is LinuxMint) and I'm used to debug first in a Terminal before putting in production.
From what I understood, this is not really possible with DzVents, i.e. I have to create the script via the Domoticz UI, as well as the devices and user variables. Correct?
Assuming the script will not work immediately, how do I debug? And how do I run the script manually (rather than waiting for the timer)?

BR

Willy
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Wednesday 06 March 2024 15:05 Hello willemd
Thanks for your reply.
I have created an account at ENTSOE web site and initiated the process to get the token - I'm waiting for their reply.
I will then perform some tests with the URL you have given me and see what I can get.

In the meantime I have some more questions about Domoticz.

I'm a Linux user (my laptop is LinuxMint) and I'm used to debug first in a Terminal before putting in production.
From what I understood, this is not really possible with DzVents, i.e. I have to create the script via the Domoticz UI, as well as the devices and user variables. Correct?
Assuming the script will not work immediately, how do I debug? And how do I run the script manually (rather than waiting for the timer)?

BR

Willy
Unless you set up a separate test environment, you normally develop dzvents scripts in domoticz live itself. Not really a problem, once you are done you can remove/recreate your devices to get rid of test data, if needed.

For debugging it is best to do a lot of logging to the logfile and look at any errors in the logfile. So at critical points in your script, or after calculating values, you do for example:
domoticz.log("This is some logging for debugging. The value of device 3 is ".. domoticz.devices(3).value, domoticz.LOG_INFO)

You can use a timer "every minute" to avoid long waiting times. Or you can trigger the script by a switch device for example. If you then push the button on the switch, the script will be run.
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

Hello willemd
I got my token from ENTSOE so I could test the URL you gave me. I tested 2 syntax:

One which retrieves all Production Types
documentType=A75&processType=A16&PsrType=B14&in_Domain=10YFR-RTE------C

An one which retrieves only Nuclear Production
documentType=A75&processType=A16&PsrType=B14&in_Domain=10YFR-RTE------C

I compared the nuclear data with the dashboard in the link you gave me this morning and it seems all OK!

If I use the first case (all data) a single device will hold all this data?

If I look into your script I have the impression that retrieving the XML data into Domoticz counters will not be easy because not all production types have 24 data values (ex. hydro generation and hydro pumping). What do you think?

Thanks in advance for your help

Willy
User avatar
waltervl
Posts: 5791
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by waltervl »

Perhaps a stupid question but why do you want to have the nuclear power production of France as a device in Domoticz?
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

Hello waltercl
In fact I'm interested to have somthing like this in Domoticz:
https://transparency.entsoe.eu/generati ... ST+(UTC+2)

This is a link willemd gave me this morning.

PS: I live in France in an appartment so no way to have my own generation (wind or solar) so I'm not interested in "price". My contract is with EDF and the price per KWH is fixed by government rules.

Willy
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Wednesday 06 March 2024 20:58 Hello willemd
I got my token from ENTSOE so I could test the URL you gave me. I tested 2 syntax:

One which retrieves all Production Types
documentType=A75&processType=A16&PsrType=B14&in_Domain=10YFR-RTE------C

An one which retrieves only Nuclear Production
documentType=A75&processType=A16&PsrType=B14&in_Domain=10YFR-RTE------C

I compared the nuclear data with the dashboard in the link you gave me this morning and it seems all OK!

If I use the first case (all data) a single device will hold all this data?

If I look into your script I have the impression that retrieving the XML data into Domoticz counters will not be easy because not all production types have 24 data values (ex. hydro generation and hydro pumping). What do you think?

Thanks in advance for your help

Willy
Can you post an example of the data that you are getting with these URLs?
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Wednesday 06 March 2024 22:00 Hello waltercl
In fact I'm interested to have somthing like this in Domoticz:
https://transparency.entsoe.eu/generati ... ST+(UTC+2)

This is a link willemd gave me this morning.

PS: I live in France in an appartment so no way to have my own generation (wind or solar) so I'm not interested in "price". My contract is with EDF and the price per KWH is fixed by government rules.

Willy
This does not answer the question , which is "Why do you want this in Domoticz?"
Why not look at ENTSOE directly instead?

What is the purpose? Plans for any further processing? Just out of interest, for looking at the graph?
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

willemd wrote: Wednesday 06 March 2024 22:18 Can you post an example of the data that you are getting with these URLs?
I did not found how to attache a file so here is what I get.

Code: Select all

<GL_MarketDocument xmlns="urn:iec62325.351:tc57wg16:451-6:generationloaddocument:3:0">
<mRID>4a1470091b814c06af0dc6d562ab4434</mRID>
<revisionNumber>1</revisionNumber>
<type>A75</type>
<process.processType>A16</process.processType>
<sender_MarketParticipant.mRID codingScheme="A01">10X1001A1001A450</sender_MarketParticipant.mRID>
<sender_MarketParticipant.marketRole.type>A32</sender_MarketParticipant.marketRole.type>
<receiver_MarketParticipant.mRID codingScheme="A01">10X1001A1001A450</receiver_MarketParticipant.mRID>
<receiver_MarketParticipant.marketRole.type>A33</receiver_MarketParticipant.marketRole.type>
<createdDateTime>2024-03-06T19:43:06Z</createdDateTime>
<time_Period.timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</time_Period.timeInterval>
<TimeSeries>
<mRID>1</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B01</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>349</quantity>
</Point>
<Point>
<position>2</position>
<quantity>354</quantity>
</Point>
<Point>
<position>3</position>
<quantity>352</quantity>
</Point>
<Point>
<position>4</position>
<quantity>349</quantity>
</Point>
<Point>
<position>5</position>
<quantity>352</quantity>
</Point>
<Point>
<position>6</position>
<quantity>355</quantity>
</Point>
<Point>
<position>7</position>
<quantity>352</quantity>
</Point>
<Point>
<position>8</position>
<quantity>353</quantity>
</Point>
<Point>
<position>9</position>
<quantity>350</quantity>
</Point>
<Point>
<position>10</position>
<quantity>354</quantity>
</Point>
<Point>
<position>11</position>
<quantity>352</quantity>
</Point>
<Point>
<position>12</position>
<quantity>350</quantity>
</Point>
<Point>
<position>13</position>
<quantity>351</quantity>
</Point>
<Point>
<position>14</position>
<quantity>353</quantity>
</Point>
<Point>
<position>15</position>
<quantity>352</quantity>
</Point>
<Point>
<position>16</position>
<quantity>347</quantity>
</Point>
<Point>
<position>17</position>
<quantity>351</quantity>
</Point>
<Point>
<position>18</position>
<quantity>348</quantity>
</Point>
<Point>
<position>19</position>
<quantity>350</quantity>
</Point>
<Point>
<position>20</position>
<quantity>352</quantity>
</Point>
<Point>
<position>21</position>
<quantity>352</quantity>
</Point>
<Point>
<position>22</position>
<quantity>351</quantity>
</Point>
<Point>
<position>23</position>
<quantity>351</quantity>
</Point>
<Point>
<position>24</position>
<quantity>351</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>2</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B04</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>6966</quantity>
</Point>
<Point>
<position>2</position>
<quantity>6710</quantity>
</Point>
<Point>
<position>3</position>
<quantity>6873</quantity>
</Point>
<Point>
<position>4</position>
<quantity>6718</quantity>
</Point>
<Point>
<position>5</position>
<quantity>5897</quantity>
</Point>
<Point>
<position>6</position>
<quantity>5781</quantity>
</Point>
<Point>
<position>7</position>
<quantity>6048</quantity>
</Point>
<Point>
<position>8</position>
<quantity>7513</quantity>
</Point>
<Point>
<position>9</position>
<quantity>8321</quantity>
</Point>
<Point>
<position>10</position>
<quantity>8569</quantity>
</Point>
<Point>
<position>11</position>
<quantity>8484</quantity>
</Point>
<Point>
<position>12</position>
<quantity>8021</quantity>
</Point>
<Point>
<position>13</position>
<quantity>7714</quantity>
</Point>
<Point>
<position>14</position>
<quantity>7751</quantity>
</Point>
<Point>
<position>15</position>
<quantity>6998</quantity>
</Point>
<Point>
<position>16</position>
<quantity>6436</quantity>
</Point>
<Point>
<position>17</position>
<quantity>7055</quantity>
</Point>
<Point>
<position>18</position>
<quantity>6931</quantity>
</Point>
<Point>
<position>19</position>
<quantity>7442</quantity>
</Point>
<Point>
<position>20</position>
<quantity>7926</quantity>
</Point>
<Point>
<position>21</position>
<quantity>8253</quantity>
</Point>
<Point>
<position>22</position>
<quantity>8506</quantity>
</Point>
<Point>
<position>23</position>
<quantity>8559</quantity>
</Point>
<Point>
<position>24</position>
<quantity>8443</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>3</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B05</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>0</quantity>
</Point>
<Point>
<position>2</position>
<quantity>0</quantity>
</Point>
<Point>
<position>3</position>
<quantity>0</quantity>
</Point>
<Point>
<position>4</position>
<quantity>0</quantity>
</Point>
<Point>
<position>5</position>
<quantity>0</quantity>
</Point>
<Point>
<position>6</position>
<quantity>0</quantity>
</Point>
<Point>
<position>7</position>
<quantity>0</quantity>
</Point>
<Point>
<position>8</position>
<quantity>0</quantity>
</Point>
<Point>
<position>9</position>
<quantity>0</quantity>
</Point>
<Point>
<position>10</position>
<quantity>0</quantity>
</Point>
<Point>
<position>11</position>
<quantity>0</quantity>
</Point>
<Point>
<position>12</position>
<quantity>0</quantity>
</Point>
<Point>
<position>13</position>
<quantity>0</quantity>
</Point>
<Point>
<position>14</position>
<quantity>0</quantity>
</Point>
<Point>
<position>15</position>
<quantity>0</quantity>
</Point>
<Point>
<position>16</position>
<quantity>0</quantity>
</Point>
<Point>
<position>17</position>
<quantity>0</quantity>
</Point>
<Point>
<position>18</position>
<quantity>0</quantity>
</Point>
<Point>
<position>19</position>
<quantity>0</quantity>
</Point>
<Point>
<position>20</position>
<quantity>0</quantity>
</Point>
<Point>
<position>21</position>
<quantity>0</quantity>
</Point>
<Point>
<position>22</position>
<quantity>0</quantity>
</Point>
<Point>
<position>23</position>
<quantity>0</quantity>
</Point>
<Point>
<position>24</position>
<quantity>0</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>4</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B06</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>157</quantity>
</Point>
<Point>
<position>2</position>
<quantity>157</quantity>
</Point>
<Point>
<position>3</position>
<quantity>157</quantity>
</Point>
<Point>
<position>4</position>
<quantity>157</quantity>
</Point>
<Point>
<position>5</position>
<quantity>157</quantity>
</Point>
<Point>
<position>6</position>
<quantity>157</quantity>
</Point>
<Point>
<position>7</position>
<quantity>157</quantity>
</Point>
<Point>
<position>8</position>
<quantity>157</quantity>
</Point>
<Point>
<position>9</position>
<quantity>188</quantity>
</Point>
<Point>
<position>10</position>
<quantity>550</quantity>
</Point>
<Point>
<position>11</position>
<quantity>635</quantity>
</Point>
<Point>
<position>12</position>
<quantity>304</quantity>
</Point>
<Point>
<position>13</position>
<quantity>293</quantity>
</Point>
<Point>
<position>14</position>
<quantity>241</quantity>
</Point>
<Point>
<position>15</position>
<quantity>237</quantity>
</Point>
<Point>
<position>16</position>
<quantity>237</quantity>
</Point>
<Point>
<position>17</position>
<quantity>224</quantity>
</Point>
<Point>
<position>18</position>
<quantity>157</quantity>
</Point>
<Point>
<position>19</position>
<quantity>157</quantity>
</Point>
<Point>
<position>20</position>
<quantity>157</quantity>
</Point>
<Point>
<position>21</position>
<quantity>186</quantity>
</Point>
<Point>
<position>22</position>
<quantity>1218</quantity>
</Point>
<Point>
<position>23</position>
<quantity>1103</quantity>
</Point>
<Point>
<position>24</position>
<quantity>410</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>5</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T01:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>737</quantity>
</Point>
<Point>
<position>2</position>
<quantity>400</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>6</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-05T05:00Z</start>
<end>2024-03-05T13:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>102</quantity>
</Point>
<Point>
<position>2</position>
<quantity>1274</quantity>
</Point>
<Point>
<position>3</position>
<quantity>2223</quantity>
</Point>
<Point>
<position>4</position>
<quantity>2398</quantity>
</Point>
<Point>
<position>5</position>
<quantity>1981</quantity>
</Point>
<Point>
<position>6</position>
<quantity>693</quantity>
</Point>
<Point>
<position>7</position>
<quantity>611</quantity>
</Point>
<Point>
<position>8</position>
<quantity>441</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>7</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-05T16:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>298</quantity>
</Point>
<Point>
<position>2</position>
<quantity>1457</quantity>
</Point>
<Point>
<position>3</position>
<quantity>3129</quantity>
</Point>
<Point>
<position>4</position>
<quantity>4029</quantity>
</Point>
<Point>
<position>5</position>
<quantity>3196</quantity>
</Point>
<Point>
<position>6</position>
<quantity>1463</quantity>
</Point>
<Point>
<position>7</position>
<quantity>1291</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>8</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<outBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</outBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-05T01:00Z</start>
<end>2024-03-05T05:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>48</quantity>
</Point>
<Point>
<position>2</position>
<quantity>303</quantity>
</Point>
<Point>
<position>3</position>
<quantity>262</quantity>
</Point>
<Point>
<position>4</position>
<quantity>496</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>9</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<outBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</outBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-05T13:00Z</start>
<end>2024-03-05T16:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>63</quantity>
</Point>
<Point>
<position>2</position>
<quantity>247</quantity>
</Point>
<Point>
<position>3</position>
<quantity>73</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>10</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B11</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>5863</quantity>
</Point>
<Point>
<position>2</position>
<quantity>5508</quantity>
</Point>
<Point>
<position>3</position>
<quantity>5056</quantity>
</Point>
<Point>
<position>4</position>
<quantity>5158</quantity>
</Point>
<Point>
<position>5</position>
<quantity>5202</quantity>
</Point>
<Point>
<position>6</position>
<quantity>5233</quantity>
</Point>
<Point>
<position>7</position>
<quantity>5479</quantity>
</Point>
<Point>
<position>8</position>
<quantity>5963</quantity>
</Point>
<Point>
<position>9</position>
<quantity>6473</quantity>
</Point>
<Point>
<position>10</position>
<quantity>6525</quantity>
</Point>
<Point>
<position>11</position>
<quantity>6256</quantity>
</Point>
<Point>
<position>12</position>
<quantity>5804</quantity>
</Point>
<Point>
<position>13</position>
<quantity>5676</quantity>
</Point>
<Point>
<position>14</position>
<quantity>5335</quantity>
</Point>
<Point>
<position>15</position>
<quantity>5053</quantity>
</Point>
<Point>
<position>16</position>
<quantity>5109</quantity>
</Point>
<Point>
<position>17</position>
<quantity>5250</quantity>
</Point>
<Point>
<position>18</position>
<quantity>5621</quantity>
</Point>
<Point>
<position>19</position>
<quantity>6188</quantity>
</Point>
<Point>
<position>20</position>
<quantity>6663</quantity>
</Point>
<Point>
<position>21</position>
<quantity>7067</quantity>
</Point>
<Point>
<position>22</position>
<quantity>7045</quantity>
</Point>
<Point>
<position>23</position>
<quantity>6748</quantity>
</Point>
<Point>
<position>24</position>
<quantity>6450</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>11</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B12</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>2469</quantity>
</Point>
<Point>
<position>2</position>
<quantity>2320</quantity>
</Point>
<Point>
<position>3</position>
<quantity>2139</quantity>
</Point>
<Point>
<position>4</position>
<quantity>2182</quantity>
</Point>
<Point>
<position>5</position>
<quantity>2164</quantity>
</Point>
<Point>
<position>6</position>
<quantity>2116</quantity>
</Point>
<Point>
<position>7</position>
<quantity>2698</quantity>
</Point>
<Point>
<position>8</position>
<quantity>3162</quantity>
</Point>
<Point>
<position>9</position>
<quantity>3541</quantity>
</Point>
<Point>
<position>10</position>
<quantity>3056</quantity>
</Point>
<Point>
<position>11</position>
<quantity>2952</quantity>
</Point>
<Point>
<position>12</position>
<quantity>2624</quantity>
</Point>
<Point>
<position>13</position>
<quantity>2555</quantity>
</Point>
<Point>
<position>14</position>
<quantity>2299</quantity>
</Point>
<Point>
<position>15</position>
<quantity>1943</quantity>
</Point>
<Point>
<position>16</position>
<quantity>2074</quantity>
</Point>
<Point>
<position>17</position>
<quantity>2356</quantity>
</Point>
<Point>
<position>18</position>
<quantity>2257</quantity>
</Point>
<Point>
<position>19</position>
<quantity>3275</quantity>
</Point>
<Point>
<position>20</position>
<quantity>3855</quantity>
</Point>
<Point>
<position>21</position>
<quantity>4297</quantity>
</Point>
<Point>
<position>22</position>
<quantity>3889</quantity>
</Point>
<Point>
<position>23</position>
<quantity>3216</quantity>
</Point>
<Point>
<position>24</position>
<quantity>3064</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>12</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B14</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>42465</quantity>
</Point>
<Point>
<position>2</position>
<quantity>42542</quantity>
</Point>
<Point>
<position>3</position>
<quantity>42372</quantity>
</Point>
<Point>
<position>4</position>
<quantity>42362</quantity>
</Point>
<Point>
<position>5</position>
<quantity>42529</quantity>
</Point>
<Point>
<position>6</position>
<quantity>42427</quantity>
</Point>
<Point>
<position>7</position>
<quantity>42484</quantity>
</Point>
<Point>
<position>8</position>
<quantity>42399</quantity>
</Point>
<Point>
<position>9</position>
<quantity>41924</quantity>
</Point>
<Point>
<position>10</position>
<quantity>42379</quantity>
</Point>
<Point>
<position>11</position>
<quantity>42568</quantity>
</Point>
<Point>
<position>12</position>
<quantity>42542</quantity>
</Point>
<Point>
<position>13</position>
<quantity>42526</quantity>
</Point>
<Point>
<position>14</position>
<quantity>42445</quantity>
</Point>
<Point>
<position>15</position>
<quantity>42341</quantity>
</Point>
<Point>
<position>16</position>
<quantity>42447</quantity>
</Point>
<Point>
<position>17</position>
<quantity>42439</quantity>
</Point>
<Point>
<position>18</position>
<quantity>42419</quantity>
</Point>
<Point>
<position>19</position>
<quantity>42434</quantity>
</Point>
<Point>
<position>20</position>
<quantity>42400</quantity>
</Point>
<Point>
<position>21</position>
<quantity>42466</quantity>
</Point>
<Point>
<position>22</position>
<quantity>42473</quantity>
</Point>
<Point>
<position>23</position>
<quantity>42527</quantity>
</Point>
<Point>
<position>24</position>
<quantity>42560</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>13</mRID>
<businessType>A94</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B16</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>0</quantity>
</Point>
<Point>
<position>2</position>
<quantity>0</quantity>
</Point>
<Point>
<position>3</position>
<quantity>0</quantity>
</Point>
<Point>
<position>4</position>
<quantity>0</quantity>
</Point>
<Point>
<position>5</position>
<quantity>0</quantity>
</Point>
<Point>
<position>6</position>
<quantity>0</quantity>
</Point>
<Point>
<position>7</position>
<quantity>0</quantity>
</Point>
<Point>
<position>8</position>
<quantity>232</quantity>
</Point>
<Point>
<position>9</position>
<quantity>488</quantity>
</Point>
<Point>
<position>10</position>
<quantity>2217</quantity>
</Point>
<Point>
<position>11</position>
<quantity>5048</quantity>
</Point>
<Point>
<position>12</position>
<quantity>6989</quantity>
</Point>
<Point>
<position>13</position>
<quantity>7874</quantity>
</Point>
<Point>
<position>14</position>
<quantity>8167</quantity>
</Point>
<Point>
<position>15</position>
<quantity>7908</quantity>
</Point>
<Point>
<position>16</position>
<quantity>7330</quantity>
</Point>
<Point>
<position>17</position>
<quantity>6121</quantity>
</Point>
<Point>
<position>18</position>
<quantity>3956</quantity>
</Point>
<Point>
<position>19</position>
<quantity>1676</quantity>
</Point>
<Point>
<position>20</position>
<quantity>367</quantity>
</Point>
<Point>
<position>21</position>
<quantity>0</quantity>
</Point>
<Point>
<position>22</position>
<quantity>0</quantity>
</Point>
<Point>
<position>23</position>
<quantity>0</quantity>
</Point>
<Point>
<position>24</position>
<quantity>0</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>14</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B17</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>174</quantity>
</Point>
<Point>
<position>2</position>
<quantity>175</quantity>
</Point>
<Point>
<position>3</position>
<quantity>177</quantity>
</Point>
<Point>
<position>4</position>
<quantity>177</quantity>
</Point>
<Point>
<position>5</position>
<quantity>177</quantity>
</Point>
<Point>
<position>6</position>
<quantity>178</quantity>
</Point>
<Point>
<position>7</position>
<quantity>177</quantity>
</Point>
<Point>
<position>8</position>
<quantity>175</quantity>
</Point>
<Point>
<position>9</position>
<quantity>174</quantity>
</Point>
<Point>
<position>10</position>
<quantity>174</quantity>
</Point>
<Point>
<position>11</position>
<quantity>178</quantity>
</Point>
<Point>
<position>12</position>
<quantity>180</quantity>
</Point>
<Point>
<position>13</position>
<quantity>181</quantity>
</Point>
<Point>
<position>14</position>
<quantity>180</quantity>
</Point>
<Point>
<position>15</position>
<quantity>181</quantity>
</Point>
<Point>
<position>16</position>
<quantity>183</quantity>
</Point>
<Point>
<position>17</position>
<quantity>182</quantity>
</Point>
<Point>
<position>18</position>
<quantity>183</quantity>
</Point>
<Point>
<position>19</position>
<quantity>182</quantity>
</Point>
<Point>
<position>20</position>
<quantity>183</quantity>
</Point>
<Point>
<position>21</position>
<quantity>180</quantity>
</Point>
<Point>
<position>22</position>
<quantity>177</quantity>
</Point>
<Point>
<position>23</position>
<quantity>179</quantity>
</Point>
<Point>
<position>24</position>
<quantity>178</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>15</mRID>
<businessType>A93</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B18</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>764</quantity>
</Point>
<Point>
<position>2</position>
<quantity>618</quantity>
</Point>
<Point>
<position>3</position>
<quantity>606</quantity>
</Point>
<Point>
<position>4</position>
<quantity>519</quantity>
</Point>
<Point>
<position>5</position>
<quantity>465</quantity>
</Point>
<Point>
<position>6</position>
<quantity>496</quantity>
</Point>
<Point>
<position>7</position>
<quantity>535</quantity>
</Point>
<Point>
<position>8</position>
<quantity>586</quantity>
</Point>
<Point>
<position>9</position>
<quantity>563</quantity>
</Point>
<Point>
<position>10</position>
<quantity>659</quantity>
</Point>
<Point>
<position>11</position>
<quantity>546</quantity>
</Point>
<Point>
<position>12</position>
<quantity>429</quantity>
</Point>
<Point>
<position>13</position>
<quantity>378</quantity>
</Point>
<Point>
<position>14</position>
<quantity>240</quantity>
</Point>
<Point>
<position>15</position>
<quantity>306</quantity>
</Point>
<Point>
<position>16</position>
<quantity>186</quantity>
</Point>
<Point>
<position>17</position>
<quantity>215</quantity>
</Point>
<Point>
<position>18</position>
<quantity>272</quantity>
</Point>
<Point>
<position>19</position>
<quantity>263</quantity>
</Point>
<Point>
<position>20</position>
<quantity>256</quantity>
</Point>
<Point>
<position>21</position>
<quantity>270</quantity>
</Point>
<Point>
<position>22</position>
<quantity>216</quantity>
</Point>
<Point>
<position>23</position>
<quantity>163</quantity>
</Point>
<Point>
<position>24</position>
<quantity>112</quantity>
</Point>
</Period>
</TimeSeries>
<TimeSeries>
<mRID>16</mRID>
<businessType>A93</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B19</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T23:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>5097</quantity>
</Point>
<Point>
<position>2</position>
<quantity>5221</quantity>
</Point>
<Point>
<position>3</position>
<quantity>5466</quantity>
</Point>
<Point>
<position>4</position>
<quantity>5359</quantity>
</Point>
<Point>
<position>5</position>
<quantity>4794</quantity>
</Point>
<Point>
<position>6</position>
<quantity>4851</quantity>
</Point>
<Point>
<position>7</position>
<quantity>4970</quantity>
</Point>
<Point>
<position>8</position>
<quantity>4942</quantity>
</Point>
<Point>
<position>9</position>
<quantity>4854</quantity>
</Point>
<Point>
<position>10</position>
<quantity>4805</quantity>
</Point>
<Point>
<position>11</position>
<quantity>4646</quantity>
</Point>
<Point>
<position>12</position>
<quantity>4834</quantity>
</Point>
<Point>
<position>13</position>
<quantity>5007</quantity>
</Point>
<Point>
<position>14</position>
<quantity>5028</quantity>
</Point>
<Point>
<position>15</position>
<quantity>5236</quantity>
</Point>
<Point>
<position>16</position>
<quantity>5257</quantity>
</Point>
<Point>
<position>17</position>
<quantity>4701</quantity>
</Point>
<Point>
<position>18</position>
<quantity>4170</quantity>
</Point>
<Point>
<position>19</position>
<quantity>3579</quantity>
</Point>
<Point>
<position>20</position>
<quantity>3223</quantity>
</Point>
<Point>
<position>21</position>
<quantity>3090</quantity>
</Point>
<Point>
<position>22</position>
<quantity>3156</quantity>
</Point>
<Point>
<position>23</position>
<quantity>3223</quantity>
</Point>
<Point>
<position>24</position>
<quantity>3213</quantity>
</Point>
</Period>
</TimeSeries>
</GL_MarketDocument>
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

willemd wrote: Wednesday 06 March 2024 22:27 What is the purpose? Plans for any further processing? Just out of interest, for looking at the graph?
I dont have a special interest. Its rather a challenge to see what I can achieve with Domoticz. Till now I integrated two plugins in my Domoticz which were "ready for use".

I mainly want to monitor how much solar and wind power is generated in France compared with nuclear.

PS: I have made a shortcut of the ENTSOE dashboard in my web browser so that I can monitor it regurarly (the toggles allow me to select only what to see so is quite usefull).

Willy
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Wednesday 06 March 2024 20:58

If I use the first case (all data) a single device will hold all this data?

If I look into your script I have the impression that retrieving the XML data into Domoticz counters will not be easy because not all production types have 24 data values (ex. hydro generation and hydro pumping). What do you think?

I think you would need to use a separate device for each production type.

And I agree, if you don't know the number of data values for a production type, then you can't use the for-loop with fixed 24 data points.
I have not figured out a way to loop through a JSON or XML data set in dzVents with variable number of data points. I would expect the possibility exists since this exists in all programming languages but I have not found it yet. I also don't understand the loop iterators examples from the documentation.

Maybe others to the rescue?
willemd
Posts: 631
Joined: Saturday 21 September 2019 17:55
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.1
Location: The Netherlands
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by willemd »

Wilop91 wrote: Wednesday 06 March 2024 23:05
willemd wrote: Wednesday 06 March 2024 22:27 What is the purpose? Plans for any further processing? Just out of interest, for looking at the graph?
I dont have a special interest. Its rather a challenge to see what I can achieve with Domoticz. Till now I integrated two plugins in my Domoticz which were "ready for use".

I mainly want to monitor how much solar and wind power is generated in France compared with nuclear.

PS: I have made a shortcut of the ENTSOE dashboard in my web browser so that I can monitor it regurarly (the toggles allow me to select only what to see so is quite usefull).

Willy
I would use separate devcies then for each sensor and use dashticz to combine them in one graph. You can also do division of the values to show a ratio for example.
Wilop91
Posts: 44
Joined: Tuesday 05 March 2024 17:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.4
Location: France
Contact:

Re: How to retrieve ENTSOE electrical consumption of France?

Post by Wilop91 »

willemd wrote: Thursday 07 March 2024 9:46 And I agree, if you don't know the number of data values for a production type, then you can't use the for-loop with fixed 24 data points.
I have not figured out a way to loop through a JSON or XML data set in dzVents with variable number of data points. I would expect the possibility exists since this exists in all programming languages but I have not found it yet. I also don't understand the loop iterators examples from the documentation.
Hello willemd
Thanks for your reply
Looking more in detail the XML file I see that for the cases where there are no 24 values, the start and end date indicates the time interval - see extract below - in this example 2 values at 00H and 01H. But I agree it becomes complex to handle.

Code: Select all

<mRID>5</mRID>
<businessType>A01</businessType>
<objectAggregation>A08</objectAggregation>
<inBiddingZone_Domain.mRID codingScheme="A01">10YFR-RTE------C</inBiddingZone_Domain.mRID>
<quantity_Measure_Unit.name>MAW</quantity_Measure_Unit.name>
<curveType>A01</curveType>
<MktPSRType>
<psrType>B10</psrType>
</MktPSRType>
<Period>
<timeInterval>
<start>2024-03-04T23:00Z</start>
<end>2024-03-05T01:00Z</end>
</timeInterval>
<resolution>PT60M</resolution>
<Point>
<position>1</position>
<quantity>737</quantity>
</Point>
<Point>
<position>2</position>
<quantity>400</quantity>
</Point>
</Period>
</TimeSeries>
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest