GH GambleHub

FX: conversione e rischi di cambio

1) Perché controllare FX nel iGaming

Accurato report P&L: dove si verifica il profitto FX/perdita (depositi, conclusioni, settlment PSP, riserve).
Equo ND/GRR/NGR: un unico reporting currency senza «rivalutazioni retroattive».
Liquidità e cache flow: funding in valuta A, pagamenti in B - bisogno di previsioni e hedge.
Compilazione/tasse: origine trasparente dei corsi e controllo delle tracce.

2) Cue point dove nasce FX

1. Portafoglio di gioco vs valuta deposito - normalizzazione in valuta portafoglio/reportage.
2. Capture/settle in PSP: fissa il corso «storico» per ND.
3. Funding - È possibile cambiare il tasso di cambio e l'effetto FX secondario.
4. Withdrawals - Conversione al pagamento del giocatore.
5. Rolling reserve e multe schemi: prelievi/rilasci possono essere in un'altra valuta.
6. Crypto: valutazione VWAP/mediana al momento del settle/funding.

3) Fonti di corso e regole di normalizzazione

FX source: provider di controllo prioritario (ad esempio CME/Refinit/ECB), riserva banca/PSP.
Quote policy: `mid`, `bid/ask` или `mid ± spread_bps`. Il mid + esplicito «spread _ bps» è più frequente per la contabilità.
Timestamp: corso al momento dell'evento di riconoscimento (solitamente «settled _ at» per ND; opzionale'funded _ at'per banca-contabilità).
No restatement: i precedenti ND non sono sopravvalutati quando i corsi cambiano; reval viene fatto separatamente come unrealization FX.
Precisione: conservare 8-10 caratteri nel corso FX, in minor units (integers) + scale.

4) Formule e esempi

4. 1. Conversione di base

Lasciate'amount _ originale'in 'ccy _ orig', valuta di segnalazione' ccy _ rip ', corso' fx (ccy_orig→ccy_rep) ':

amount_reporting = round(amount_original fx, scale_ccy_rep)

4. 2. Tasso di cambio (con valuta ancorata, ad esempio EUR)


fx(GBP→UAH) = fx(GBP→EUR) fx(EUR→UAH)

È importante memorizzare il percorso di corso in «meta» per il controllo.

4. 3. Separazione dello spread e della commissione PSP

Se PSP ha convertito da solo:

fx_effective = settlement_amount_in_rep / original_amount spread_bps  = (fx_effective / fx_reference - 1) 10_000 fee_fx    = settlement_fee_in_rep (если отдельно)

Memorizzare effettiva FX e reference FX per misurare i margini PSP influenzit.

4. 4. Esempio (catena a doppia conversione)

Il giocatore depone 100 GBP. Reporting — EUR.
На `settled_at`: `GBP→EUR = 1. 1700` → `ND_dep = 117. 00 EUR`.
Il PSP finanzia la banca all'USD domani: 'GBP→USD = 1. 3000, la banca ha un conto in USD.
Per la contabilità FI, fissare anche il corso secondario «USD→EUR» su «funded _ at» (ad esempio 0. 9200) per vedere realization FX tra settle e funding, se la posizione monetaria è sopravvalutata.

5) DCC, conversione PSP e «chi decide il corso»

DCC (Dynamic Currency Conversion) sul lato Merchant/PSP: il corso viene mostrato al giocatore in anticipo, ma il margine è più alto.
PSP-conversione: PSP accetta la valuta del giocatore, converte in valuta merchant al suo tasso di cambio. La trasparenza dello spread è critica.
Merchant-conversion: il merchant prende multivalume (multi-MID/multi-contest), la conversione effettua la banca/frangieri al tasso migliore (generalmente più vantaggioso, ma più complesso operativamente).
Raccomandazione: fissa conversion _ owner («DCC», «PSP», «MERCHANT») e confronta TCO (spread + fee).

6) Cripto: valutazione e volatilità

Valutazione VWAP in una breve finestra intorno à settled _ at "(ad esempio, © 5 minuti), con origine (borsa/provider).
Memorizza «price _ usd», «price _ eur», «source», «window», «pair» (ad esempio «USDT/USDC/BTC»).
Per il funding in pile/fiat, il secondo livello FX.
Particolare: spiegamenti, delisting, on-chain fees - prendere in considerazione in meta e alert.

7) Accredito FX: realizvs unrealization

Realization FX è la differenza «chiusa» dal flusso di cassa (tra il tasso di riconoscimento e il tasso di scambio/ricezione effettivo).
Unrealization FX è una rivalutazione dei saldi sui conti a valuta multipla/riserva a fine giorno/mese.
Distribuisci in diversi conti GL: «FX _ realization», «FX _ unrealization».
Per gli analisti ND/alimentari utilizzare il corso storico dell'evento (non sopravvalutare).

8) Tipi di esposizione FX e come chiuderli

Le valute di ingresso/uscita non corrispondono (deposito EUR (output TRY).

Misure: naturale hedge (selezionare la valuta dei pagamenti), busta veloce secondo le regole.
Translation exposure: multi-conteggio e riserve in valute diverse.
Economic exposure: dipendenza a lungo termine dai margini di rotta (GEO-Mix, provider di giochi).

Misure: forwards/NDF, opzioni (collars), bilanciamento GEO e fornitori.

9) Processi e regole di trazione

FX policy: limiti per posizione aperta per ogni valuta (ad esempio, non più del 20% del giro settimanale).
Exection rule - volume minimo di transazione, spread prugne, elenco di controparti.
Forecasting: 7/30/90 giorni di previsione delle esigenze di valuta netta (depositi - conclusioni - tasse - NOCE).
Hedge accounting (se necessario): documentazione delle relazioni «hedge position».
Calendario festività: influisce su funding/rolling reserve e «chiusura» FX.

10) Dati e modello (semplificato)


payments. transactions (
id, user_id, provider, method, type, status,
amount_original, currency_original, -- event amount and currency amount_wallet, wallet_currency, -- domestic gaming currency (if different)
reporting_currency, amount_reporting, - the sum in reporting currency of fx_source, fx_pair, fx_timestamp, fx_rate, - a course at the time of the event (usually settled_at)
fx_quote_type, fx_spread_bps, fx_reference_rate -- measurement of spread/quotation type settled_at, funded_at, conversion_owner, meta
)

treasury. funding_receipts (
funding_id, provider, bank_account, currency, amount,
received_at, value_date, fx_to_reporting, amount_reporting, meta
)

treasury. fx_reval_ledger (
id, date, currency, position_amount, rate_eod, amount_reporting_eod,
prev_rate_eod, reval_diff, type -- UNREALIZED/REALIZED
)

11) Accoppiamento e controllo qualità

11. 1. Allineamento dei corsi «nostri» con PSP/banca

Mappare «fx _ effective» (da settlement) a «fx _ reference» (dalla tua guida).
Alert se '| spread _ bps |> threshold' (ad esempio> 80 bps per le major).

11. 2. Qualità origine corsi

State-rates - Se «now - fx _ timestamp> X-minuti» all'arrivo dell'evento - alert e sorgente di emergenza.
Paragoni di triangolazione: 'fx (A→B) fx (B→C)' vs'fx (A→C) '- alert, logifichi la soluzione di bps.

12) Modelli SQL di esempio

12. 1. Normalizzazione delle transazioni nella valuta di segnalazione

sql
INSERT INTO dw. transactions_flat (...)
SELECT t. id, t. user_id, t. provider, t. method, t. type, t. status,
t. amount_original, t. currency_original,
t. reporting_currency,
ROUND(t. amount_original r. fx_rate, c. scale) AS amount_reporting,
r. source AS fx_source, r. pair AS fx_pair, r. fx_rate,
r. quote_type AS fx_quote_type, r. spread_bps,
t. settled_at, t. funded_at, t. conversion_owner, t. meta
FROM raw. transactions t
JOIN ref. fx_rates r
ON r. pair = CONCAT(t. currency_original, '/', t. reporting_currency)
AND r. ts = (SELECT MAX(ts) FROM ref. fx_rates
WHERE pair=r. pair AND ts <= t. settled_at)
JOIN ref. currencies c ON c. code = t. reporting_currency
WHERE t. settled_at BETWEEN:from AND:to;

12. 2. Decomposizione dell'effetto FX PSP (effettiva vs reference)

sql
SELECT provider, method, DATE(settled_at) AS d,
SUM(amount_reporting)                  AS amount_rep_ref,
SUM(settlement_amount_in_rep)              AS amount_rep_eff,
(SUM(settlement_amount_in_rep) - SUM(amount_reporting)) AS fx_slippage,
10000 (SUM(settlement_amount_in_rep) / NULLIF(SUM(original_amountfx_reference_rate),0) - 1) AS spread_bps
FROM dw. fx_settlement_view
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2,3
ORDER BY d;

12. 3. Rivalutazione giornaliera dei saldi di moneta multipla (unrealization FX)

sql
INSERT INTO treasury. fx_reval_ledger (date, currency, position_amount, rate_eod, amount_reporting_eod, prev_rate_eod, reval_diff, type)
SELECT
:eod_date AS date,
bal. currency,
bal. amount AS position_amount,
r_eod. fx_rate AS rate_eod,
bal. amount r_eod. fx_rate AS amount_reporting_eod,
COALESCE(l. prev_rate_eod, r_eod. fx_rate) AS prev_rate_eod,
bal. amount (r_eod. fx_rate - COALESCE(l. prev_rate_eod, r_eod. fx_rate)) AS reval_diff,
'UNREALIZED'::text
FROM treasury. balances bal
JOIN ref. fx_rates_eod r_eod
ON r_eod. pair = CONCAT(bal. currency, '/',:rep_ccy) AND r_eod. date =:eod_date
LEFT JOIN LATERAL (
SELECT rate_eod AS prev_rate_eod
FROM treasury. fx_reval_ledger
WHERE currency = bal. currency AND date =:eod_date - INTERVAL '1 day'
ORDER BY date DESC LIMIT 1
) l ON TRUE;

13) KPI e dashboard

FX Slippage (bps) - Differenza effettiva vs reference per PSP/metodo/MID.
Realization FX P&L (giorno/settimana/mese) e Unrealization FX (EoD/EoM).
Open FX Position per valute vs limiti di criterio.
Hedge Ratio - Quota di posizione coperta (forwards/NDF/options).
Stale-rate Incidents и Triangulation Mismatch.
Spread% of Volume (quanto è costato FX per quanto riguarda il volume processed).

14) Alerti e soglie

Status rates: nessun corso attuale> N minuti all'apice del traffico - P1.
Spread spike: 'spread _ bp'sopra la soglia maggiore/minore - P2.
Open position breach - Supera il limite per qualsiasi valuta - P1.
FX P&L shock: realization diurna FX sotto - X storico - indagine.
Crypto price gap: salto> Y% dalla finestra VWAP - Commutazione sorgente/pausa busta.

15) Best practices (breve)

1. Riconosce ND e metriche alimentari secondo il corso settled, senza rivalutazione retrospettiva.
2. Per FI/Striscia, conserva il secondo corso su funded _ at - vedrai il realizio FX.
3. Fissa sempre conversion _ owner, fx _ source, quote _ type, spread _ bps.
4. Fare una triangolazione attraverso l'ancoraggio (EUR/USD) con la logica.
5. Suddivisioni a livello GL.
6. In cripto, utilizzare una finestra VWAP anziché una singola teca.
7. Automatizzare gli alert sullo status rates e lo spread PSP anomalo.
8. Prevedere la necessità netta delle valute e utilizzare il naturale hedge + forward/NDF.

16) Assegno-foglio di implementazione

  • Guida dei corsi 'ref. fx _ rat'con EOD e intraday, memorizzazione dell'origine e quota type.
  • Витрины `transactions_flat`, `fx_settlement_view`, `funding_receipts`.
  • Triangulazione meccanica e registro del percorso dei corsi.
  • Contabilità FX a due livelli (ND/prodotto vs FI/sovrapprezzo).
  • Reval quotidiano dei residui di moneta.
  • Dashboard KPI (slippage, open position, FX P&L).
  • Criterio FX: limiti di posizioni, white-list di controparti, soglie di alert.
  • Procedura hedging (forwards/NDF/options) e flusso di documenti.

Riepilogo

La FX nel iGaming non è solo «rotta di moltiplicazione per importo». Questo è un intero sistema: punti di riconoscimento chiari, fonti di corso trasparenti, contabilità/unrealizzazione condivisa, controllo dello spread PSP e posizione aperta gestita. Implementando la guida standard FX, la normalizzazione «settle», le procedure reval e le regole FX comprensibili con gli strumenti hedge, si rimuove la volatilità da P&L e rende prevedibili i flussi di cassa.

Contact

Mettiti in contatto

Scrivici per qualsiasi domanda o richiesta di supporto.Siamo sempre pronti ad aiutarti!

Telegram
@Gamble_GC
Avvia integrazione

L’Email è obbligatoria. Telegram o WhatsApp — opzionali.

Il tuo nome opzionale
Email opzionale
Oggetto opzionale
Messaggio opzionale
Telegram opzionale
@
Se indichi Telegram — ti risponderemo anche lì, oltre che via Email.
WhatsApp opzionale
Formato: +prefisso internazionale e numero (ad es. +39XXXXXXXXX).

Cliccando sul pulsante, acconsenti al trattamento dei dati.