# Integração OMIE: preços horários, diários, mecanismo de ajuste

**URL:** <https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668>\
**Category:** Partilha de Projectos\
**Tags:** energia, omie\
**Created:** [19 Fevereiro , 2023 23:05 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668 "2023-02-19T23:05:56Z")\
**Posts on this page:** 20\
**Page:** 10

<div class="post-metadata">

**Author:** ![JeffersM](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/j/838e76/32.png) [@JeffersM](https://forum.cpha.pt/u/JeffersM)\
**Post date:** [6 Junho , 2023 14:30 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/184 "2023-06-06T14:30:06Z")

</div>

> [@JeffersM](#):
>
> adicionou a TAR ccheias e a TAR de ponta às partes today\_hours e tomorrow\_hours do código.

Acabei de adicionar o TAR cheias e o TAR de ponta às partes today\_hours e tomorrow\_hours do código e corrigi uma gralha onde tinha escrito Tar\_ponta em vez de TAR\_ponta. Ainda não estou a utilizar o ApexCharts, pelo que não testei essa parte do código. E acabei de encontrar e acrescentar dois “}” em falta neste post.  
Podes experimentar este código e, se gostares, adicioná-lo à Wiki. Podes fazer as alterações que quiseres.

```auto

template:
  - binary_sensor:
    - name: "Is DST"
      state: "{{ now().timetuple().tm_isdst == True }}"
 
  - sensor:        
    - unique_id: coopernico_spot_price_trihorario
      unit_of_measurement: '€/MWh'
      state_class: measurement
      state: >
        {% set PM = states('sensor.omie_spot_price_pt')|float -%}
        {% set MAJ = states('sensor.omie_adjustment_price_pt')|float -%}
        {% set CGS = 4 -%}
        {% set k = 10 -%}
        {% set FP = 0.15 -%}
        {% set TAR_vazio = -118.5 -%}
        {% set TAR_ponta = -001.8 -%}
        {% set TAR_cheias = -106.9 -%}

        {% set t = now().hour + (now().minute/60) | round(2) %}
          {% if t < 8 or t >= 22 %}
            {% set TAR = TAR_vazio %}
          {% else %}       
            {% if "Is DST" == False %}
              {% set TAR = TAR_ponta if (t >= 9 and t < 10.5) or (t >= 18 and t < 20.5) else TAR_cheias -%}
            {% else %}   
              {% set TAR = TAR_ponta if (t >= 10.5 and t < 13) or (t >= 19.5 and t < 21) else TAR_cheias -%}        
            {% endif %}
          {% endif %}

        {{ ((PM + CGS + k)*(1 + FP) + MAJ + TAR) | round(2) }}
        
      attributes:
        friendly_name: "Coopérnico Base (tarifário tri-horário)"
        formula: "(PM+CGS+K)*(1+FP)+MIBEL+TAR"
        PM: "{{ states('sensor.omie_spot_price_pt')|float }}"
        MIBEL: "{{ states('sensor.omie_adjustment_price_pt')|float }}"
        CGS: "{{ 4 | float }}"
        k: "{{ 10 | float }}"
        FP: "{{ 0.15 | float }}"
        TAR_vazio: "{{ TAR_vazio | float }}"
        TAR_ponta: "{{ TAR_ponta | float }}"
        TAR_cheias: "{{ TAR_cheias | float }}"
        TAR: "{{ TAR | float }}"
        
        today_hours: >
            {% set CGS = 4 -%}
            {% set k = 10 -%}
            {% set FP = 0.15 -%}
            {% set TAR_vazio = -118.5 -%}
            {% set TAR_ponta = -001.8 -%}
            {% set TAR_cheias = -106.9 -%}
                        
            {% set ns = namespace(hourly_data=[]) %}
            {% for h, PM in state_attr('sensor.omie_spot_price_pt', 'today_hours').items() -%}
              {% set MAJ = state_attr('sensor.omie_adjustment_price_pt', 'today_hours')[h] -%}
              {% set t = now().hour + (now().minute/60) | round(2) %}
                {% if t < 8 or t >= 22 %}
                  {% set TAR = TAR_vazio %}
                {% else %}       
                  {% if "Is DST" == False %}
                    {% set TAR = TAR_ponta if (t >= 9 and t < 10.5) or (t >= 18 and t < 20.5) else TAR_cheias -%}
                  {% else %}   
                    {% set TAR = TAR_ponta if (t >= 10.5 and t < 13) or (t >= 19.5 and t < 21) else TAR_cheias -%}        
                  {% endif %}
                {% endif %}              
            
              {% if PM == None or MAJ == None %}
                {% set price=PM %}
              {% else %}
                {% set price=((PM + CGS + k)*(1 + FP) + MAJ + TAR) | round(2) %}
              {% endif %}
              {% set ns.hourly_data=ns.hourly_data + [(h.isoformat(), price)] %}
            {% endfor -%}
            {{ dict(ns.hourly_data) }}
        tomorrow_hours: >
            {% set CGS = 4 -%}
            {% set k = 10 -%}
            {% set FP = 0.15 -%}
            {% set TAR_vazio = -118.5 -%}
            {% set TAR_ponta = -001.8 -%}
            {% set TAR_cheias = -106.9 -%}
            
            {% set ns = namespace(hourly_data=[]) %}
            {% for h, PM in state_attr('sensor.omie_spot_price_pt', 'tomorrow_hours').items() -%}
              {% set MAJ = state_attr('sensor.omie_adjustment_price_pt', 'tomorrow_hours')[h] -%}
              {% set t = now().hour + (now().minute/60) | round(2) %}
                {% if t < 8 or t >= 22 %}
                  {% set TAR = TAR_vazio %}
                {% else %}       
                  {% if "Is DST" == False %}
                    {% set TAR = TAR_ponta if (t >= 9 and t < 10.5) or (t >= 18 and t < 20.5) else TAR_cheias -%}
                  {% else %}   
                    {% set TAR = TAR_ponta if (t >= 10.5 and t < 13) or (t >= 19.5 and t < 21) else TAR_cheias -%}        
                  {% endif %}
                {% endif %}

              {% if PM == None or MAJ == None %}
                {% set price=PM %}
              {% else %}
                {% set price=((PM + CGS + k)*(1 + FP) + MAJ + TAR) | round(2) %}
              {% endif %}
              {% set ns.hourly_data=ns.hourly_data + [(h.isoformat(), price)] %}
            {% endfor -%}
            {{ dict(ns.hourly_data) }}

```

---

<div class="post-metadata">

**Author:** ![tretabyte](https://forum.cpha.pt/user_avatar/forum.cpha.pt/tretabyte/32/12623_2.png) [@tretabyte](https://forum.cpha.pt/u/tretabyte)\
**Post date:** [6 Junho , 2023 14:31 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/185 "2023-06-06T14:31:46Z")

</div>

> [@santossrg](#):
>
> Já agora, em relação à Luzboa, aparentemente o SAJ atual é 6,5.

isto ja é oficial?  
se sim é preciso reconfigurar os templates (atualizar a formula)

---

<div class="post-metadata">

**Author:** ![JeffersM](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/j/838e76/32.png) [@JeffersM](https://forum.cpha.pt/u/JeffersM)\
**Post date:** [9 Junho , 2023 08:08 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/186 "2023-06-09T08:08:35Z")

</div>

Verifico que a componente PM do preço é actualizada cerca de 2 segundos após a hora, enquanto a componente TAR é actualizada à hora ou meia hora. Isto leva a que o gráfico do sensor seja ultrapassado ou subestimado. Para compensar esta situação, adicionei um atraso à actualização da TAR no meu modelo de sensor. Não fiz a actualização na parte do ApexChart do modelo, uma vez que ainda não o estou a utilizar e não sei se causaria algum problema com esse gráfico.

 ![Screenshot from 2023-06-09 08-59-30 marked up](https://forum.cpha.pt/uploads/default/original/2X/b/b2c7d8c18e573572cbb0339ea81667aeaa1f8758.png)

código para tri-horário:

```auto
        {% set D = (1.9/3600) | round(5) %}
        {% set t = now().hour + (now().minute/60 + now().second/3600 - D) | round(5) %}
        {% if t < 8 or t >= 22 %}
            {% set TAR = TAR_vazio %}
        {% else %}       
          {% if "Is DST" == False %}
            {% set TAR = TAR_ponta if (t >= 9 and t < 10.5) or (t >= 18 and t < 20.5) else TAR_cheias -%}
          {% else %}   
            {% set TAR = TAR_ponta if (t >= 10.5 and t < 13) or (t >= 19.5 and t < 21) else TAR_cheias -%}        
          {% endif %}
        {% endif %}

```

 ![image](https://forum.cpha.pt/uploads/default/original/2X/5/5866f4e3b732fc111cfc56d536eb2cf9158f249c.png)

---

<div class="post-metadata">

**Author:** ![luuuis](https://forum.cpha.pt/user_avatar/forum.cpha.pt/luuuis/32/14755_2.png) [@luuuis](https://forum.cpha.pt/u/luuuis)\
**Post date:** [9 Junho , 2023 09:01 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/187 "2023-06-09T09:01:05Z")

</div>

> [@JeffersM](#):
>
> Verifico que a componente PM do preço é actualizada cerca de 2 segundos após a hora, enquanto a componente TAR é actualizada à hora ou meia hora.

O desfasamento da hora é propositado para não estarem todos os nossos Home Assistants a aceder ao OMIE exactamente no mesmo momento.

O valor do desfasamento (entre 0 e 3 segundos) [é escolhido cada vez que a integração arranca](https://github.com/luuuis/hass_omie/blob/61b9020387067d7b7239396c296d48a63a3f7193/custom_components/omie/coordinator.py#LL66C24-L66C44) portanto o teu `1.9` não vai condizer com o desfasamento da próxima vez que reiniciares o Home Assistant.

Acho que se pode melhorar isto porque o desfasamento só é necessário no momento em que se vai ler os dados do dia seguinte, geralmente pelas 13:30, mas até agora ainda não incomodou ninguém. 🙂

---

<div class="post-metadata">

**Author:** ![euricogabriel](https://forum.cpha.pt/user_avatar/forum.cpha.pt/euricogabriel/32/9273_2.png) [@euricogabriel](https://forum.cpha.pt/u/euricogabriel)\
**Post date:** [9 Junho , 2023 14:14 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/188 "2023-06-09T14:14:53Z")

</div>

Alguém com possibilidade de dar uma ajuda com REPSOL, bi-horário semanal?

---

<div class="post-metadata">

**Author:** ![Pedro\_Valente](https://forum.cpha.pt/user_avatar/forum.cpha.pt/pedro_valente/32/11184_2.png) [@Pedro\_Valente](https://forum.cpha.pt/u/Pedro_Valente)\
**Post date:** [16 Junho , 2023 12:43 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/190 "2023-06-16T12:43:25Z")

</div>

sim está no simulador deles no site

---

<div class="post-metadata">

**Author:** ![Jack\_Santoro](https://forum.cpha.pt/user_avatar/forum.cpha.pt/jack_santoro/32/15045_2.png) [@Jack\_Santoro](https://forum.cpha.pt/u/Jack_Santoro)\
**Post date:** [20 Junho , 2023 05:00 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/192 "2023-06-20T05:00:22Z")

</div>

@luuuis acho que o valor retirado que esta a ser retirado do site da OMIE é da previsão, devido a necessidade da rede (variação de consumo) o preço também varia. Para quem quer utilizar a integração para calcular valores do consumo o preço medio ao fim de cada hora deve ser a ponderada para calcular custos de consumo.

> **[Preço mínimo, máximo e médio ponderado por contrato | OMIE](https://www.omie.es/pt/market-results/daily/continuous-intradaily-market/price-per-contract)**
>
> A OMIE administra a totalidade dos mercados (diários e intradiários) para toda a Península Ibérica, e seu modelo operacional é o mesmo de muitos outros mercados europeus.

---

<div class="post-metadata">

**Author:** ![luuuis](https://forum.cpha.pt/user_avatar/forum.cpha.pt/luuuis/32/14755_2.png) [@luuuis](https://forum.cpha.pt/u/luuuis)\
**Post date:** [20 Junho , 2023 09:12 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/193 "2023-06-20T09:12:46Z")

</div>

@Jack_Santoro antes de mais bem vindo ao fórum e obrigado por vires dar o teu contributo. 🙂

Eu já tinha lido sobre o mercado intradiário, cheguei até a fazer [uma cábula](https://github.com/luuuis/hass_omie/blob/61b9020387067d7b7239396c296d48a63a3f7193/custom_components/omie/coordinator.py#L27-L43) para o caso de querer incorporar essa informação mas na altura não cheguei a perceber se no final de contas as diferenças de preço seriam significativas para o que se quer aqui, que é ter uma estimativa dos custos finais.

Os dados que agora estás a realçar parece que são do mercado intradiário contínuo. Esses dados (da média ponderada) podem ser usados tal e qual ou é necessária alguma transformação? Por exemplo, combinar com os resultados das outras sessões (diário e intradiário).

 ![Preço mínimo, máximo e médio ponderado por contrato OMIE 2023-06-20 10-04-01](https://forum.cpha.pt/uploads/default/original/2X/a/abb12f27429fe2d0a4de50206e0c8fddfcb681aa.jpeg)

---

<div class="post-metadata">

**Author:** ![Jack\_Santoro](https://forum.cpha.pt/user_avatar/forum.cpha.pt/jack_santoro/32/15045_2.png) [@Jack\_Santoro](https://forum.cpha.pt/u/Jack_Santoro)\
**Post date:** [20 Junho , 2023 11:16 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/194 "2023-06-20T11:16:19Z")

</div>

[@luuuis](https://forum.cpha.pt/u/luuuis) Obrigado e parabéns pela integração que ajuda muita gente com eu. Acho que o valor “casado” da oferta e procura é a media ponderada sem necessidade de ajuste, pelo o que li parece ser o valor final para Portugal (é necessário selecionar PT), o mercado intradiário contínuo tem em conta a limitação da interligação. Podemos ter o preço MWh superior a Espanha porque não temos capacidade nas interligações para importar, uma situação que pode obrigar aumentar a produção de origem térmico (gás) e não importar produção solar que deve resultar num preço MWh superior.

Cumps

---

<div class="post-metadata">

**Author:** ![Thy\_Hunter](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/t/90ced4/32.png) [@Thy\_Hunter](https://forum.cpha.pt/u/Thy_Hunter)\
**Post date:** [20 Junho , 2023 12:14 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/195 "2023-06-20T12:14:09Z")

</div>

Para quem ainda não tiver conhecimento…

Novas TAR a partir de 1 de Julho

 ![image](https://forum.cpha.pt/uploads/default/original/2X/f/f7a41ea3e0cf0577e6a256d3ba3d5e3b19ec289e.png)

---

<div class="post-metadata">

**Author:** ![santossrg](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@santossrg](https://forum.cpha.pt/u/santossrg)\
**Post date:** [22 Junho , 2023 10:59 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/196 "2023-06-22T10:59:53Z")

</div>

Isto é um aumento gigante, ou estou a ver mal?

---

<div class="post-metadata">

**Author:** ![Thy\_Hunter](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/t/90ced4/32.png) [@Thy\_Hunter](https://forum.cpha.pt/u/Thy_Hunter)\
**Post date:** [22 Junho , 2023 11:07 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/197 "2023-06-22T11:07:56Z")

</div>

Pois, na Tarifa Simples são 0,0837€ / KWh de diferença…

---

<div class="post-metadata">

**Author:** ![santossrg](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@santossrg](https://forum.cpha.pt/u/santossrg)\
**Post date:** [22 Junho , 2023 11:23 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/198 "2023-06-22T11:23:36Z")

</div>

@Thy_Hunter falta aí um 0 nas casas decimais. Mas sim, é brutal o aumento.

---

<div class="post-metadata">

**Author:** ![Thy\_Hunter](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/t/90ced4/32.png) [@Thy\_Hunter](https://forum.cpha.pt/u/Thy_Hunter)\
**Post date:** [22 Junho , 2023 13:44 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/199 "2023-06-22T13:44:51Z")

</div>

Pois falta! 😬

Corrigido

---

<div class="post-metadata">

**Author:** ![luuuis](https://forum.cpha.pt/user_avatar/forum.cpha.pt/luuuis/32/14755_2.png) [@luuuis](https://forum.cpha.pt/u/luuuis)\
**Post date:** [2 Julho , 2023 16:36 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/200 "2023-07-02T16:36:11Z")

</div>

Actualizei os templates para as novas TAR de 1 de Julho. Avisem se me escapou alguma coisa.

---

<div class="post-metadata">

**Author:** ![santossrg](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@santossrg](https://forum.cpha.pt/u/santossrg)\
**Post date:** [14 Julho , 2023 08:48 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/201 "2023-07-14T08:48:44Z")

</div>

Obrigado @luuuis

Esses templates estão onde?  
Só achei isto: [https://gist.github.com/luuuis/ee29115f4f48719bb355eea0c8a86efb](https://gist.github.com/luuuis/ee29115f4f48719bb355eea0c8a86efb)

---

<div class="post-metadata">

**Author:** ![jsantosdias](https://forum.cpha.pt/user_avatar/forum.cpha.pt/jsantosdias/32/14291_2.png) [@jsantosdias](https://forum.cpha.pt/u/jsantosdias)\
**Post date:** [14 Julho , 2023 09:56 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/202 "2023-07-14T09:56:30Z")

</div>

Nas Wiki:

> **[Home](https://github.com/luuuis/hass_omie/wiki)**
>
> OMIE Home Assistant Integration. Contribute to luuuis/hass\_omie development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![santossrg](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@santossrg](https://forum.cpha.pt/u/santossrg)\
**Post date:** [14 Julho , 2023 11:50 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/203 "2023-07-14T11:50:43Z")

</div>

Obrigado @jsantosdias

---

<div class="post-metadata">

**Author:** ![dgomes](https://forum.cpha.pt/user_avatar/forum.cpha.pt/dgomes/32/42_2.png) [@dgomes](https://forum.cpha.pt/u/dgomes)\
**Post date:** [3 Setembro , 2023 21:52 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/204 "2023-09-03T21:52:01Z")

</div>

Bom trabalho @luuuis !

Falta acrescentar um logo em [https://github.com/home-assistant/brands](https://github.com/home-assistant/brands) 😉

---

<div class="post-metadata">

**Author:** ![santossrg](https://forum.cpha.pt/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@santossrg](https://forum.cpha.pt/u/santossrg)\
**Post date:** [6 Setembro , 2023 23:01 UTC](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668/205 "2023-09-06T23:01:00Z")

</div>

Atualizei o HA para a versão 2023.9.0 e a integração OMIE está com erros.

Mais alguém?

 ![Screenshot 2023-09-06 at 23.57.02](https://forum.cpha.pt/uploads/default/original/2X/5/587bde32b8bf505f9d901a59739d319884a99210.png)

[Página anterior](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668.md?page=9)

[Próxima página](https://forum.cpha.pt/t/integracao-omie-precos-horarios-diarios-mecanismo-de-ajuste/11668.md?page=11)
