Aller au contenu

    Appuyez sur / pour rechercher, sur [ et ] pour la page précédente et la suivante.

    Fonctionnement en détail

    Codes builder

    Les frontends que le propriétaire approuve comme builders touchent des frais sur le PnL des positions que leurs utilisateurs clôturent, à un taux que le trader a accepté par signature.

    Ce qu’est un code builder

    L’enregistrement de clé de session que signe un trader (RegisterSessionKeyV2) indique une adresse dans son champ feeAddress, le code builder du frontend, et dans maxBuilderFee le taux maximal que le trader accepte de lui payer. Tant que cette adresse est un builder approuvé, chaque position que la clé clôture lui verse le plus bas entre le taux propre du builder et ce maximum signé. Une clé enregistrée avec le type d’origine RegisterSessionKey ne porte aucun consentement et ne rapporte rien à un builder. L’app ne désigne aucun builder, et chaque trade, quel que soit le frontend qui l’envoie, est soumis par le relayer.

    Ce que cela coûte

    • Gains. Le trader paie au builder son taux, au plus 0.5% du gain ajusté, en plus des frais sur gain de 2% et des frais de parrainage.
    • Pertes. La part du builder est prélevée sur ce que gagne le LP, donc la perte du trader ne change pas. Elle est exclue de la base d’émission de la perte.
    • Jamais sur les liquidations, y compris une clôture au prix de faillite ou au-delà, qui se règle comme une liquidation.
    • Dans la limite du total. Les frais de base, les frais de parrainage et les frais de builder ensemble ne dépassent jamais 15% de la base : le taux d’un builder est ramené dans la marge que laissent les deux autres.

    Un builder n’est crédité que tant que la file des paiements est vide et que le LP peut financer les frais, la même règle que pour les frais propres du protocole. Sinon, le gagnant paie quand même les frais, qui restent dans le LP.

    Builders approuvés uniquement

    • Le propriétaire approuve chaque builder via le timelock de 2 jours.
    • Le multisig de gouvernance peut retirer un builder immédiatement. Un retrait arrête les frais sur toutes les clés qui le désignent ; les clés continuent de fonctionner.
    • Chaque builder fixe son propre taux, jusqu’au plafond du propriétaire de 0.5%. Le propriétaire peut déplacer ce plafond via le timelock, jusqu’à 15% ; le baisser sous le taux d’un builder plafonne ce que ce builder touche.
    • Un enregistrement qui désigne une adresse qui n’est pas un builder approuvé est refusé, par le relayer comme par le contrat ; de même pour un enregistrement qui désigne un builder sans maximum signé, et qui ne rapporterait rien.

    Pour les builders

    • Indiquez votre adresse de builder dans feeAddress quand vos utilisateurs signent RegisterSessionKeyV2, avec le taux maximal qu’ils acceptent dans maxBuilderFee ; fixez votre propre taux sur le registre avec setFeeRate, sous le plafond.
    • Les frais gagnés s’accumulent sur l’Exchange : builderFees(address) affiche les vôtres.
    • Réclamez-les avec claimBuilderFees() sur l’Exchange, envoyé depuis votre adresse de builder. La réclamation crédite votre solde de l’exchange ; toute part que le LP ne peut pas couvrir à ce moment rejoint la file des paiements. Les frais gagnés avant un retrait restent réclamables.
    • Clé perdue : le propriétaire peut transférer vos frais non réclamés vers une nouvelle adresse via le timelock (moveBuilderFees).

    Tant qu’ils ne sont pas réclamés, les frais de builder sont dus par le LP : ils restent dans les liquidités du LP et sont déduits du LP comptable (voir Solvabilité et file). L’adresse du BuilderRegistry figure sur la page Adresses des contrats.

    Dernière mise à jour: