GH GambleHub

کتاب ها و دوره های چند ارزی

1) «کتاب های چند ارزی» چیست ؟

دفترکل (Ledger) - یک دفترکل تراکنش دو ورودی (پستهای دو طرفه) که به طور همزمان در چندین ارز نگهداری میشود:
  • کیف پول: حساب بازیکن (ارز بازی/ارز).
  • کتاب حل و فصل: حل و فصل با PSP/تحصیل (ارز حل و فصل).
  • کتاب خزانه داری: حساب های بانکی، تبدیل، معاملات پرچین.
  • دفتر گزارش دهی: خلاصه ای در گزارش ارز (به عنوان مثال، EUR) بدون تجدید نظر گذشته نگر معیارهای محصول.

هر کتاب ارز معامله، ارز ارائه شده و نرخ در زمان شناخت را ثبت می کند.

2) سلسله مراتب ارزها و سیاست ها

1. ارز پایه/گزارشگری - ارز گزارشگری واحد (به عنوان مثال، EUR).
2. ارزهای کیف پول - ارزهای کیف پول (USD/EUR/TRY/UAH، و غیره).
3. ارز حل و فصل - آنچه PSP می فرستد (به عنوان مثال، USD).
4. ارزهای بانکی - ارز حساب بازرگان/خزانه داری.

قوانین و مقررات:
  • معیارهای محصول (ND/NGR/ARPPU) - در نرخ تاریخی رویداد (معمولا «حل و فصل _ at»).
  • امور مالی/خزانه داری - همچنین دوره های «funded _ at» و «payout _ at» را اصلاح کنید.
  • «پنهان» تجدید ارزیابی در نمایش مواد غذایی ممنوع است.

3) دوره ها و منابع آنها

مرجع روزانه (تیک/دقیقه): Refinitiv/ECB/بانک ها - برای عادی سازی رویدادها.
EOD (پایان روز): برای FX تحقق نیافته.
FX موثر: از فایل PSP/بانک (تبدیل واقعی).
Triangulation: از طریق یک لنگر (EUR یا USD) در صورت عدم نقل قول مستقیم.
سیاست نقل قول: "اواسط" либо "پیشنهاد/درخواست" → "اواسط ± spread_bps'. توزیع به طور جداگانه ذخیره می شود.

فروشگاه: 'fx _ source'، 'fx _ pair'، 'fx _ rate'، 'fx _ timestamp'، 'quote _ type'، 'spread _ bps' و مسیر triangulation.

4) نقاط تشخیص و لایه های دوره

'authorize _ at' - ما مسیر را درست نمیکنیم (بدون دستگیری هیچ شناختی وجود ندارد).
'captered/settled _ at' - دوره تاریخی برای لایه محصول و ND.
'funded _ at' - نرخ ارز در هر بانک (FX تحقق یافته برای FI/خزانه داری).
'payout _ at' - نرخ زمانی که به بازیکن پرداخت می شود.
«eod» نرخ پایان روز برای FX تحقق نیافته است.

5) دقت، گرد کردن، حداقل واحد

پول - کل واحدهای جزئی (int) + «مقیاس» در دایرکتوری ارز.
دوره ها - حداقل 8-10 رقم اعشار.
گرد کردن: بانک (نیمه حتی) برای گزارش ؛ در UI - قوانین محلی.
فیلدهای جداگانه را حفظ کنید: «مقدار _ اصلی»، «مقدار _ کیف پول»، «مقدار _ گزارش»، «مقدار _ موثر».

6) دو ورودی و کارت GL (ساده شده)

نمونه هایی از پست ها:

6. 1. DEPOSIT_CAPTURED (GBP، گزارش - EUR)

JT: AR: PSP (GBP)

Ct: تعادل بازیکن (GBP/EUR توسط کیف پول)

به موازات, رفع 'fx _ rate _ settle (GBP → EUR)' و 'مقدار _ گزارش'.

6. 2. FUNDING_RECEIVED (دلار آمریکا در هر بانک)

Dt: بانک USD

Ct: AR: PSP GBP (نزدیک معادل ؛ تفاوت → متوجه FX).

6. 3. WITHDRAWAL_PAID (سعی کنید)

Дт: مسئولیت: بازیکن (TRY)

Ct: بانک TRY (یا بانک EUR + تبدیل ؛ تفاوت - FX متوجه).

7) معماری داده (مدل حداقل)


ref. currencies (
code PK, scale, symbol, is_crypto, is_active
)

ref. fx_rates_intraday (
pair PK, ts PK, rate, quote_type, source, spread_bps, triangulation_meta
)

ref. fx_rates_eod (
pair PK, date PK, rate, source
)

ledger. entries (
entry_id PK, book, -- WALLET      SETTLEMENT      TREASURY      REPORTING debit_account, credit_account,
amount_original, currency_original,
amount_reporting, reporting_currency,
fx_rate_at_settle, fx_source, fx_pair, fx_timestamp,
event_type, event_id, user_id, provider, method,
occurred_at, created_at, meta
)

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

treasury. balances (
date PK, account PK, currency PK, amount
)

dw. transactions_flat (
tx_id PK, user_id, provider, method, type, status,
amount_original, currency_original,
amount_reporting, reporting_currency, fx_rate_at_settle,
settled_at, funded_at, conversion_owner, meta
)

8) جریان عادی (ETL/ELT)

1. مصرف مواد اولیه → عادی سازی وضعیت PSP.
2. اختصاص نرخ تاریخی به 'setted _ at' از 'fx _ rates _ intraday'.
3. یک معامله دوگانه را به دفتر مورد نظر (کیف پول/حل و فصل) بنویسید.
4. بودجه واردات جداگانه و FX موثر است.
5. بازنگری روزانه تعادل توسط 'fx _ rates _ eod' (کتاب خزانه داری).
6. ساخت پنجره فروشگاه (ND/NGR/LTV) بدون ارزیابی مجدد.

9) سازگاری و سازگاری

Tx → File: همه دستگیر/حل و فصل در فایل PSP بودند (با مقدار/ارز/تاریخ).
File → Tx: همه چیز در فایل در کتابها/معاملات منعکس شده است.
مرجع FX در مقابل موثر: شمارش 'slippage _ bps' ؛ هشدار برای رفتن فراتر از آستانه.
بررسی مثلث بندی: «A → B → C» ≈ «A → C» در یک bps-tolerans.
Idempotency: «event _ id» و «idempotency _ key» - حفاظت در برابر تکراری.

10) سناریوهای مکرر و نحوه انجام آنها

چند کیف پول: کیف پول بازیکن می تواند در یک ارز متفاوت از سپرده باشد - تبدیل داخلی را با نرخ خود انجام دهید (سیاست تبدیل _ مالک = «MERCHANT»).
تبدیل PSP: فروشگاه «fx _ effective»، «fx _ reference» و «spread _ bps» برای تجزیه و تحلیل حاشیه PSP.
رمزنگاری: نمره پنجره VWAP ؛ بودجه در اصطبل لایه دوم FX است.
انتقال کیف پول متقابل: حرکت در داخل پلت فرم - بدون درآمد FX، فقط بین کتاب ها انتقال می یابد.

11) قالب های SQL

11. 1. عادی سازی مقدار به ارز گزارش در نرخ تاریخی

sql
SELECT t. tx_id,
t. amount_original,
t. currency_original,
r. rate AS fx_rate_at_settle,
ROUND(t. amount_original r. rate, rep. scale) AS amount_reporting
FROM raw. transactions t
JOIN ref. fx_rates_intraday r
ON r. pair = CONCAT(t. currency_original, '/',:reporting_ccy)
AND r. ts = (
SELECT MAX(ts) FROM ref. fx_rates_intraday
WHERE pair = r. pair AND ts <= t. settled_at
)
JOIN ref. currencies rep ON rep. code =:reporting_ccy
WHERE t. settled_at BETWEEN:from AND:to;

11. 2. اندازه گیری گسترش PSP (موثر در مقابل مرجع)

sql
SELECT provider, method, DATE(settled_at) AS d,
SUM(original_amount fx_reference_rate) AS ref_in_reporting,
SUM(settlement_amount_in_reporting)   AS eff_in_reporting,
10000 (SUM(settlement_amount_in_reporting) /
NULLIF(SUM(original_amount fx_reference_rate),0) - 1) AS spread_bps
FROM dw. fx_settlement_view
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2,3;

11. 3. FX تحقق نیافته

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

12) KPI و داشبورد

FX لغزش (BPS) توسط PSP/روش/اواسط.
متوجه FX P&L (بودجه/پرداخت) и FX تحقق نیافته (EOD/EOM).
باز کردن موقعیت FX توسط ارز در مقابل محدودیت های سیاست.
دوره های «به موقع» نرخ ضربه (حوادث نرخ ثابت).
سهم تبدیل PSP در مقابل تبدیل Merchant و TCO آن.
دقت گرد کردن (انحراف مقادیر ≥ 1 واحد جزئی - پرچم).

13) هشدار و آستانه

Stale rate: no rate at the time of the event → منبع ذخیره/ذخیره.
عدم تطابق سه ضلعی: واگرایی> X bps.
اسپرد اسپرد: 'spread _ bps' بالاتر از آستانه در رشته های اصلی/رشته.
نقض موقعیت باز: بیش از حد مجاز برای هر ارز.
شوک مجدد: ارزیابی مجدد روزانه <− X σ یا> + X σ - مرور.

14) بهترین شیوه (کوتاه)

1. به شدت جدا لایه محصول (FX تاریخی) و FI/خزانه داری (بودجه/پرداخت/reval).
2. از واحدهای جزئی استفاده کنید و دوره ها را با دقت بالا ذخیره کنید.
3. conversion_owner را وارد کنید و حاشیه PSP را اندازه گیری کنید (موثر در مقابل مرجع).
4. پیادهسازی idempointency رویداد و آشتی دو طرفه (Tx → File و File → Tx).
5. نگه داشتن ارز لنگر برای triangulation و اعتبار اختلاف در bps.
6. تعادل را با یک روش EOD با یک GL جداگانه ارزیابی کنید.
7. DST/timezones در نظر بگیرید هنگام اختصاص دوره به حل و فصل/بودجه.
8. به طور منظم تست های مبتنی بر ملک را در مرزهای مقیاس تست کنید.

15) چک لیست پیاده سازی

  • گزارش ارز و سیاست FX تاریخی تعریف شده است.
  • منابع دوره: روزانه + EOD، به روز رسانی مجدد و SLA.
  • مدل ها. entries ',' fx _ rates _ ',' funding _ receipts ',' balances ', витрина transactions _ flat'.
  • مکانیسم Triangulation و مسیر ورود به سیستم.
  • Алерты: نرخهای قدیمی، اسپرد اسپرد، عدم تطابق مثلثی، نقض موقعیت باز.
  • داشبورد KPI و گزارش های آشتی PSP/بانک.
  • رویه های reval و GL های جداگانه برای FX تحقق یافته/تحقق نیافته.
  • مجموعه تست دقت گرد و ذخیره سازی.

خلاصه

کتاب های چند ارزی یک رشته جدایی لایه هستند: FX تاریخی برای یک محصول، واقعی برای یک trejerie، تجدید نظر EOD برای ترازنامه. با استفاده از منابع نرخ شفاف، یک مدل داده دقیق، دو ورودی و آشتی خودکار، شما «سر و صدای ارز» را از تجزیه و تحلیل حذف می کنید، حسابرسی را انجام می دهید و خطر FX را در کسب درآمد جهانی مدیریت می کنید.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.