יוניסוואפ היא פלטפורמה ליצרני שוק אוטומטיים, שהם חוזים חכמים המחזיקים עתודות נזילות (או מאגרי נזילות, מוכר גם כ-Liquidity Pool) שסוחרים יכולים לסחור נגדם, במקום באמצעות יצרני שוק מהעולם האמיתי.
עתודות אלה ממומנות על ידי ספקי נזילות (Liquidity Providers). כל אחד יכול להיות ספק נזילות בכך שהוא מפקיד שני טוקנים בעל ערך שווה ב-Pool. בתמורה, סוחרים משלמים עמלה ל-Pool המחולקת לאחר מכן לספקי נזילות בהתאם לחלקם במאגר.
בואו נצלול איך זה עובד בפירוט רב יותר.
ספקי נזילות יוצרים שוק על ידי הפקדת ערך שווה ערך של שני אסימונים. אלה יכולים להיות למשל ETH וטוקני ERC-20, או שני טוקני ERC-20 שונים. ה-Pools האלה מורכבות בדרך כלל מטבעות יציבים (stablecoins) כמו DAI, USDC או USDT, אך זו אינה דרישה מחייבת. בתמורה, ספקי הנזילות מקבלים "טוקנים לנזילות", המייצגים את חלקם במאגר הנזילות כולו. ניתן לממש את טוקני הנזילות הללו תמורת החלק שהם מייצגים במאגר.
אז בואו ניקח למשל את מאגר הנזילות של ETH / USDT. נקרא לחלק ה-ETH של ה-Pool א' ולחלק ה-USDT ב'. יוניסוואפ לוקחת את שתי הכמויות הללו ומכפילה אותן כדי לחשב את סך הנזילות במאגר (א' כפול ב'). בוא נקרא לזה ג'. רעיון הליבה שעומד מאחורי יוניסוואפ הוא ש-ג' חייב להישאר קבוע, כלומר הנזילות הכוללת במאגר היא קבועה. אז הנוסחה לנזילות הכוללת בבריכה היא:
א * ב = ג
אז מה קורה כשמישהו רוצה לעשות עסקה (טרייד להחלפה)?
נניח שאדם קונה ETH אחד תמורת 300 דולר באמצעות מאגר הנזילות של ETH / USDT. בכך הוא מגדיל את החלק של USDT בבריכה ומקטין את החלק של ETH בבריכה. משמעות הדבר היא למעשה כי מחיר ה-ETH עולה.
למה? יש פחות ETH בבריכה לאחר העסקה, ואנחנו יודעים שהנזילות הכוללת (ג') חייבת להישאר קבועה. מנגנון זה הוא שקובע את התמחור. בסופו של דבר, המחיר המשולם עבור ETH מבוסס על המסחר משפיע על היחס בין א' ל-ב'.
ראוי לציין כי מודל זה אינו עולה בהדרגה בקנה מידה ליניארי. למעשה, ככל שעסקת ההחלפה גדולה יותר, כך היא משפיעה יותר על האיזון בין א' ל-ב'. משמעות הדבר היא כי הזמנות גדולות יותר יקרות באופן אקספוננציאלי בהשוואה להזמנות קטנות יותר, מה שמוביל לכמויות גדולות יותר ויותר של החלקה (Slippage). לפיכך ככל שמאגר הנזילות גדול יותר, כך קל יותר לעבד הזמנות גדולות. למה? ככל שיש יותר נזילות, המעבר בין א' ל-ב' קטן יותר.