Liquidità collettiva
1) Perché è necessario
Liquidità immediata nei nuovi cluster. Avviate in una regione/nicchia e usate un pool comune.
Migliore conformità e prezzi. Il mercato profondo è più piccolo dello spread, più alto dell'EPI (miglioramento del prezzo efficiente/cambio).
Gomme di domanda/offerta. Trascinare il carico tra i nodi riduce il guasto e le code.
L'economia. Oltre fill rate e ARPU con un moderato aumento dei costi; la possibilità di cross-sell.
2) Modelli di liquidità collettiva
3) Componenti architettonici
Manderbook/directory: abstrazioni richiesta/off, stato e versioni, SLAs e attributi di compatibilità.
SOR (Smart Order Routing) - Regole per la selezione del pool/fornitore in base al prezzo/qualità/giurisdizione/latenza.
Coerenza: CDC e registri eventi, deducibilità dì event _ id "che compensano le transazioni.
Assegnazione e bollo: chi è il «proprietario» della transazione/commissione, finestre di rivendicazione, ricevimento.
Qualità e reputazione: ascolti/SLA partner, multe, badge.
Privacy e localizzazione: occultamento del PD, geo-pinning, regole per l'esportazione degli eventi.
mermaid flowchart LR
U [Demand] --> GW [Routing Gateway]
P1 [Pool A] --- GW
P2 [Pool B] --- GW
P3 [Partner C] --- GW
GW --> SB[Settlement/Billing]
GW --> OBS[Observability/SLO]
4) Contratti dati (minimo campi)
yaml offer. v1:
id: uuid kind: product slot capacity price: {amount: decimal, currency: ISO4217}
quality: {rating: 0..5, sla_ttm_ms: int}
geo: {region: "EU", city: "Tallinn"}
vendor: {id: "partner-123", tier: "gold"}
terms: {ttl_s: 60, cancellation: "window:15m"}
version: 7 request. v1:
id: uuid constraints: {geo, time, price_ceiling, compliance}
qos: {max_ttm_ms: 500, min_rating: 4. 0}
trace_id: uuid consent: {...}
5) SOR: regole e pseudocodi
Criteri di classificazione:- `score = w_priceprice_improvement + w_slattm_slo + w_qquality + w_geodistance_penalty + w_riskvendor_risk_penalty`
python def route(request, pools):
candidates = []
for pool in pools:
if not compliant(request, pool):
continue quotes = pool. quote (request) # timebox, idempotent for q in quotes:
s = score(q, request)
candidates. append((s, pool, q))
ordered = sorted(candidates, key=lambda x: -x[0])
return best_feasible(ordered, fairness=request. fairness)
Fairness: rotazione dei fornitori, quote di fatturato, tie-break per reputazione e recenti guadagni.
6) Metriche di liquidità
Fill rate = iscrizioni chiuse/tutte le richieste (per segmento/cluster).
Time-to-match (p50/p95) - Tempo di selezione/esecuzione.
Depth è un volume disponibile in un intervallo di prezzo/qualità specificato.
Spread/EPI - Migliorare il prezzo efficiente vs benchmark.
Utilization - Caricamento di un'offerta (idle%) è un bene se non si verifica un fallimento SLA.
Integrity - Proporzione di Otman/Conversione Fols, discrepanza di ripartizione (<ehi).
Fairness - Dispersione della distribuzione del giro d'affari per fornitore alla stessa qualità.
- 'fill _ rate _ month' 92% 'in un cluster con offshore attivi N.
- 'p95 _ time _ to _ match ≤ 3' durante l'orologio di punta.
- `cancel_rate ≤ 1. 5% 'SLA fornitore' on-time '98%'.
7) Osservabilità e base di prova
Eventi: 'richiest. sent`, `quote. received`, `match. made`, `settled`, `cancelled`, `refund`.
Tracciabile'trace _ id ', il pool SOR del fornitore.
Controllo firme Web, registro delle versioni del mandato, screenshot della quotazione.
Reconcilion: report bilaterali, deducibilità, soluzione temporanea <©, chiusura SLA dei reclami.
8) Privacy, compliance, sovranità
Geo-pinning - Le categorie sensibili/PII non escono dalla regione consentita.
Alias: solo pseudo-ID per lo scambio tra parti.
Retention come codice: TTL eventi, diritto di eliminazione, Legale Hold.
DPA/webhook: firma, anti-replay, controllo schemi.
9) Modello operativo e calcoli
Ruoli: Market Operator (tu), Poole/Partner (supply), Canali/Vetrine (demand).
Commercio: RevShare/CPA/garanzie minime; «clip» per l'instradamento/miglioramento del prezzo.
Crediti/multe per rottura di SLA, false offerte, rapporti incoerenti.
Settement: frequenza T + N, contenimento, marcebacks, reporting.
yaml partner_id: "pool-A"
sla:
fill_rate: ">= 90%"
on_time: ">= 98%"
quote_ttl_s: 2 limits:
rps: 200 region: ["EU","TR"]
commercials:
model: "revshare: 20% of net"
security:
webhook_signature: "Ed25519"
10) Modelli di integrazione
API Pull-quote con time box (idempotency-key).
Firmati Webhooks per'match. made '/' settled '(retrai con espositore).
Event bus per il mandato e gli analisti CDC (versioni eventi).
Batch-recon (giornaliero SFTP/Blob + checksum).
Outbox/Inbox in entrambi i lati + deadup.
Versioning schemi/SDK, finestra di compatibilità.
11) Controllo sovraccarico e altalena
Anti-congestione: limitatori, code, priorità delle valigette VIP/complesse, coefficienti surge.
Anti-arbitraggio (tossico): proibizioni'autosufficienza ', per costi/qualità inferiori, monitoraggio delle richieste «ping-pong».
Anti-frod: device/firme comportamentali, honey-tokens, qualifiche ritardate (cool-off).
Degrado con onore: fallback sul pool locale, «best-effort» con un peggioramento trasparente.
12) Esempi di logica (sketch)
12. 1 Routing con giurisdizione e SLO
python def compliant(req, pool):
return (req. constraints. geo in pool. regions and pool. sla. quote_ttl_s <= 2 and pool. vendor_tier in {"gold","silver"})
12. 2 Politica di equità (Rego-Idea)
rego package fairness deny["overexposed vendor"] {
usage. share[input. vendor] > 0. 45 input. vendor. tier == "silver"
}
12. 3 Prova di convergenza del mandato
sql
SELECT offer_id, MAX(version)-MIN(version) AS drift
FROM orderbook_events
WHERE ts >= now() - interval '5 minutes'
GROUP BY 1
HAVING MAX(version)-MIN(version) > 1; -- fragmentation signal
13) Metriche di maturità
Coverage è la percentuale di segmenti/regioni in cui c'è un X off attivo.
Elasticity: quanto rapidamente fill rate viene ripristinato con + Richiesta.
EPI/Spread-improvement - I vantaggi derivanti dall'aggregazione del pool di assoli vs.
Fair-distribuzione: deviazione della quota di fatturato rispetto alla qualità prevista.
Recon-health: frequenza/durata della chiusura delle soluzioni.
Privacy-score - Un numero di percorsi che non porta il PD oltre i confini della politica.
14) Anti-pattern
Federazione nuda senza SOR e regole di qualità, frammentazione, cancellazione.
«Il Mercato del Vetro», tutto quello che state aprendo è un picco di frode e di guerra dei prezzi.
Nessuna attribuzione e la riscossione è una discussione eterna e pagamenti congelati.
Sincroncino rigido tra i pool, latitanza a cascata/guasti.
Le stesse regole per i diversi segmenti sono la degradazione dell'esperienza in nicchie premium/locali.
Ignorare la TTL Offshore per un accordo sulle condizioni «corrotte».
Una sola chiave di crittografia per l'intero mercato non è possibile cancellare i dati.
15) Assegno-foglia architetto
1. Sono stati definiti un modello (pool/federazione/hab) e limiti di sovranità?
2. C'è un contratto dati (schemi, versioni, TTL, firme) e una finestra di compatibilità?
3. Implementato da SOR con fairness e baseball, SLO di liquidità e dashboard?
4. Cartelle/assegnazioni, finestre di reclami, crediti/multe?
5. Incorporato anti-congregazione/anti-frod/anti-arbitraggio e regime di degrado?
6. La riscossione e gli artefatti della prova dell'accordo?
7. Privacy: alias, geo-pinning, retenschen, diritto di eliminazione?
8. Insegnamenti: picchi di stress della domanda/calo del pool/rassincronizzazione del mandato?
9. Budget egress, costo di routing, target EPI?
10. Governance: soglie, certificazione dei partner, controllo.
Conclusione
La liquidità collettiva non è «collegare un altro partner», ma progettare il mercato: contratti e eventi unificati, regole trasparenti di routing ed equità, una forte osservazione e calcolo, privacy e giurisdizione «come codice». Così nasce da fonti diverse un unico, profondo e sostenibile bacino di domanda e offerta - con la migliore esperienza per gli utenti e un'economia prevedibile per l'intero ecosistema.