वॉलेट कहता है आपके पास 12.4 wstETH हैं। भाव दिखाने वाली साइट कहती है wstETH अभी 1.21 ETH का है। आप गुणा करते हैं और 15.004 ETH निकलता है।
फिर आप बेचते हैं और हाथ में आते हैं 14.87। वे 0.13 कहाँ गए?
क्योंकि स्टेकिंग टोकन के एक साथ दो दाम होते हैं: एक वह जो प्रोटोकॉल के स्मार्ट कॉन्ट्रैक्ट (अनुबंध) में लिखा है कि "मुझ पर आपका कितना बनता है", और दूसरा वह जो बाज़ार में अभी कोई देने को तैयार है। पहला प्रोटोकॉल के हिसाब से तय होता है और सिर्फ़ ऊपर जाता है; दूसरा उस पल के ख़रीदार-विक्रेता तय करते हैं और ऊपर-नीचे होता रहता है।
दोनों दाम कौन तय करता है
अनुबंध की दर प्रोटोकॉल का अपना बहीखाता है। वह लिखता है कि यह टोकन कितनी स्टेकिंग पोज़ीशन का हक़ है; संख्या वैलिडेटर के असली बैलेंस और इनाम से आती है और प्रोटोकॉल का ओरेकल उसे समय-समय पर अपडेट करता है। वह बाज़ार नहीं देखता, यह भी नहीं देखता कि आज कोई बेच रहा है या नहीं। निकासी के रास्ते पर प्रोटोकॉल इसी अनुपात से भुगतान करता है।
बाज़ार भाव वह है जिस पर सौदा हुआ। वह बताता है कि "अभी इसी वक़्त हाथ बदलना हो तो कितनी क़ीमत चुकानी पड़ेगी"। जिसे जल्दी है वही नुक़सान उठाता है, इसलिए यह भाव अनुबंध की दर से हटता रहता है — कभी नीचे (डिस्काउंट), कभी ऊपर (प्रीमियम)।
| अनुबंध की दर | बाज़ार भाव | |
|---|---|---|
| कौन तय करता है | प्रोटोकॉल का हिसाब और ओरेकल | उस पल के ख़रीदार और विक्रेता |
| क्या नीचे भी जाता है | सामान्य हालत में सिर्फ़ ऊपर; जुर्माना या नुक़सान हो तभी नीचे | कभी भी दोनों तरफ़ |
| किस रास्ते पर काम आता है | कतार से निकासी | सीधी बिक्री |
| कहाँ देखें | प्रोटोकॉल का आधिकारिक पेज, ब्लॉक एक्सप्लोरर | भाव साइट, एक्सचेंज, ऑन-चेन पूल |
| दोनों का अंतर कहलाता है | बाज़ार नीचे = डिस्काउंट; ऊपर = प्रीमियम | |
stETH में यह ख़ास तौर पर उलझता है
stETH की अनुबंध दर मोटे तौर पर 1 होती है और संख्या अपने आप बढ़ती है। इसलिए "stETH 0.998" देखते ही समझ आ जाता है कि 0.2% डिस्काउंट है।
wstETH और rETH में ऐसा नहीं है। उनकी संख्या स्थिर रहती है और दर बढ़ती जाती है, इसलिए भाव जन्म से ही 1 से ऊपर होता है।
मान लीजिए wstETH 1.21 पर बिक रहा है। यह डिस्काउंट है या प्रीमियम? यह उस वक़्त की दर पर निर्भर है: दर 1.22 हो तो डिस्काउंट, 1.20 हो तो प्रीमियम। अकेले 1.21 से कुछ तय नहीं होता।
फ़र्क़ आँकने के लिए बाज़ार भाव की तुलना हमेशा उस वक़्त की अनुबंध दर से कीजिए, 1 से नहीं। wstETH का भाव "ETH से काफ़ी ऊपर" दिखे तो वह सिर्फ़ जमा हुई दर है, मुनाफ़ा नहीं। उसका डॉलर भाव गिरे तो हो सकता है कि ETH ख़ुद गिर रहा हो; इसका टोकन के टूटने से कोई लेना-देना नहीं।
wstETH बेचने पर हिसाब से कम ETH क्यों मिलता है
खोलकर देखें तो आमतौर पर तीन परतें निकलती हैं, और तीनों का स्वभाव अलग है।
- अनुबंध दर और बाज़ार भाव का अंतर। यह "अभी हाथ बदलने" की क़ीमत है; बाज़ार तनाव में हो तो यह बड़ी हो जाती है। तीनों में कौन सबसे बड़ी है, यह आपकी रक़म और बेचने की जगह पर निर्भर है।
- स्लिपेज। आपके अपने ऑर्डर ने भाव बिगाड़ा। रक़म जितनी बड़ी, यह परत उतनी साफ़ — और कम चलने वाली जोड़ी पर तो और भी ज़्यादा।
- फ़ीस। पूल एक परत लेता है, एक्सचेंज अपनी, और ऑन-चेन करें तो चेन की फ़ीस अलग।
भाव साइट पर दिखने वाला दाम सिर्फ़ पहली परत का संकेत है; बाक़ी दो उसकी पकड़ से बाहर हैं। इसलिए "भाव × संख्या" हमेशा एक ऊपरी सीमा होती है, वह रक़म नहीं जो आपको मिलेगी। सच में कितना मिलेगा यह जानने के लिए जहाँ बेचना है वहीं रक़म डालकर "कितना मिलेगा" देख लीजिए।
सिर्फ़ एक अनुपात: बाज़ार भाव बटा अनुबंध दर
देखने लायक़ संख्या एक ही है: बाज़ार भाव को अनुबंध दर से भाग देकर निकला अनुपात।
यह 1 के आसपास हो तो सब ठीक; साफ़ कम हो तो डिस्काउंट; ज़्यादा हो तो प्रीमियम। इसका फ़ायदा यह है कि इकाई कट जाती है — stETH हो, wstETH हो या rETH, सबको एक ही पैमाने से नापा जा सकता है।
उसके बाद तय कीजिए कि कुछ करना है या नहीं। अनुपात 0.995 हो और कतार कुछ ही दिन की हो, तो सीधे बेच देना ठीक है, क्योंकि उस आधे प्रतिशत के लिए रुकना बेकार है। अनुपात 0.97 हो और कतार भी लंबी न हो, तब निकासी पर गंभीरता से सोचिए।
यही भाग इस साइट का डिस्काउंट कैलकुलेटर कर देता है, और साथ में इंतज़ार को सालाना दर में भी बदल देता है, जिससे पता चलता है कि रुकना वाक़ई फ़ायदे का है या नहीं।
भाव साइट पर डॉलर वाला दाम देखने से बचिए। टोकन का डॉलर भाव उसमें ETH की अपनी चाल भी मिला देता है, जिससे ध्यान भटकता है। इस तरह की संपत्ति के सारे फ़ैसले ETH की इकाई में करने चाहिए; डॉलर तब देखिए जब सचमुच नक़दी में बदलना हो।
दाम देखने की तीन जगहें, तीनों की अपनी कमी
भाव दिखाने वाली साइट
सबसे सुविधाजनक और सबसे भ्रामक। वहाँ जो दिखता है वह आमतौर पर कई जगहों का औसत होता है, जबकि आप सौदा सिर्फ़ एक जगह करेंगे। सुनसान समय में अलग-अलग जगहों के भाव में अच्छा-ख़ासा अंतर हो सकता है।
ऑन-चेन पूल
सबसे ईमानदार, क्योंकि वह सीधे बताता है कि "इतनी रक़म पर आपको असल में कितना मिलेगा" — स्लिपेज पहले से जुड़ा हुआ। कमी यह कि वह सिर्फ़ उसी एक पूल की हालत बताता है।
इस्तेमाल करते समय उतनी ही रक़म डालिए जितनी सचमुच बदलनी है। 1 टोकन का भाव देखकर गुणा मत कीजिए, क्योंकि पूल का भाव रैखिक नहीं होता, और यही बात उसे भाव साइट से ज़्यादा उपयोगी बनाती है।
अनुबंध ख़ुद
ब्लॉक एक्सप्लोरर से सीधे दर पढ़ लीजिए — बीच में कोई नहीं, यही प्रोटोकॉल का असली हिसाब है। पर यह वह दाम नहीं है जिस पर आप बेच पाएँगे; यह सिर्फ़ निकासी वाले रास्ते का आधार है।
इकाई के जाल से बचिए। कुछ इंटरफ़ेस wstETH का दाम stETH में दिखाते हैं, कुछ ETH में, कुछ डॉलर में। तीनों संख्याएँ दिखने में एक जैसी होती हैं पर मतलब बहुत अलग। कोई भी दाम देखते ही पहले यह तय कीजिए कि उसका हर क्या है।
एक बार करके देखिए: wstETH की अनुबंध दर ख़ुद पढ़िए
"अनुबंध से पढ़ लीजिए" सुनने में इंजीनियर का काम लगता है, असल में यह चार क्लिक की बात है। न वॉलेट जोड़ना पड़ता है, न एक पैसा ख़र्च होता है। wstETH के उदाहरण से एक बार कर लीजिए; बाक़ी टोकनों में तरीक़ा वही है, बस कॉन्ट्रैक्ट और फ़ंक्शन का नाम बदल जाता है।
- सही कॉन्ट्रैक्ट पता ढूँढ़िए। इथेरियम मेननेट पर wstETH का पता
0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0है, जो Lido की आधिकारिक डिप्लॉयड-कॉन्ट्रैक्ट सूची में दर्ज है। पता हमेशा इसी आधिकारिक सूची से कॉपी कीजिए — ब्लॉक एक्सप्लोरर में टोकन का नाम खोजकर किसी भी नतीजे पर मत क्लिक कीजिए। इसी नाम के नक़ली टोकन भरे पड़े हैं, और इन चार क़दमों में ग़लती की गुंजाइश सिर्फ़ यहीं है। - Contract टैब के नीचे Read Contract खोलिए। वहाँ गिने हुए रीड-ओनली फ़ंक्शनों की सूची दिखेगी, वर्णक्रम में लगी हुई।
stEthPerTokenखोलिए। Lido के कॉन्ट्रैक्ट दस्तावेज़ के अनुसार यह बताता है कि 1 wstETH कितने stETH के बराबर है। कोई इनपुट नहीं भरना पड़ता — खोलते ही मौजूदा मान दिख जाता है।- दशमलव वापस लगाइए। जो संख्या लौटती है वह 18 दशमलव वाला पूर्णांक है; जैसे
1210000000000000000का मतलब 1.21। यही 1.21 आपकी अनुबंध दर है। बाज़ार भाव को इससे भाग दीजिए और वही अनुपात मिल जाएगा जिसकी बात ऊपर हुई।
उसी सूची में दो फ़ंक्शन ऐसे हैं जिनसे भ्रम हो सकता है: tokensPerStEth() उल्टा अनुपात देता है (1 stETH कितने wstETH के बराबर), और getStETHByWstETH() में पहले मात्रा भरनी पड़ती है। सिर्फ़ डिस्काउंट है या नहीं यह देखना हो तो अकेला stEthPerToken काफ़ी है।
stETH के लिए इतनी मेहनत की ज़रूरत नहीं: उसकी बनावट ही ऐसी है कि अनुबंध दर 1 के आसपास रहती है और मात्रा ख़ुद बढ़ती है, इसलिए भाव साइट पर दिखने वाला 0.998 सीधे अनुपात के तौर पर इस्तेमाल हो सकता है। rETH के कॉन्ट्रैक्ट में getExchangeRate() पढ़िए; वह बताता है कि 1 rETH के पीछे कितने ETH हैं (यह भी 18 दशमलव वाला पूर्णांक है)।
Read Contract टैब आपके पैसे को छू भी नहीं सकता। उस पर सब कुछ सिर्फ़ पूछताछ है — न कोई लेनदेन जाता है, न हस्ताक्षर लगते हैं, न वॉलेट जोड़ना पड़ता है; ग़लत देख लेने पर भी कुछ नहीं बिगड़ता। पैसा असल में बग़ल वाले Write Contract टैब से चलता है — जब तक आपको ठीक-ठीक पता न हो कि आप क्या कर रहे हैं, उसे मत छेड़िए।