ธุรกิจควรจัดโครงสร้าง TRON Energy อย่างไรสำหรับการโอน TRC-20 ปริมาณสูง
ปัญหาของการปฏิบัติต่อทุกการโอนเหมือนกัน
ผู้ใช้ TRON ส่วนใหญ่คิดถึงพลังงานในแง่ต่อธุรกรรม กรอบความคิดนี้ใช้ได้ดีเมื่อคุณส่ง USDT เพียงไม่กี่ครั้งต่อสัปดาห์ หากคุณดำเนินการ exchange, payment processor หรือ withdrawal engine ที่ผลักดันการโอน TRC-20 หลายพันครั้งต่อวัน มุมมองต่อธุรกรรมจะทำให้คุณเสีย TRX ไปมากอย่างเงียบ ๆ
ประเด็นหลักคือโมเดลทรัพยากรของ TRON ให้รางวัลแก่การบริโภคที่คาดการณ์ได้และการผูกมัดเงินทุนที่มีโครงสร้าง ธุรกิจที่เข้าใจว่า staking, การมอบหมาย และระยะเวลาเช่าทำงานร่วมกันอย่างไร จะจ่ายต่อการโอนน้อยกว่าผู้ที่เผา TRX แบบตอบโต้ในตลาดพลังงาน spot อย่างมีนัยสำคัญ บทความนี้จะอธิบายกลไกที่แท้จริงและวิธีจัดโครงสร้างกลยุทธ์พลังงานของคุณรอบ ๆ ปริมาณจริง
TRON จัดสรรพลังงานในระดับบัญชีอย่างไร
ทุกบัญชี TRON มีขีดจำกัดพลังงานที่มาจากแหล่งใดแหล่งหนึ่งในสองแหล่ง: TRX ที่ stake ไว้สำหรับพลังงานผ่าน Stake 2.0 (ความจุของคุณเอง) หรือพลังงานที่ที่อยู่อื่นได้มอบหมายให้คุณ (ความจุที่ได้รับ) เมื่อมีการเรียกใช้ smart contract เครือข่ายจะหักพลังงานจากยอดคงเหลือที่ใช้ได้ของบัญชีคุณ โดยใช้การมอบหมายที่ได้รับก่อน แล้วจึงใช้พลังงานที่คุณ stake เอง หากทั้งสองไม่ครอบคลุมการเรียกใช้ เครือข่ายจะเผา TRX จากบัญชีคุณเพื่อชดเชยส่วนต่าง
พลังงานจะฟื้นฟูเป็นเส้นตรงตลอด 24 ชั่วโมง: บัญชีที่ใช้งบประมาณพลังงานเต็มจะฟื้นฟูทั้งหมดในวันถัดไป ไม่มีกลไก surge หรือหน้าผาการฟื้นตัวบางส่วนที่ต้องวางแผนรับมือ สิ่งที่เปลี่ยนแปลงในแต่ละวันคืออัตราส่วนระดับเครือข่ายของ TRX ที่ stake ไว้ต่ออุปทานพลังงาน ซึ่งจะเปลี่ยนพลังงานต่อ TRX ที่ stake ไว้ที่คุณได้รับจริง เมื่อ TRX ถูก stake สำหรับพลังงานมากขึ้นทั่วเครือข่าย ส่วนแบ่งของคุณในงบประมาณพลังงานรวมที่คงที่จะลดลงตามสัดส่วน
Stake 2.0 (ใช้งานบน mainnet ตั้งแต่เมษายน 2023) แยกการ staking ออกจากการมอบหมาย: คุณ stake TRX ไปยังกลุ่มทรัพยากร แล้วแยกการมอบหมายความจุที่ stake นั้นไปยังที่อยู่ใดก็ตามที่ต้องการ การถอน stake พื้นฐานยังคงใช้เวลา 14 วันบน mainnet แต่การเปลี่ยนเส้นทางการมอบหมายระหว่างบัญชีที่คุณควบคุมจะเกิดขึ้นทันทีเมื่อการมอบหมายไม่ถูกล็อก นี่คือสิ่งที่ทำให้สถาปัตยกรรมแบบ treasury ใช้งานได้จริงสำหรับธุรกิจ
การโอน TRC-20 ใช้ทรัพยากรอะไรจริง ๆ
การโอน USDT มาตรฐานใช้พลังงานประมาณ 65,000 เมื่อผู้รับมี USDT อยู่แล้ว และประมาณ 130,000 เมื่อยอดคงเหลือ USDT ของผู้รับเป็นศูนย์ (การโอนครั้งแรกจ่ายค่าจัดเก็บสำหรับการสร้างรายการยอดคงเหลือของพวกเขา) การใช้ bandwidth อยู่ที่ประมาณ 345 ไบต์ ซึ่งเทียบเท่ากับ 345 หน่วย bandwidth (TRON คิด 1 bandwidth ต่อ 1 ไบต์) ทุกบัญชีจะได้ 600 bandwidth ฟรีต่อวัน ดังนั้นการโอนส่วนใหญ่จะครอบคลุม bandwidth จากกลุ่มฟรี เมื่อกลุ่มฟรีหมด เครือข่ายจะเผา TRX ในอัตรา 1000 SUN per byte (ดังนั้นการโอน 345 ไบต์จะมีค่าเผาประมาณ 0.345 TRX) สำหรับการดำเนินการส่วนใหญ่ bandwidth ไม่ใช่คอขวด พลังงานต่างหากที่เป็น
ที่ 65,000 พลังงานต่อการโอน แพลตฟอร์มที่ทำการถอน 2,000 ครั้งต่อวันจะใช้พลังงาน 130 ล้านต่อวัน การรักษาระดับนั้นจาก TRX ที่ stake เองล้วน ๆ ต้องใช้เงินทุนจำนวนมากที่ผูกอยู่ในยอดคงเหลือแช่แข็งที่ไม่สร้างรายได้ นั่นคือเหตุผลที่การดำเนินการปริมาณสูงมักจะรวมพื้นฐานของพลังงานที่ stake เองเข้ากับความจุที่เช่าสำหรับส่วนที่เหลือ
คุณได้อะไรจริง ๆ เมื่อเช่า
ส่วนนี้ทำให้ผู้ซื้อใหม่สับสน เมื่อคุณเช่าพลังงาน N สำหรับระยะเวลา D จาก tronenergyrent.com บริการจะ stake TRX ของตัวเองและมอบหมายตำแหน่งที่ stake นั้นให้กับที่อยู่ของคุณเป็นระยะเวลา D ซึ่งแปลเป็นพลังงาน N หน่วยที่ส่งไปยังบัญชีของคุณในวันแรกของการเช่า คุณสามารถใช้ N นั้นในช่วงเวลาเช่าผ่านการโอนกี่ครั้งก็ได้ตามต้องการ มันจะไม่ฟื้นฟูระหว่างการเช่า หากคุณใช้หมดในชั่วโมงแรกของการเช่า 30 วัน คุณต้องวางคำสั่งเช่าอีกครั้งเพื่อดำเนินการต่อ
แล้วทำไมการเช่า 30 วันถึงแพงกว่าการเช่า 1 ชั่วโมงสำหรับพลังงานปริมาณเท่ากัน? เพราะ TRX ของบริการต้องคง stake ไว้ (และดังนั้นจึงไม่ได้รับ yield, ไม่พร้อมสำหรับการซื้อขาย, ไม่สามารถคืนได้ทันที) ตลอดระยะเวลาทั้งหมด คุณกำลังจ่ายค่า opportunity cost ของการล็อกเงินทุนของแพลตฟอร์ม ไม่ใช่ค่าการส่งมอบพลังงานต่อเนื่อง ยิ่งคุณผูกมัดนานเท่าใด แพลตฟอร์มยิ่งต้องกันเงินทุนไว้มากขึ้น และราคาที่กำหนดในหน่วย TRX ยิ่งสูงขึ้น
ผลทางปฏิบัติ: เลือกระยะเวลาเช่าตามว่าคุณจะใช้พลังงานที่เช่าหมดเร็วแค่ไหน ไม่ใช่ว่าคุณต้องการให้พลังงาน "พร้อมใช้งาน" นานแค่ไหน การเช่าพลังงาน 65,000 สำหรับ 30 วันในขณะที่คุณจะใช้หมดในการโอนครั้งเดียวบ่ายนี้ถือเป็นการสิ้นเปลือง คุณจะจ่ายอัตรา 30 วันโดยไม่ใช้หน้าต่างความพร้อมใช้งานที่ยาวกว่า เช่าในระยะเวลาที่สั้นที่สุดที่ครอบคลุมหน้าต่างการบริโภคของคุณได้อย่างสบาย
ระยะเวลาเช่าและสิ่งที่คณิตศาสตร์บอกจริง ๆ
ราคาเช่ากำหนดในหน่วย TRX และลอยตัวอย่างต่อเนื่องตามตลาดพลังงานบน chain ลำดับสัมพัทธ์ระหว่างช่วงเวลาคงที่: 1h ถูกที่สุด 30d แพงที่สุดสำหรับพลังงานปริมาณเท่ากัน ตัวเลข TRX สดสำหรับขนาดและระยะเวลาเช่าใด ๆ อยู่ที่ หน้าราคา ไม่ใช่ในบทความนี้ ดังนั้นจะไม่ล้าสมัยเมื่อตลาดเคลื่อนไหว
สำหรับธุรกิจที่รองรับปริมาณคงที่ การเคลื่อนที่ถูกต้องคือการแบ่งปริมาณรวมต่อวันเป็นขนาดเช่าที่ตรงกับหน้าต่างการบริโภคจริง รูปแบบที่ใช้งานได้จริงสองแบบ:
- รูปแบบ steady-state หากคุณผลักดันการโอน N ครั้งในช่วงเวลารายชั่วโมงที่คาดการณ์ได้ ให้เช่าพลังงาน
N × 65,000ที่ระดับ1hทุกชั่วโมง ค่าใช้จ่ายต่อการโอนคืออัตรา1hที่ประกาศ หารด้วยจำนวนการโอนต่อการเช่า ตรวจสอบง่าย แก้ปัญหาง่ายถ้ามีอะไรค้าง - รูปแบบ batch ที่โหลดล่วงหน้า หากคุณประมวลผล batch การจ่ายเงินคงที่ (เช่น การ settlement กลางคืนที่ผลักดันการโอน 500 ครั้งพร้อมกัน) ให้เช่าพลังงานเท่ากับ batch ทั้งหมดที่ระดับ
1hก่อนที่ batch จะเริ่ม คุณจ่ายครั้งเดียว การโอนทั้งหมดใช้จากกลุ่มที่มอบหมายเดียวกัน การเช่าหมดอายุไม่นานหลังจาก batch เสร็จสิ้น
ระดับ 1d และยาวกว่าไม่ได้ให้ส่วนลดต่อการโอน เว้นแต่คุณต้องการให้พลังงานพร้อมใช้งานในหน้าต่างที่ยาวกว่านั้นจริง ๆ พวกมันรองรับความต้องการที่แตกต่าง: การผูกมัดความจุล่วงหน้าเมื่อคุณต้องการหลีกเลี่ยงการวางคำสั่งเช่าระหว่างหน้าต่าง load สูงที่รู้ล่วงหน้า (การเปิดตัว token, event การ listing บน exchange, การ dump ที่รู้ว่ากำลังจะมา ซึ่ง gateway ของคุณคาดว่าคำสั่งซื้อจะพุ่งขึ้น)
การมอบหมายแบบ Treasury สำหรับการดำเนินการหลายกระเป๋า
หากการดำเนินการของคุณใช้ hot wallet หลายตัว หนึ่งตัวต่อคู่สกุลเงิน หนึ่งตัวต่อภูมิภาค หนึ่งตัวต่อบริการ แต่ละกระเป๋าต้องการพลังงานของตัวเอง สองตัวเลือก: stake TRX ในแต่ละกระเป๋าแยกกัน หรือใช้ treasury wallet กลางในการ stake และมอบหมายพลังงานออกไป
โมเดล treasury แทบจะดีกว่าเสมอ บัญชี treasury เดียวถือ TRX ที่ stake ไว้และใช้การเรียก delegateresource contract เพื่อผลักดันความจุพลังงานไปยังที่อยู่ผู้รับหลายแห่ง เมื่อคุณต้องการ rebalance ให้เรียก undelegateresource จาก treasury และมอบหมายความจุที่ปลดปล่อยใหม่ให้ผู้รับรายอื่น ไม่มีขั้นตอนใดที่ต้องการการถอน stake TRX เอง คุณเพียงเปลี่ยนเส้นทางความจุที่มีอยู่
การเรียก delegateresource รับพารามิเตอร์ lock หาก lock=true การมอบหมายไม่สามารถเพิกถอนได้เป็นระยะเวลาล็อกขั้นต่ำ (ปัจจุบันคือ 3 วัน) หาก lock=false (ค่าเริ่มต้นสำหรับ flow ภายในที่ยืดหยุ่นที่ธุรกิจใช้) ผู้มอบหมายสามารถเรียกคืนได้ทุกเมื่อ การมอบหมาย treasury ภายในส่วนใหญ่ควรใช้ lock=false เพื่อความยืดหยุ่น การมอบหมายแบบล็อกจะสมเหตุสมผลก็ต่อเมื่อคู่สัญญายืนกรานเรื่องการรับประกัน
แต่ละการมอบหมายเป็นแบบบัญชีต่อบัญชีและเฉพาะเจาะจง คุณสามารถมอบหมายพลังงานมูลค่า 200,000 ของ stake ให้กระเป๋า A และ 500,000 ให้กระเป๋า B จาก treasury เดียวกันพร้อมกันได้ ตัว treasury เองไม่ต้องส่งการโอน มันเพียงถือเงินทุนและประสานงานการมอบหมาย
ระบบอัตโนมัติผ่าน API
การจัดการพลังงานด้วยตนเองไม่ scale เมื่อเกินกว่ากระเป๋าจำนวนหยิบมือ สำหรับระบบ production คุณต้องการการตรวจสอบที่เฝ้าดูพลังงานของแต่ละ hot wallet และทริกเกอร์การเช่าตามต้องการ tronenergyrent.com API เปิดเผยสิ่งนั้นเป็น HTTP GET endpoint ธรรมดาพร้อม query parameters: place-energy-order สำหรับการวางคำสั่งเช่า, single-order-details สำหรับการ poll สถานะคำสั่งซื้อ และ account-info สำหรับการตรวจสอบยอดคงเหลือชำระล่วงหน้าของคุณ การยืนยันตัวตนคือ query parameter apiKey ที่คุณสร้างจาก แดชบอร์ด ไม่มีการยืนยันตัวตนผ่าน header และไม่มี JSON body สำหรับ endpoint เหล่านี้
loop การตรวจสอบทั่วไป:
- ทุกนาที สอบถามพลังงานของแต่ละ hot wallet ผ่าน
wallet/getaccountresourceบน TRON full node (api.trongrid.io) คำนวณความจุที่เหลือเป็นEnergyLimit - EnergyUsed - หากความจุที่เหลือลดต่ำกว่า safety buffer ของคุณ (เช่น น้อยกว่า 30 นาทีของปริมาณการโอนที่คาดไว้) ให้เรียก
place-energy-orderด้วยperiod=1hและปริมาณพลังงานที่คุณต้องการ - Poll
single-order-detailsด้วยorderIdที่ส่งคืน จนกว่าstateจะเปลี่ยนเป็นENERGY_DELEGATED(โดยปกติหนึ่งหรือสองครั้ง poll) จากนั้นกลับมา broadcast การโอนต่อ - บันทึก
requestIdในการตอบกลับ API ทุกครั้ง เพื่อให้ฝ่ายสนับสนุนสามารถติดตามคำสั่งซื้อเฉพาะได้หากมีอะไรค้าง
รูปแบบนี้ทำให้คุณดำเนินการแบบ lean ได้ คุณไม่ได้ถือความจุสูงสุด 30 วันสำรองไว้ตลอดเวลา คุณรักษา buffer สดเล็กน้อย ระบบอัตโนมัติการเติม และใช้แดชบอร์ดสำหรับการกำกับดูแลด้วยตนเองและการทบทวนความผิดปกติ
การเปิดใช้งานที่อยู่ผู้รับ
หากผู้รับของคุณรวมถึงที่อยู่ TRON ใหม่ที่ไม่เคยรับ TRX มาก่อน พวกเขายังไม่ได้เปิดใช้งานบน chain และไม่สามารถรับพลังงานที่มอบหมายได้จนกว่าการเปิดใช้งานจะเกิดขึ้น สองวิธีในการจัดการสิ่งนี้ใน pipeline ปริมาณสูง:
- เปิดใช้งานผู้รับด้วยตัวเองล่วงหน้าโดยส่ง TRX จำนวนเล็กน้อยจาก treasury wallet ไปยังที่อยู่ใหม่แต่ละแห่งก่อนที่จะถึงคิวการโอน คุณจัดการขั้นตอนการเปิดใช้งานอย่างชัดเจนและสามารถทำเป็น batch แยกจาก flow การโอนได้
- ให้ rental API เปิดใช้งานผู้รับเป็นส่วนหนึ่งของการเรียกเช่า: ส่ง
preActivateDestinationAddress=1ในคำขอplace-energy-orderและบริการจะเปิดใช้งานที่อยู่ก่อนมอบหมายพลังงาน ค่าเปิดใช้งาน (1.5 TRX) จะถูกหักจากยอดคงเหลือชำระล่วงหน้าของคุณ
สำหรับ batch ที่คาดการณ์ได้ซึ่งคุณสามารถเปิดใช้งานล่วงหน้าได้ก่อนเวลานาน เส้นทางการเปิดใช้งานด้วยตัวเองทำให้ hot wallet ของคุณเรียบง่ายกว่า สำหรับการโอนเฉพาะกิจที่สถานะการเปิดใช้งานแตกต่างกันไปตามผู้รับ การให้ rental API จัดการการเปิดใช้งานในการเรียกเดียวกันจะหลีกเลี่ยงเส้นทาง code แยกสำหรับการตรวจสอบ "ผู้รับเปิดใช้งานแล้วหรือยัง"
การคำนึงถึงความผันผวนของราคา TRX
ราคาเช่ากำหนดในหน่วย TRX และ TRX เองมีความผันผวนของราคาเทียบกับดอลลาร์ ค่าใช้จ่ายจริงของคุณในหน่วย USD ต่อการโอนคือผลคูณของอัตราเช่าที่กำหนดในหน่วย TRX และอัตรา spot TRX/USD ในขณะบริโภค เมื่อ TRX แข็งค่าขึ้น ค่า USD ต่อการโอนของคุณจะเพิ่มขึ้นแม้ว่าราคา TRX ของพลังงานจะคงที่
การตอบสนองที่ใช้งานได้จริงสองอย่าง ประการแรก ปฏิบัติต่อค่าพลังงานของคุณเป็นรายการที่กำหนดในหน่วย TRX ภายในแทนที่จะแปลงเป็น USD อย่างต่อเนื่อง สิ่งนี้ทำให้การแกว่งราคาระยะสั้นเรียบขึ้นจาก metric การดำเนินการของคุณ และป้องกันคุณจากการซื้อมากเกินไปแบบตอบโต้ระหว่างการพุ่งขึ้นชั่วคราว ประการที่สอง เมื่อ TRX ซื้อขายที่ค่า USD สูงขึ้น พิจารณาถ่วงน้ำหนักการเช่าของคุณให้ยาวขึ้นเล็กน้อย (คุณผูกมัดเงินทุนที่กำหนดในหน่วย TRX เท่ากัน แต่ล็อกความครอบคลุมการเช่ามากขึ้นในช่วงที่ TRX แพงเชิงโครงสร้าง) การเคลื่อนไหวทั้งสองเป็นการเพิ่มประสิทธิภาพเล็กน้อย ไม่ใช่ชัยชนะด้านต้นทุนระดับหัวข้อข่าว ตัวเลือกเชิงโครงสร้างที่สำคัญที่สุดคือการจับคู่ระยะเวลาเช่ากับรูปแบบการบริโภคจริง ไม่ใช่การไล่ตามแผนภูมิ TRX/USD
หากค่าใช้จ่ายจริงต่อการโอนของคุณ (ค่าเฉลี่ย 30 วัน rolling) เลื่อนขึ้นเมื่อเวลาผ่านไป นั่นมักชี้ไปที่หนึ่งในสองสิ่ง: การคาดการณ์ปริมาณของคุณคลาดเคลื่อนและคุณกำลังเช่ามากกว่าที่บริโภคอย่างสม่ำเสมอ หรืออัตราส่วน TRX-ที่-stake-ต่อพลังงานทั่วทั้งเครือข่ายได้เปลี่ยนไปในทางที่ไม่เอื้ออำนวย ติดตามทั้งสองและทบทวนกลยุทธ์ของคุณเมื่อสิ่งใดเคลื่อนไหวอย่างมีนัยสำคัญ แทนที่จะตอบสนองต่อราคา spot ทีละการเช่า