Valuation, PnL, MTM
Statut: migration partielle
Langue: fr
Page miroir: valuation-pnl-mtm.en.md
BR-PT-VAL-001 - La valuation couvre achat, vente et sale-first
Source: BR-PT-004, BR-PT-006, BR-PT-011
Règle consultant
Le PnL doit exister pour les achats et pour les ventes, même quand une vente n'est pas encore matchée à un achat.
Notes développeur
- Une
sale.linenon matchée doit générer au minimumsale priced,sale feeetderivativesi applicable. - Une sale basis sans détail de prix doit quand même produire une ligne à zéro ou au prix économique fallback selon la règle applicable.
- Ne pas attacher arbitrairement une sale unique si plusieurs sales sont matchées au même ouvert.
BR-PT-VAL-002 - Références de valuation
Source: BR-PT-005
Règle consultant
La référence de PnL doit décrire la nature de la ligne valorisée: achat ou vente, ouverte ou physique.
Notes développeur
- Références autorisées:
Purchase/Open,Purchase/Physic,Sale/Open,Sale/Physic. - Un lot virtuel ne doit pas sortir avec une reference physique.
BR-PT-VAL-003 - MTM hors fees
Source: BR-PT-007
Règle consultant
Le mark-to-market s'applique aux prix et aux dérivés, pas aux frais.
Notes développeur
- MTM autorisé pour
pur. priced,sale priced,derivative. - Fees hors MTM:
pur. fee,sale fee,shipment fee,line fee. - Pour les fees:
mtm_price,mtm,strategydoivent rester vides.
BR-PT-VAL-004 - Snapshot courant et identité économique
Source: session 2026-05-14
Règle consultant
valuation_valuation_line représente la dernière image connue du PnL.
Elle n'est pas un historique.
- Une nouvelle génération remplace la génération précédente pour la même réalité économique.
- Une vente non matchée porte son propre PnL.
- Une vente matchée est portée par la ligne d'achat liée.
- Le PnL d'une vente matchée ne doit pas être généré deux fois: une fois côté vente et une fois côté achat.
Notes développeur
- Avant création dans
valuation.valuation.line, supprimer le snapshot courant ayant la même identité économique. - Identité économique:
sale_linesi elle existe, sinonline;lot;type;reference;counterparty;product;state;strategy.
- Ne pas inclure dans l'identité:
date;price;quantity;amount;mtm_price;mtm.
- Ces champs sont des résultats recalculés et doivent être remplacés par la dernière génération.
generate_from_sale_line()ne crée pas de snapshot vente si lasale.lineest déjà matchée à unepurchase.line; il redirige vers la génération de la ligne d'achat propriétaire.