> For the complete documentation index, see [llms.txt](https://botlyz.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://botlyz.gitbook.io/docs/fonctionnement/signature-et-transparence.md).

# Signature et transparence

Botlyz est un éditeur de logiciel, pas un gestionnaire de fonds. Vous gardez le contrôle total de votre configuration, de vos clés et de vos fonds. Cela passe par une signature numérique de chaque configuration de stratégie.

## Ce que vous signez

Quand vous déployez une stratégie, vous signez un **document complet et lisible** qui contient :

1. **La stratégie** : son nom, sa logique (en français clair), la version du moteur
2. **Tous les paramètres de trading** : paire, périodes d'indicateurs, enveloppes, seuils d'entrée/sortie, conditions
3. **Les paramètres de risque** : votre levier, allocation en pourcentage du capital, stop-loss, take-profit
4. **Vos bornes** : les limites de risque que vous fixez vous-même (levier maximum, exposition maximale)
5. **La règle de réoptimisation** : comment la stratégie peut se mettre à jour (automatiquement selon vos règles, ou en attente de votre validation)
6. **Les frais** : le frais de protocole de 10 bps (0,10 %), prélevé automatiquement par la plateforme Lighter via le programme « partner attribution », plafonné à 10 bps
7. **Les avertissements sur les risques** : une liste précise des risques que vous reconnaissez (perte partielle ou totale, liquidation en cas de levier, etc.)
8. **Les conditions générales** : version et hash du document légal que vous avez accepté

Tous ces éléments sont combinés dans un document JSON canonique (clés triées, format standardisé) et hashé en SHA-256. Ce hash devient **l'empreinte digitale immuable** de votre configuration.

> **À noter sur les frais.** Le frais de protocole de 10 bps est prélevé et reversé par la plateforme : ce n'est pas une facture ni une commission Botlyz. Botlyz ne prélève aucune commission sur vos gains. Les frais propres de la plateforme Lighter (trading, funding) s'appliquent par ailleurs, indépendamment de Botlyz. Voir [Frais](/docs/fonctionnement/frais.md) pour le détail.

## Pourquoi signer

### Transparence

La signature EIP-712 est une norme Ethereum. Elle fait s'afficher dans votre wallet (MetaMask, Ledger, etc.) **chaque paramètre en clair**, lisible par vous, avant que vous acceptiez. Contrairement à une transaction blockchain (qui est souvent illisible pour l'utilisateur), vous voyez :

* Votre adresse
* La clé de la stratégie
* Le hash du moteur
* La plateforme (Lighter)
* Les frais en basis points
* L'empreinte de votre configuration
* Le hash des CGU
* L'horodatage

Rien n'est caché. Vous pouvez télécharger le document complet **avant** de signer, le lire dans l'interface, le partager ou l'archiver.

### Contrôle

En signant, vous attestez : **c'est moi qui autorise cette configuration, avec ces paramètres précis, maintenant**. La signature est cryptographiquement liée à votre wallet. Elle prouve que vous avez agi, et exactement quand.

### Immuabilité légale

La paire (document + signature) est archivée dans la base de données de Botlyz et vous est remise pour téléchargement (document + hash + signature). Si un différend survient, vous pouvez prouver :

* Exactement quels paramètres vous avez signés
* Quand vous les avez signés
* Que c'est bien vous qui l'avez fait

C'est votre preuve, et elle est équivalente à celle conservée par Botlyz.

## Comment ça marche techniquement

### La signature EIP-712

EIP-712 est un standard Ethereum qui crée un « message typé ». Contrairement à un simple `personal_sign` qui affiche juste du texte brut ou un blob cryptique, EIP-712 structure les données :

```
Domaine : Botlyz (v1, mainnet)
Type : StrategyConfiguration

Vous signez :
  - wallet : 0x1234...
  - strategyKey : SIGMA_V2_1
  - engineVersionHash : sha256:abcd...
  - venue : lighter
  - feeBps : 10
  - documentHash : 0x5678... (hash SHA-256 de votre config complète)
  - cguHash : 0x9abc... (hash des CGU acceptées)
  - issuedAt : 1719835200 (timestamp)
```

Votre wallet affiche ces champs en langage lisible. Vous cliquez « Signer ».

### Le document canonique

Le document que vous signez est une représentation **canonique** (standardisée) de votre configuration. Cela signifie :

* Les clés JSON sont toujours dans le même ordre (alphabétique)
* Il n'y a pas d'espaces inutiles
* Le format est identique à chaque génération

Pourquoi ? Parce que le serveur Botlyz régénère le même document à partir de vos paramètres et recalcule le hash. Si le hash correspond, c'est que rien n'a changé. C'est une vérification d'intégrité.

### Récupération et vérification

Après votre signature :

1. Botlyz reçoit votre message typé, votre signature et votre document
2. Il récupère votre adresse wallet depuis la signature (grâce à la cryptographie)
3. Il vérifie que l'adresse récupérée correspond à votre compte (sécurité : vous ne pouvez pas forger la signature de quelqu'un d'autre)
4. Il recalcule le hash du document et le compare au hash signé (vérification : aucun paramètre n'a changé)
5. Il archive tout : document + signature + hash + message typé
6. Vous recevez une copie (téléchargeable en PDF et en JSON)

Tout cela prend une seconde, ne coûte rien en gaz ni en frais, et reste off-chain. C'est du Web3 pour l'UX et la cryptographie, pas pour la blockchain.

## Modification et re-signature

Votre configuration n'est jamais modifiée en silence.

### Cas 1 : vous changez les paramètres

Vous entrez dans le configurateur, ajustez le levier, modifiez une période, changez une limite. Vous cliquez « Déployer ».

Résultat : un **nouveau document** est généré. Les paramètres ont changé, donc le hash change. Vous devez **signer à nouveau**. L'ancienne signature reste archivée (statut `superseded`), la nouvelle devient `active`.

Le moteur ne déploie que la configuration qui correspond à une **signature active**. Pas de déploiement sans signature à jour.

### Cas 2 : Botlyz sort une nouvelle version du moteur

Le moteur « SIGMA v2.1 » est remplacé par « SIGMA v3 ». C'est une **release majeure** : la logique change.

Résultat :

1. Vous recevez une **notification** qui affiche le diff entre les deux versions (ce qui a changé dans la logique)
2. Votre stratégie continue de tourner sur « SIGMA v2.1 » (ancienne signature valide)
3. Vous pouvez lire le diff, puis cliquer « Migrer »
4. Un nouveau document est généré avec `engineVersionHash : sha256:xyz` (nouvelle version)
5. Vous signez à nouveau
6. Le moteur bascule sur « SIGMA v3 » une fois votre nouvelle signature en place

Aucun basculement silencieux. Vous contrôlez le timing.

### Cas 3 : réoptimisation des paramètres

Le mode « réoptimisation adaptative » n'est pas une décision que Botlyz prend à votre place : c'est une **règle déterministe que vous définissez et signez à l'avance** (objectif, fréquence, bornes, critère). Une fois signée, cette règle s'applique mécaniquement, sans aucune appréciation discrétionnaire de Botlyz. Le logiciel se borne à exécuter votre règle dans les bornes que vous avez fixées.

Concrètement, le paramètre peut évoluer **selon le critère objectif et déterministe que vous avez vous-même paramétré et signé** (par exemple : retenir la période de moyenne mobile qui maximise tel indicateur sur la fenêtre glissante), dans les bornes que vous avez fixées (par exemple : sans jamais dépasser `max_ma_period=200`). C'est votre critère mécanique qui décide, pas un jugement de Botlyz.

Deux scénarios :

* **Mode adaptatif** : la règle que vous avez signée s'applique mécaniquement dans les bornes que vous avez fixées. Vous recevez une notification *après* l'application du critère (« Règle adaptative appliquée : MA 140 → 145 »). Aucune nouvelle signature n'est nécessaire, car ce n'est pas un nouveau choix : c'est l'exécution de la règle que vous aviez déjà définie et signée. **Vous pouvez désactiver ce mode ou repasser en validation manuelle à tout moment.**
* **Mode manuel** : aucune évolution n'est appliquée sans vous. Le résultat du critère est proposé dans l'interface ; vous l'examinez, l'acceptez ou le refusez. Si vous acceptez, le document change, donc une nouvelle signature est requise.

**Jamais de changement silencieux ni de choix de Botlyz à votre place**, même avec la réoptimisation. Botlyz n'exerce aucune discrétion de gestion : seule la règle que vous avez signée s'applique.

## Ce que vous téléchargez

Après chaque signature, vous pouvez télécharger une copie :

```json
{
  "platform": "Botlyz",
  "doc_type": "strategy_configuration",
  "doc_version": "1.0",
  "strategy": {
    "key": "SIGMA_V2_1",
    "display_name": "σ SIGMA v2.1",
    "engine_version_hash": "sha256:5af4e12c0e2b7a1f9c3d4e5f6a7b8c9d",
    "logic_summary_fr": "Mean-reversion sur enveloppes de moyenne mobile avec filtre RSI..."
  },
  "venue": {
    "key": "lighter",
    "fee_program": "partner_attribution",
    "fee_bps": 10,
    "fee_cap_bps": 10
  },
  "params": {
    "pair": "HYPE",
    "ma_period": 140,
    "envelopes": [[0.03, 1.0]],
    "rsi_filter": {"period": 80, "band": [42, 58]},
    "timeframe": "5m"
  },
  "risk": {
    "leverage": 2,
    "allocation_pct": 75,
    "sl_pct": 0.11
  },
  "bounds": {
    "max_leverage": 5,
    "max_exposure_usd": 2000
  },
  "reopt": {"mode": "none"},
  "risk_acknowledgments": [
    "total_or_partial_loss",
    "leverage_liquidation",
    "backtests_not_indicative",
    "automatic_execution_no_intervention",
    "software_not_advice_no_result_obligation",
    "venue_risks_smart_contracts_non_eu_regulated"
  ],
  "cgu": {
    "version": "2.0",
    "sha256": "0x7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b"
  },
  "wallet": "0x1234567890123456789012345678901234567890"
}
```

Ce JSON est votre preuve. Il atteste que :

* C'étaient vos paramètres
* À ce moment précis
* Que vous avez approuvés

La signature (65 octets en hexadécimal) est la garantie cryptographique que vous seul pouvez la produire.

## Qui a accès à la clé API

Important : **la signature ne donne accès à rien directement**. Botlyz utilise une clé API séparée pour passer les ordres sur Lighter (l'échange).

Cette clé :

* Vous la fournissez via le configurateur, chiffrée en transit (HTTPS)
* Botlyz la stocke chiffrée en base de données
* Elle sert **uniquement à placer des ordres** selon votre stratégie
* Elle n'a **aucun droit de retrait** (les clés API sont en mode trade-only, aucun retrait de fonds n'est possible)
* Elle est isolée : une compromission d'une clé ne concerne que ce compte

La signature EIP-712 atteste la **configuration**, pas l'accès. Vous gardez le contrôle de vos clés API et pouvez les révoquer à tout moment. Voir [Sécurité et modèle non-custodial](/docs/securite-and-aide/securite-non-custodial.md).

## Horizon légal

Cette approche répond aux exigences de transparence attendues d'un éditeur de logiciel :

* **Décision laissée au client** (pas de gestion de portefeuille) : vous configurez et vous signez
* **Consentement horodaté et prouvable** : EIP-712 et archivage
* **Transparence des règles** : chaque paramètre est lisible avant signature
* **Traçabilité** : qui a changé quoi, quand et pourquoi (document + journal)

Botlyz ne peut pas exécuter votre stratégie sans une signature active. C'est un verrou technique et juridique. Voir aussi les [Mentions légales](/docs/securite-and-aide/mentions-legales.md).

## Avertissements importants

> **Le trading comporte un risque de perte totale du capital.** Les performances passées ne préjugent pas des performances futures. Même avec une stratégie signée, vous pouvez perdre de l'argent.

> **Aucun conseil d'investissement.** Botlyz est un outil d'automatisation. Vous prenez vos propres décisions. Lisez chaque paramètre, comprenez la logique, et ne déployez que ce avec quoi vous êtes à l'aise.

> **Levier = risque accru.** Le levier amplifie les pertes comme les gains et peut entraîner la liquidation de votre position. Comprenez le levier avant de le signer.

> **Infrastructure décentralisée.** Lighter est un protocole non-custodial. Les risques de smart contract (bug, exploit) existent. Botlyz n'a pas le contrôle de la plateforme.

> **Clés API.** Gardez-les en sécurité. Elles sont en trade-only (aucun retrait possible), mais en cas de fuite, un tiers pourrait passer des ordres sur votre compte. Révoquez-les à la moindre suspicion.

Voir aussi l'[Avertissement sur les risques](/docs/pour-demarrer/avertissement-risques.md).

## En résumé

* **Vous configurez** : chaque paramètre est visible et modifiable
* **Vous signez** : un document complet, lisible, cryptographiquement attaché à vous
* **Vous contrôlez** : pas de changement sans nouvelle signature
* **Vous archivez** : une copie (document + hash + signature) comme preuve
* **Botlyz exécute** : seulement ce que vous avez signé, tant que c'est signé

C'est la technologie au service de la confiance : pas de tiers de confiance aveugle, mais de la preuve chiffrée et de la transparence.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://botlyz.gitbook.io/docs/fonctionnement/signature-et-transparence.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
