# Architettura

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

Il nostro obiettivo primario è 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, rigorosi protocolli di sicurezza, regole di diversificazione e un’architettura che astrae la complessità dell’interazione cross-chain.

### Componenti architetturali chiave

<details>

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

La porta d’accesso dell’utente a OmniYield.

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

Servono come 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 su più chain, identificano le opportunità di rendimento ottimali, valutano i rischi e determinano l’allocazione degli asset per i Vault.

Questo processamento viene calcolato 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 ciascun Vault è collegato almeno un contratto Strategy.

Questo componente traduce le decisioni del solver in azioni. Gestisce le complessità tecniche del movimento 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 allocati.

</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 blockchain diverse.

</details>

### Il ciclo di vita degli asset

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 trasferiti al contratto Vault sull’hub di Arbitrum e inizialmente restano 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 sulle 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 di 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 gli aggiornamenti di conferma/stato vengono inviati обратно all’hub di Arbitrum tramite il livello di messaggistica. Questo processo può comportare il trasferimento di fondi inattivi dall’hub in una Strategy o lo spostamento di fondi tra diverse Strategy per inseguire rendimenti migliori.
  {% endstep %}

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

* I contratti Strategy richiedono periodicamente i reward guadagnati dai protocolli di destinazione, convertendoli nell’asset base del vault (ad es. USDC) e reinvestendoli automaticamente. Questo processo è orchestrato da Keeper autorizzati.&#x20;
* I dati di performance, inclusi i reward generati da queste Strategie su tutte le chain supportate, vengono continuamente riportati all’hub di Arbitrum. I reward vengono aggiunti al valore totale del vault, compounding 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 necessariamente essere la stessa chain usata 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 indirizzata all’hub di Arbitrum. Se il Vault dispone di fondi inattivi sufficienti (asset non attivamente impiegati 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. Dà priorità al prelievo dalle Strategie in cui l’impatto sul rendimento complessivo (APR) è minimizzato. Questo processo può richiedere leggermente più tempo a seconda dei protocolli sottostanti.
  {% endstep %}

{% step %}
**Riscatto**

* Una volta che è disponibile liquidità sufficiente nel Vault, l’utente può riscattare il proprio prelievo. Al momento del riscatto, gli asset corrispondenti vengono trasferiti al wallet dell’utente tramite l’infrastruttura cross-chain.
  {% endstep %}
  {% endstepper %}

### Architettura cross-chain

L’infrastruttura di OmniYield è costruita 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.
* **Spokes:** Tutte le altre blockchain supportate funzionano come ‘spoke chain’ o ‘side chain’. Sono le reti da cui possono originare i depositi degli utenti e dove vengono distribuite molte delle Strategie di rendimento sottostanti. Agiscono principalmente come endpoint di esecuzione, ricevendo istruzioni dall’Hub.

<figure><img src="https://3447169348-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>

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

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

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

{% step %}
**Calcolo**

L’Hub elabora questi messaggi in arrivo, esegue i calcoli necessari (come l’ottimizzazione dell’allocazione degli asset su tutte le spoke, il calcolo della performance complessiva del vault, il consolidamento delle commissioni) e prende decisioni strategiche basate sulla sua visione globale del sistema.
{% endstep %}

{% step %}
**Distribuzione**

Una volta prese le decisioni, le istruzioni necessarie e i dati delle transazioni vengono distribuiti nuovamente da Arbitrum ai contratti smart pertinenti sulle spoke chain 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 di Arbitrum funge da unica fonte di verità. Il deployment effettivo del capitale avviene sulle spoke chain, sfruttando le opportunità uniche offerte da ciascuna chain.
* **Modularità ed estensibilità**\
  Nuove chain, asset, strategie e destinazioni possono essere integrate in modalità plug-and-play con modifiche minime alla codebase esistente.\
  Questo garantisce una superficie di attacco ridotta, facilitando al contempo lo sviluppo di prodotti aggiuntivi. Per rafforzare ulteriormente la sua robustezza e funzionalità, il protocollo OmniYield si integra con vari primitivi 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 o funzioni specifiche).&#x20;

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

* **La spina dorsale della comunicazione:** Questi protocolli fungono da infrastruttura di comunicazione sicura e affidabile che collega il nostro Hub (Arbitrum) con tutte le spoke chain. 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 attraverso le corsie di messaggistica sicure di questi provider.
* **Facilitazione delle operazioni chiave:** LayerZero e Axelar trasmettono i messaggi critici necessari per le funzioni principali. Ciò include:
  * Notificare l’Hub dei nuovi depositi effettuati sulle spoke chain.
  * Reinviare le richieste di prelievo degli utenti sulle spoke chain all’Hub per l’elaborazione.
  * Inviare comandi dall’Hub ai contratti Strategy sulle spoke chain per eseguire depositi, prelievi o ribilanciamenti.
  * Riportare all’Hub il rendimento generato, le metriche di performance e i dati sulle commissioni dalle strategie sulle spoke chain.

### Reporting consolidato delle commissioni

Nelle configurazioni multi-chain tipiche, ogni chain spesso opera come un silo con logica isolata e reporting delle performance separato. 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 da strategie di rendimento operative su numerose chain, il protocollo implementa un reporting consolidato delle commissioni, un processo in cui i dati di generazione delle fee da tutte le chain supportate vengono aggregati, normalizzati e calcolati su Arbitrum (l’hub).&#x20;

{% hint style="success" %}
Questo 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 reward 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:** Il reporting unificato elimina le discrepanze e migliora la verificabilità.
  {% endhint %}
