# Arkitektur

OmniYields arkitektur er designet til at være modulær, kæde-agnostisk og yderst skalerbar.

Vores primære mål er at skabe et kæde-agnostisk afkastlag, der maksimerer risikokorrigeret afkast for brugere på tværs af DeFi. For at opnå dette anvender systemet omfattende dataanalyse, avancerede off-chain-algoritmer, strenge sikkerhedsprotokoller, diversificeringsregler og en arkitektur, der abstraherer kompleksiteten i interaktion på tværs af kæder.

### Vigtige arkitektoniske komponenter

<details>

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

Brugerens indgang til OmniYield.

Disse ERC-4626-kompatible smart contracts håndterer indskud sikkert, modtager rapporter fra strategier og behandler udbetalinger.

De fungerer som den primære grænseflade, der koordinerer brugerfonde med de underliggende strategier.

</details>

<details>

<summary><strong>Eksekveringslag (Solver)</strong></summary>

Intelligenslaget i OmniYield.

Disse automatiserede systemer analyserer konstant DeFi-protokoller på tværs af kæder, identificerer optimale afkastmuligheder, vurderer risici og bestemmer aktivallokeringen for Vaults.

Denne behandling beregnes off-chain for effektivitet - kun resultaterne implementeres onchain, hvilket forhindrer, at OmniYields strategier bliver imiteret.

</details>

<details>

<summary><strong>Strategier</strong></summary>

Tilknyttet hver Vault er mindst én strategikontrakt.

Denne komponent omsætter solver-beslutninger til handlinger. Den håndterer de tekniske kompleksiteter ved flytning af aktiver, herunder tokenswaps, likviditetsprovidering, udlån, staking osv.

</details>

<details>

<summary><strong>Destinationer</strong></summary>

De specifikke DeFi-protokoller, likviditetspuljer eller yield farms, hvor vault-aktiverne i sidste ende placeres.

</details>

<details>

<summary><strong>Infrastruktur til beskeder på tværs af kæder</strong></summary>

Den grundlæggende teknologi, der muliggør funktioner på tværs af kæder, og som letter kommunikation og overførsel af aktiver mellem forskellige blockchains.

</details>

### Aktivernes livscyklus

Forståelse af aktivernes flow hjælper med at tydeliggøre systemets funktion:

{% stepper %}
{% step %}
**Indskud**

En bruger indskyder en enkelt aktivtype (f.eks. USDC) i den tilsvarende OmniYield Vault på en hvilken som helst understøttet kæde. De indskudte aktiver flyttes til Vault-kontrakten på Arbitrum-hubben og ligger i første omgang inaktive der.
{% endstep %}

{% step %}
**Rebalancering på tværs af kæder**

* Den off-chain-komponent (autonom Solver) overvåger vault-saldi og markedsforhold. Når en bestemt tærskel for inaktive aktiver er nået, eller under periodiske optimeringscyklusser, fastlægger den den optimale allokering for de aktuelle strategier på tværs af integrerede kæder og foreslår en rebalanceringsplan. Hvis forslaget opfylder sikkerheds- og performancekravene, igangsætter det en rebalancering (f.eks. flytning af X antal USDC til Strategi A på Kæde Y) via Vault-kontrakten på Arbitrum-hubben.&#x20;
* Ved hjælp af LayerZero og Axelar sendes en besked med instruktioner til rebalancering fra hubben til den relevante Vault-kontrakt på målkæderne.
* Systemet udfører de nødvendige trin (såsom bridging, swapping, indskud osv.) for at rebalancere.
* Den opdaterede allokering registreres, og bekræftelses-/statusopdateringer sendes tilbage til Arbitrum-hubben via beskedlaget. Denne proces kan omfatte flytning af inaktive midler fra hubben ind i en strategi eller flytning af midler mellem forskellige strategier for at jage bedre afkast.
  {% endstep %}

{% step %}
**Auto-kompounding og samlet rapportering**

* Strategikontrakter opkræver periodisk optjente belønninger fra destination-protokollerne, omdanner dem til vaultens baseaktiv (f.eks. USDC) og geninvesterer automatisk. Denne proces orkestreres af autoriserede Keepers.&#x20;
* Performance-data, herunder belønninger genereret af disse strategier på alle understøttede kæder, rapporteres løbende tilbage til Arbitrum-hubben. Belønninger lægges til vaultens samlede værdi, hvilket automatisk forrenter afkastet for indskydere.
  {% endstep %}

{% step %}
**Udbetaling**

* Udbetalinger er ikke begrænset til indskudskæden; brugere kan til enhver tid starte en udbetalingsanmodning fra enhver understøttet kæde (**det behøver ikke at være den samme kæde som blev brugt til indskuddet**).
* Et performancegebyr på 9 % beregnes ud fra den profit, der genereres af en brugers indskud på tværs af alle underliggende strategier og kæder.
* Anmodningen sendes til Arbitrum-hubben. Hvis Vaulten har tilstrækkelige inaktive midler (aktiver, der ikke aktivt er deployeret i strategier), behandles udbetalingen med det samme.
* Hvis Vaulten ikke har tilstrækkelige inaktive midler, signalerer hubben til strategierne, at de skal trække det nødvendige beløb ud. Den prioriterer at trække fra strategier, hvor påvirkningen på det samlede afkast (APR) minimeres. Denne proces kan tage lidt længere tid afhængigt af de underliggende protokoller.
  {% endstep %}

{% step %}
**Hæv**

* Når der er tilstrækkelig likviditet i Vaulten, kan brugeren hæve sin udbetaling. Ved hævning overføres de tilsvarende aktiver til brugerens wallet via den cross-chain infrastruktur.
  {% endstep %}
  {% endstepper %}

### Arkitektur på tværs af kæder

OmniYields infrastruktur er bygget på en robust hub-and-spoke-arkitektur:&#x20;

* **Hub:** Vi bruger Arbitrum som vores centrale operationelle hub (den "primære kæde"). Det er her, kerne-logikken, de komplekse beregninger og den overordnede tilstandsstyring af OmniYield-protokollen primært befinder sig.
* **Spokes:** Alle andre understøttede blockchains fungerer som 'spoke chains' eller 'side chains'. Det er de netværk, hvor brugerindskud kan stamme fra, og hvor mange af de underliggende yield-strategier er deployeret. De fungerer primært som eksekveringsendepunkter, der modtager instruktioner fra hubben.

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

#### **Kommunikationsflow:**

{% stepper %}
{% step %}
**Aggregering**

Når der træffes en rebalanceringsbeslutning, eller brugerhandlinger (såsom indskud/udbetalinger, der kræver flytning på tværs af kæder) finder sted, genereres der beskeder på tværs af kæder, som sikkert sendes fra spoke-kæderne til Arbitrum-hubben.
{% endstep %}

{% step %}
**Beregning**

Hubben behandler disse indgående beskeder, udfører nødvendige beregninger (såsom optimering af aktivallokering på tværs af alle spokes, beregning af den samlede vault-performance, konsolidering af gebyrer) og træffer strategiske beslutninger baseret på sit globale overblik over systemet.
{% endstep %}

{% step %}
**Distribution**

Når beslutningerne er truffet, distribueres de nødvendige instruktioner og transaktionsdata tilbage fra Arbitrum til de relevante smart contracts på spoke-kæderne til eksekvering (f.eks. indbetaling af midler i en bestemt strategi på et andet netværk).
{% endstep %}
{% endstepper %}

{% hint style="success" %}
Dette modulære design muliggør:

* **Centraliseret logik, decentraliseret eksekvering**\
  Denne model sikrer datakonsistens, da Arbitrum-hubben fungerer som den eneste sandhedskilde. Selve kapitalanbringelsen sker på tværs af spoke-kæderne og udnytter de unikke muligheder, som hver kæde tilbyder.
* **Modularitet og udvidelsesmuligheder**\
  Nye kæder, aktiver, strategier og destinationer kan integreres på plug-and-play-basis med minimale ændringer i den eksisterende kodebase.\
  Dette sikrer en lav angrebsflade, samtidig med at det understøtter udviklingen af yderligere produkter. For yderligere at styrke sin robusthed og funktionalitet integrerer OmniYield Protocol med forskellige DeFi-primitiver og infrastrukturer, hvilket giver den bedste brugeroplevelse og muliggør sømløs interaktion med andre finansielle værktøjer.
  {% endhint %}

### Kommunikation på tværs af kæder

Driften af vores hub-and-spoke-model på tværs af mange blockchains muliggøres ved at udnytte førende udbydere af beskeder på tværs af kæder: LayerZero og Axelar (og potentielt andre, der er skræddersyet til specifikke tokens/kæder/funktioner i fremtiden).&#x20;

LayerZero muliggør letvægts- og effektiv beskedudveksling, hvilket sikrer minimal latenstid og tillidsløs interoperabilitet på tværs af understøttede netværk. Axelar supplerer dette med højniveaurouting og sikker levering af generaliserede beskeder på tværs af kæder.

* **Kommunikationsrygraden:** Disse protokoller fungerer som den sikre og pålidelige kommunikationsinfrastruktur, der forbinder vores Hub (Arbitrum) med alle Spoke-kæderne. De leverer de nødvendige forbindelser til at transmittere data og instruktioner på tværs af blockchain-grænser. Al videresendelse, validering og afregning af beskeder udføres via disse udbyderes sikre beskedkanaler.
* **Facilitering af vigtige operationer:** LayerZero og Axelar videresender kritiske beskeder, der er nødvendige for kernefunktioner. Dette omfatter:
  * Underretning af hubben om nye indskud foretaget på spoke-kæder.
  * Videresendelse af udbetalingsanmodninger fra brugere på spoke-kæder til hubben til behandling.
  * Afsendelse af kommandoer fra hubben til strategikontrakter på spoke-kæder for at udføre indskud, udbetalinger eller rebalanceringer.
  * Rapportering af genereret afkast, performance-målinger og gebyrdata fra strategier på spoke-kæder tilbage til hubben.

### Konsolideret gebyr-rapportering

I typiske multi-chain-opsætninger fungerer hver kæde ofte som en silo med isoleret logik og performance-rapportering. OmniYield tager en radikalt anderledes tilgang. Vi mener, at vores økosystem bør fungere som én samlet protokol, ikke som en fragmenteret samling af kædespecifikke implementeringer.

Mens OmniYield genererer gebyrer fra yield-strategier, der opererer på tværs af mange kæder, implementerer protokollen konsolideret gebyr-rapportering, en proces hvor data om gebyrgenerering fra alle understøttede kæder aggregeres, normaliseres og beregnes på Arbitrum (hubben).&#x20;

{% hint style="success" %}
Dette muliggør:

* **Fleksibel brugeroplevelse:** Brugere behøver ikke bekymre sig om inkonsistente incitamenter. De kan indskyde fra enhver kæde, de foretrækker, vel vidende at gebyrer, afkastmuligheder og belønninger forbliver ensartede på tværs af hele OmniYield-økosystemet.
* **Delte tokenomics:** Alle protokolgebyrer, uanset oprindelseskæde, bidrager til den samme globale indtægtsmodel.
* **Transparente målinger:** Samlet rapportering eliminerer uoverensstemmelser og forbedrer auditérbarheden.
  {% endhint %}
