# Arquitetura

A arquitetura da OmniYield foi projetada para ser modular, agnóstica em relação à cadeia e altamente escalável.

Nosso objetivo principal é criar uma camada de rendimento agnóstica em relação à cadeia que maximize os retornos ajustados ao risco para os usuários em todo o DeFi. Para isso, o sistema emprega ampla análise de dados, algoritmos avançados fora da cadeia, protocolos rígidos de segurança, regras de diversificação e uma arquitetura que abstrai a complexidade da interação entre cadeias.

### Principais Componentes da Arquitetura

<details>

<summary><strong>Vaults</strong></summary>

A porta de entrada do usuário para a OmniYield.

Esses contratos inteligentes compatíveis com ERC-4626 gerenciam com segurança os depósitos, recebem relatórios das estratégias e processam saques.

Eles servem como a interface principal que coordena os fundos dos usuários com as Estratégias subjacentes.

</details>

<details>

<summary><strong>Camada de Execução (Solver)</strong></summary>

A camada de inteligência da OmniYield.

Esses sistemas automatizados analisam constantemente protocolos DeFi em várias cadeias, identificam as melhores oportunidades de rendimento, avaliam riscos e determinam a alocação de ativos para os Vaults.

Esse processamento é calculado fora da cadeia para maior eficiência — apenas os resultados são implementados onchain, evitando que as estratégias da OmniYield sejam imitadas.

</details>

<details>

<summary><strong>Estratégias</strong></summary>

Associado a cada Vault há pelo menos um contrato de Estratégia.

Esse componente traduz as decisões do solver em ações. Ele lida com as complexidades técnicas da movimentação de ativos, incluindo swaps de tokens, provisão de liquidez, lending, staking etc.

</details>

<details>

<summary><strong>Destinos</strong></summary>

Os protocolos DeFi específicos, pools de liquidez ou farms de rendimento onde os ativos do vault são finalmente alocados.

</details>

<details>

<summary><strong>Infraestrutura de Mensagens Entre Cadeias</strong></summary>

A tecnologia fundamental que possibilita recursos entre cadeias, facilitando a comunicação e as transferências de ativos entre diferentes blockchains.

</details>

### O Ciclo de Vida dos Ativos

Entender o fluxo dos ativos ajuda a esclarecer a operação do sistema:

{% stepper %}
{% step %}
**Depósito**

Um usuário deposita um único tipo de ativo (por exemplo, USDC) no Vault correspondente da OmniYield em qualquer cadeia suportada. Os ativos depositados são movidos para o contrato do Vault no hub da Arbitrum e inicialmente ficam lá inativos.
{% endstep %}

{% step %}
**Rebalanceamento Entre Cadeias**

* O componente fora da cadeia (Solver autônomo) monitora os saldos do vault e as condições de mercado. Assim que um determinado limite de ativos ociosos é atingido, ou durante ciclos periódicos de otimização, ele determina a alocação ideal para as Estratégias atuais em todas as cadeias integradas e propõe um plano de rebalanceamento. Se a proposta atender aos requisitos de segurança e desempenho, ela inicia um rebalanceamento (por exemplo, movendo X quantidade de USDC para a Estratégia A na Cadeia Y) por meio do contrato do Vault no hub da Arbitrum.&#x20;
* Usando LayerZero e Axelar, uma mensagem contendo instruções de rebalanceamento é enviada do hub para o contrato do Vault relevante nas cadeias de destino.
* O sistema executa as etapas necessárias (como bridging, swaps, depósitos etc.) para rebalancear.
* A alocação atualizada é registrada, e confirmações/atualizações de status são enviadas de volta ao hub da Arbitrum por meio da camada de mensagens. Esse processo pode envolver mover fundos ociosos do hub para uma Estratégia ou transferir fundos entre diferentes Estratégias para buscar melhores rendimentos.
  {% endstep %}

{% step %}
**Auto-Compounding e Relatórios Consolidados**

* Os contratos de Estratégia reivindicam periodicamente as recompensas obtidas dos protocolos de destino, convertem-nas no ativo base do vault (por exemplo, USDC) e as reinvestem automaticamente. Esse processo é orquestrado por Keepers autorizados.&#x20;
* Os dados de desempenho, incluindo as recompensas geradas por essas Estratégias em todas as cadeias suportadas, são continuamente reportados de volta ao hub da Arbitrum. As recompensas são adicionadas ao valor total do vault, compostando automaticamente os retornos dos depositantes.
  {% endstep %}

{% step %}
**Saque**

* Os saques não ficam limitados à cadeia do depósito; os usuários podem iniciar uma solicitação de saque a qualquer momento em qualquer cadeia suportada (**não precisa ser a mesma cadeia usada para o depósito**).
* Uma taxa de performance de 9% é calculada com base no lucro gerado pelo depósito de um usuário em todas as Estratégias e cadeias subjacentes.
* A solicitação é encaminhada para o hub da Arbitrum. Se o Vault tiver fundos ociosos suficientes (ativos não alocados ativamente em Estratégias), o saque é processado imediatamente.
* Se o Vault não tiver fundos ociosos suficientes, o hub sinaliza para as Estratégias sacarem o valor necessário. Ele prioriza saques de Estratégias em que o impacto no rendimento geral (APR) seja minimizado. Esse processo pode levar um pouco mais de tempo, dependendo dos protocolos subjacentes.
  {% endstep %}

{% step %}
**Resgate**

* Assim que houver liquidez suficiente no Vault, o usuário pode resgatar o saque. Ao resgatar, os ativos correspondentes são transferidos para a carteira do usuário por meio da infraestrutura entre cadeias.
  {% endstep %}
  {% endstepper %}

### Arquitetura Entre Cadeias

A infraestrutura da OmniYield é construída sobre uma robusta arquitetura hub-and-spoke:&#x20;

* **Hub:** Utilizamos a Arbitrum como nosso hub operacional central (a "main chain"). É aqui que a lógica central, os cálculos complexos e a gestão geral do estado do protocolo OmniYield residem principalmente.
* **Spokes:** Todas as demais blockchains suportadas funcionam como ‘spoke chains’ ou ‘side chains’. Essas são as redes de onde os depósitos dos usuários podem se originar e onde muitas das Estratégias de rendimento subjacentes são implantadas. Elas atuam principalmente como pontos finais de execução, recebendo instruções do Hub.

<figure><img src="https://1831912084-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcMcq7CdPxVFPVJMUzlcn%2Fuploads%2FBtawLgOlAjrD8wyj0BEj%2Fimage.avif?alt=media&#x26;token=d98a07d3-6b84-4c1b-bab0-3e2c1ed7870d" alt=""><figcaption></figcaption></figure>

#### **Fluxo de Comunicação:**

{% stepper %}
{% step %}
**Agregação**

Quando uma decisão de rebalanceamento é tomada ou ações dos usuários (como depósitos/saques que exigem movimentação entre cadeias) ocorrem, mensagens entre cadeias são geradas e transmitidas com segurança das spoke chains para o hub da Arbitrum.
{% endstep %}

{% step %}
**Cálculo**

O Hub processa essas mensagens recebidas, realiza os cálculos necessários (como otimizar a alocação de ativos entre todos os spokes, calcular o desempenho geral do vault, consolidar taxas) e toma decisões estratégicas com base em sua visão global do sistema.
{% endstep %}

{% step %}
**Distribuição**

Depois que as decisões são tomadas, as instruções necessárias e os dados da transação são distribuídos de volta da Arbitrum para os contratos inteligentes relevantes nas spoke chains para execução (por exemplo, depositar fundos em uma Estratégia específica em uma rede diferente).
{% endstep %}
{% endstepper %}

{% hint style="success" %}
Esse design modular permite:

* **Lógica centralizada, execução descentralizada**\
  Esse modelo garante consistência de dados, pois o hub da Arbitrum atua como a única fonte da verdade. A alocação real de capital ocorre nas spoke chains, aproveitando as oportunidades únicas que cada cadeia oferece.
* **Modularidade e extensibilidade**\
  Novas cadeias, ativos, estratégias e destinos podem ser integrados de forma plug-and-play com mudanças mínimas na base de código existente.\
  Isso garante uma baixa superfície de ataque ao mesmo tempo em que facilita o desenvolvimento de produtos adicionais. Para aprimorar ainda mais sua robustez e funcionalidade, o Protocolo OmniYield se integra a vários primitivos e infraestruturas DeFi, proporcionando a melhor experiência do usuário e permitindo uma interação fluida com outras ferramentas financeiras.
  {% endhint %}

### Comunicação Entre Cadeias

A operação do nosso modelo hub-and-spoke em inúmeras blockchains é possibilitada pelo uso dos principais provedores de mensagens entre cadeias: LayerZero e Axelar (e potencialmente outros, adaptados para tokens/cadeias/funções específicos no futuro).&#x20;

O LayerZero permite mensagens leves e eficientes, garantindo latência mínima e interoperabilidade sem confiança entre as redes suportadas. O Axelar complementa isso com roteamento de alto nível e entrega segura de mensagens generalizadas entre cadeias.

* **A Espinha Dorsal da Comunicação:** Esses protocolos atuam como a infraestrutura de comunicação segura e confiável que conecta nosso Hub (Arbitrum) a todas as chains Spoke. Eles fornecem os caminhos essenciais para transmitir dados e instruções entre as fronteiras das blockchains. Todo o encaminhamento, a validação e a liquidação das mensagens são realizados por meio das vias de mensagens seguras desses provedores.
* **Facilitando Operações Principais:** LayerZero e Axelar transmitem mensagens críticas necessárias para as funções centrais. Isso inclui:
  * Notificar o Hub sobre novos depósitos feitos nas spoke chains.
  * Encaminhar solicitações de saque de usuários nas spoke chains para o Hub para processamento.
  * Enviar comandos do Hub para contratos de estratégia nas spoke chains para executar depósitos, saques ou rebalanceamentos.
  * Relatar o rendimento gerado, métricas de desempenho e dados de taxas das estratégias nas spoke chains de volta ao Hub.

### Relatórios Consolidados de Taxas

Em configurações típicas de múltiplas cadeias, cada cadeia frequentemente atua como um silo com lógica e relatórios de desempenho isolados. A OmniYield adota uma abordagem radicalmente diferente. Acreditamos que nosso ecossistema deve operar como um único protocolo unificado, não como uma coleção fragmentada de implantações específicas por cadeia.

Embora a OmniYield gere taxas a partir de estratégias de rendimento operando em inúmeras cadeias. O protocolo implementa relatórios consolidados de taxas, um processo em que os dados de geração de taxas de todas as cadeias suportadas são agregados, normalizados e computados na Arbitrum (o hub).&#x20;

{% hint style="success" %}
Isso permite:

* **Experiência de usuário flexível:** Os usuários não precisam se preocupar com incentivos inconsistentes. Eles podem depositar na cadeia de sua preferência sabendo que as taxas, as oportunidades de rendimento e as recompensas permanecem consistentes em todo o ecossistema da OmniYield.
* **Tokenomics compartilhada:** Todas as taxas do protocolo, independentemente da cadeia de origem, contribuem para o mesmo modelo global de receita.
* **Métricas transparentes:** Relatórios unificados eliminam discrepâncias e melhoram a auditabilidade.
  {% endhint %}
