> For the complete documentation index, see [llms.txt](https://docs.omniyield.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.omniyield.finance/it/omniyield/architettura.md).

# Architettura

L'architettura di OmniYield è progettata per essere modulare, agnostica rispetto alla chain e altamente scalabile.

Il nostro obiettivo principale è creare un livello di rendimento agnostico rispetto alla chain che massimizzi i rendimenti corretti per il rischio per gli utenti in tutto il DeFi. Per raggiungere questo obiettivo, il sistema impiega un'ampia analisi dei dati, algoritmi avanzati off-chain, rigidi protocolli di sicurezza, regole di diversificazione e un'architettura che astrae la complessità dell'interazione cross-chain.&#x20;

### Componenti architetturali chiave

<details>

<summary><strong>Vault</strong></summary>

Il gateway dell'utente verso OmniYield.

Questi smart contract conformi a ERC-4626 gestiscono in modo sicuro i depositi, ricevono i report dalle strategie ed elaborano i prelievi.

Fungono da interfaccia principale che coordina i fondi degli utenti con le Strategie sottostanti.

</details>

<details>

<summary><strong>Livello di esecuzione (Solver)</strong></summary>

Il livello di intelligenza di OmniYield.

Questi sistemi automatizzati analizzano costantemente i protocolli DeFi tra diverse chain, identificano le opportunità di rendimento ottimali, valutano i rischi e determinano l'allocazione degli asset per i Vault.

Questa elaborazione viene calcolata off-chain per efficienza: solo i risultati vengono implementati onchain, impedendo che le strategie di OmniYield vengano imitate.

</details>

<details>

<summary><strong>Strategie</strong></summary>

A ogni Vault è collegato almeno un contratto Strategy.

Questo componente traduce le decisioni del solver in azioni. Gestisce le complessità tecniche dello spostamento degli asset, inclusi swap di token, fornitura di liquidità, lending, staking, ecc.

</details>

<details>

<summary><strong>Destinazioni</strong></summary>

I protocolli DeFi specifici, i pool di liquidità o i yield farm in cui gli asset del vault vengono infine impiegati.

</details>

<details>

<summary><strong>Infrastruttura di messaggistica cross-chain</strong></summary>

La tecnologia fondamentale che abilita le funzionalità cross-chain, facilitando la comunicazione e i trasferimenti di asset tra diverse blockchain.

</details>

### Il ciclo di vita degli asset

<div data-with-frame="true"><figure><img src="/files/c1f3c2045edd29df8ff51d03d1e89016f79ddc42" alt=""><figcaption></figcaption></figure></div>

Comprendere il flusso degli asset aiuta a chiarire il funzionamento del sistema:

{% stepper %}
{% step %}
**Deposito**

Un utente deposita un singolo tipo di asset (ad es. USDC) nel corrispondente Vault di OmniYield su qualsiasi chain supportata. Gli asset depositati vengono spostati nel contratto Vault sull'hub Arbitrum e inizialmente rimangono inattivi lì.
{% endstep %}

{% step %}
**Ribilanciamento cross-chain**

* Il componente off-chain (Solver autonomo) monitora i saldi del vault e le condizioni di mercato. Una volta raggiunta una certa soglia di asset inattivi, o durante cicli periodici di ottimizzazione, determina l'allocazione ottimale per le Strategie correnti tra le chain integrate e propone un piano di ribilanciamento. Se la proposta soddisfa i vincoli di sicurezza e performance, avvia un ribilanciamento (ad es. spostando una quantità X di USDC alla Strategy A sulla Chain Y) tramite il contratto Vault sull'hub Arbitrum.&#x20;
* Utilizzando LayerZero e Axelar, un messaggio contenente le istruzioni di ribilanciamento viene inviato dall'hub al contratto Vault pertinente sulle chain di destinazione.
* Il sistema esegue i passaggi necessari (come bridging, swap, deposito, ecc.) per ribilanciare.
* L'allocazione aggiornata viene registrata e le conferme/gli aggiornamenti di stato vengono inviati обратно all'hub Arbitrum tramite il livello di messaggistica. Questo processo può includere lo spostamento di fondi inattivi dall'hub in una Strategy oppure il trasferimento di fondi tra diverse Strategy per inseguire rendimenti migliori.
  {% endstep %}

{% step %}
**Auto-compounding e reporting consolidato**

* I contratti Strategy rivendicano periodicamente i premi guadagnati dai protocolli di destinazione, li convertono nell'asset base del vault (ad es. USDC) e li reinvestono automaticamente. Questo processo è orchestrato da Keeper autorizzati.&#x20;
* I dati di performance, inclusi i premi generati da queste Strategie su tutte le chain supportate, vengono continuamente riportati all'hub Arbitrum. I premi vengono aggiunti al valore totale del vault, capitalizzando automaticamente i rendimenti per i depositanti.
  {% endstep %}

{% step %}
**Prelievo**

* I prelievi non sono limitati alla chain di deposito; gli utenti possono avviare una richiesta di prelievo in qualsiasi momento da qualsiasi chain supportata (**non deve essere la stessa chain utilizzata per il deposito**).
* Una commissione di performance del 9% viene calcolata in base al profitto generato dal deposito di un utente attraverso tutte le Strategie e le chain sottostanti.
* La richiesta viene instradata all'hub Arbitrum. Se il Vault dispone di fondi inattivi sufficienti (asset non impiegati attivamente nelle Strategie), il prelievo viene elaborato immediatamente.
* Se il Vault non dispone di fondi inattivi sufficienti, l'hub segnala alle Strategie di prelevare l'importo richiesto. Viene data priorità al prelievo dalle Strategie in cui l'impatto sul rendimento complessivo (APR) è minimo. Questo processo può richiedere un po' più di tempo a seconda dei protocolli sottostanti.
  {% endstep %}

{% step %}
**Richiedi**

* Una volta che il Vault dispone di liquidità sufficiente, l'utente può richiedere il proprio prelievo. Al momento della richiesta, gli asset corrispondenti vengono trasferiti al wallet dell'utente tramite l'infrastruttura cross-chain.
  {% endstep %}
  {% endstepper %}

### Architettura cross-chain

L'infrastruttura di OmniYield si basa su una robusta architettura hub-and-spoke:&#x20;

* **Hub:** Utilizziamo Arbitrum come nostro hub operativo centrale (la "main chain"). È qui che risiedono principalmente la logica di base, i calcoli complessi e la gestione complessiva dello stato del protocollo OmniYield.
* **Spoke:** Tutte le altre blockchain supportate funzionano come "spoke chain" o "side chain". Queste sono le reti da cui possono originare i depositi degli utenti e su cui vengono distribuite molte delle Strategie di rendimento sottostanti. Agiscono principalmente come endpoint di esecuzione, ricevendo istruzioni dall'Hub.

<div data-with-frame="true"><figure><img src="/files/bfa8b2bb7fcb253aec73b0cc2e5312ba16a226e8" alt=""><figcaption></figcaption></figure></div>

#### **Flusso di comunicazione:**

{% stepper %}
{% step %}
**Aggregazione**

Quando viene presa una decisione di ribilanciamento o si verificano azioni dell'utente (come depositi/prelievi che richiedono movimento cross-chain), vengono generate messaggi cross-chain che vengono trasmessi in modo sicuro dalle chain spoke all'hub Arbitrum.
{% endstep %}

{% step %}
**Elaborazione**

L'Hub elabora questi messaggi in entrata, esegue i calcoli necessari (come ottimizzare l'allocazione degli asset su tutti gli spoke, calcolare la performance complessiva del vault, consolidare le commissioni) e prende decisioni strategiche in base alla sua visione globale del sistema.
{% endstep %}

{% step %}
**Distribuzione**

Una volta prese le decisioni, le istruzioni necessarie e i dati delle transazioni vengono ridistribuiti da Arbitrum ai relativi smart contract sulle chain spoke per l'esecuzione (ad es. depositare fondi in una Strategy specifica su una rete diversa).
{% endstep %}
{% endstepper %}

{% hint style="success" %}
Questo design modulare consente:

* **Logica centralizzata, esecuzione decentralizzata**\
  Questo modello garantisce la coerenza dei dati, poiché l'hub Arbitrum funge da unica fonte di verità. L'effettivo impiego del capitale avviene sulle chain spoke, sfruttando le opportunità uniche offerte da ciascuna chain.
* **Modularità ed estensibilità**\
  Nuove chain, asset, strategie e destinazioni possono essere integrati in modalità plug-and-play con modifiche minime alla base di codice esistente.\
  Questo garantisce una bassa superficie d'attacco, facilitando al contempo lo sviluppo di prodotti aggiuntivi. Per migliorare ulteriormente la sua robustezza e funzionalità, il protocollo OmniYield si integra con varie primitive e infrastrutture DeFi, offrendo la migliore esperienza utente e consentendo un'interazione fluida con altri strumenti finanziari.
  {% endhint %}

### Comunicazione cross-chain

Il funzionamento del nostro modello hub-and-spoke su numerose blockchain è reso possibile sfruttando i principali provider di messaggistica cross-chain: LayerZero e Axelar (e potenzialmente altri, adattati in futuro a token/chain/funzioni specifici).&#x20;

LayerZero abilita una messaggistica leggera ed efficiente, garantendo latenza minima e interoperabilità trustless tra le reti supportate. Axelar integra questo aspetto con routing di alto livello e consegna sicura di messaggi cross-chain generalizzati.

* **La dorsale della comunicazione:** Questi protocolli agiscono come un'infrastruttura di comunicazione sicura e affidabile che collega il nostro Hub (Arbitrum) a tutte le chain Spoke. Forniscono i percorsi essenziali per trasmettere dati e istruzioni oltre i confini delle blockchain. Tutto il relay dei messaggi, la validazione e il settlement vengono eseguiti tramite i canali di messaggistica sicuri di questi provider.
* **Facilitare le operazioni chiave:** LayerZero e Axelar inoltrano i messaggi critici necessari per le funzioni principali. Ciò include:
  * Notificare all'Hub i nuovi depositi effettuati sulle chain spoke.
  * Inoltrare le richieste di prelievo degli utenti sulle chain spoke all'Hub per l'elaborazione.
  * Inviare comandi dall'Hub ai contratti strategy sulle chain spoke per eseguire depositi, prelievi o ribilanciamenti.
  * Riportare al Hub i rendimenti generati, le metriche di performance e i dati sulle commissioni dalle strategy sulle chain spoke.

### Reporting consolidato delle commissioni

Nelle tipiche configurazioni multi-chain, ogni chain spesso agisce come un silo con logica e reporting delle performance isolati. OmniYield adotta un approccio radicalmente diverso. Crediamo che il nostro ecosistema debba operare come un unico protocollo unificato, non come una raccolta frammentata di deployment specifici per chain.

Sebbene OmniYield generi commissioni dalle strategie di rendimento operative su numerose chain, il protocollo implementa un reporting consolidato delle commissioni, un processo in cui i dati di generazione delle commissioni da tutte le chain supportate vengono aggregati, normalizzati e calcolati su Arbitrum (l'hub).&#x20;

{% hint style="success" %}
Ciò consente:

* **Esperienza utente flessibile:** Gli utenti non devono preoccuparsi di incentivi incoerenti. Possono depositare dalla chain che preferiscono sapendo che commissioni, opportunità di rendimento e premi rimangono coerenti in tutto l'ecosistema OmniYield.
* **Tokenomics condivisa:** Tutte le commissioni del protocollo, indipendentemente dalla chain di origine, contribuiscono allo stesso modello di ricavi globale.
* **Metriche trasparenti:** Un reporting unificato elimina le discrepanze e migliora l'auditabilità.
  {% endhint %}

<div align="right"><figure><img src="/files/77a8038e3eac0b0eb23749fdaed2ecf6901d447a" alt="" width="17"><figcaption></figcaption></figure></div>
