Cách giảm phí giao dịch chuyển USDT TRC-20: năng lượng, bandwidth, và phép tính chi phí thực tế
Tại sao giao dịch chuyển TRC-20 lại có chi phí như vậy
Một giao dịch chuyển USDT trên TRON không phải là một sự dịch chuyển giá trị đơn giản. Đó là một cuộc gọi hợp đồng thông minh đến transfer(address,uint256) trên hợp đồng Tether, có nghĩa là Máy ảo TRON khởi động, tải trạng thái hợp đồng, thực thi bytecode, cập nhật hai storage slot (số dư của người gửi và người nhận), và phát ra một sự kiện Transfer. Tất cả những điều đó đều có giá tài nguyên.
TRON tính phí cho hai loại tài nguyên riêng biệt: năng lượng bao phủ tính toán VM, và bandwidth bao phủ các byte giao dịch thô. Một giao dịch chuyển USDT TRC-20 tiêu chuẩn tiêu thụ khoảng 65,000 energy và 345 bandwidth. Bạn cần cả hai, mọi lúc, không có ngoại lệ.
Điểm mấu chốt mà hầu hết người dùng bỏ qua: các tài nguyên này có thể đến từ hai nơi hoàn toàn khác nhau, và lựa chọn đó là điều thúc đẩy chi phí thực tế trên mỗi giao dịch chuyển của bạn.
Hai nguồn tài nguyên và mỗi nguồn tốn bao nhiêu
Mỗi tài khoản TRON kiếm được năng lượng và bandwidth bằng cách staking TRX (Stake 2.0, thông qua hợp đồng hệ thống freezebalancev2). Nếu tài khoản của bạn có đủ TRX đã staking để bao phủ cả hai tài nguyên, các giao dịch chuyển của bạn không tốn TRX nào về phí. Nếu bạn không có đủ tài nguyên đã staking, TRON sẽ đốt TRX từ tài khoản của bạn thay vào đó, theo tỷ lệ đốt động hiện tại của mạng lưới.
Bandwidth thì rẻ. 345 bandwidth mà một giao dịch chuyển cần có thể được bao phủ bởi một khoản stake nhỏ, hoặc thậm chí bởi 600 bandwidth miễn phí mà mỗi tài khoản nhận được hàng ngày. Năng lượng mới là phần đắt đỏ. 65,000 energy từ việc đốt thường tốn vài đô la cho mỗi giao dịch chuyển ở mức giá TRX điển hình, đó là lý do tại sao người dùng giao dịch chuyển mà không có tài nguyên đã staking cuối cùng lại trả nhiều phí hơn người dùng Ethereum vào một ngày yên tĩnh.
Chi phí đốt TRX chính xác dịch chuyển theo tải mạng lưới, vì vậy thay vì trích dẫn một con số sẽ lỗi thời, hãy kiểm tra trang giá để xem con số hiện tại trước khi đưa ra quyết định.
Stake 2.0: cách staking năng lượng thực sự hoạt động
Dưới Stake 2.0 (hoạt động trên mainnet từ tháng 4 năm 2023), bạn gọi freezebalancev2(amount, 0, resource_type) trong đó resource_type = 1 có nghĩa là năng lượng. Số TRX đã staking bị khóa nhưng không bị tiêu. Tài khoản của bạn tích lũy dung lượng năng lượng tương ứng với stake của bạn so với tổng năng lượng đã được staking trên toàn mạng lưới. Tỷ lệ đó dao động, vì vậy lợi suất năng lượng trên mỗi TRX thay đổi theo thời gian.
Một thay đổi quan trọng của Stake 2.0: bạn giờ đây có thể ủy quyền năng lượng cho một địa chỉ khác mà không cần chuyển TRX. Cuộc gọi delegateresource cho phép bạn gán năng lượng đã staking của mình cho một địa chỉ người nhận, và theo mặc định, việc ủy quyền có thể bị thu hồi bất kỳ lúc nào. Có một cờ lock tùy chọn: nếu bạn đặt lock=true, việc ủy quyền không thể bị thu hồi trong thời gian khóa tối thiểu (hiện tại là 3 ngày). Không có cờ đó, bạn có thể rút lại việc ủy quyền bất cứ khi nào bạn muốn. Mô hình linh hoạt này là nền tảng để các dịch vụ thuê năng lượng xây dựng bên trên.
Đối với một ví đơn lẻ thực hiện các giao dịch chuyển thỉnh thoảng, việc staking TRX của riêng bạn có ý nghĩa ở một mức khối lượng nhất định. Nhưng điểm hòa vốn xa hơn so với những gì người ta nghĩ, vì TRX của bạn bị khóa (việc unfreeze dưới Stake 2.0 mất thời gian chờ 14 ngày), và lợi suất năng lượng trên mỗi TRX là động, không cố định.
Thuê năng lượng: khi nào rẻ hơn đốt hay staking
Thuê năng lượng ủy quyền năng lượng đã staking cho địa chỉ của bạn trong một khoảng thời gian cố định: 1 giờ, 1 ngày, 3 ngày, hoặc 30 ngày. Bạn trả bằng TRX, sử dụng năng lượng cho các giao dịch chuyển trong khoảng thời gian đó, và sau đó nó hết hạn. Không có stake bị khóa ở phía bạn, không có thời gian chờ unfreeze 14 ngày.
Giá TRX trên mỗi cấp độ thời lượng dịch chuyển theo thị trường và chi phí vốn của nền tảng. Cấp độ 1 giờ là rẻ nhất về TRX tuyệt đối, cấp độ 30 ngày là đắt nhất vì TRX cơ bản của nền tảng bị khóa lâu hơn. Để biết các con số TRX trên mỗi cấp độ hiện tại, hãy xem giá.
Phép tính khi bạn gộp lô thì rất đơn giản: năng lượng được thuê được giao dưới dạng một bể cố định đối với địa chỉ của bạn cho khoảng thời gian thuê. Nó không nạp lại giữa chừng đợt thuê. Nếu bạn cần bao phủ 20 giao dịch chuyển USDT trong một ngày, hãy thuê đủ năng lượng để bao phủ cả 20 (vì vậy khoảng 20 x 65,000 = 1.3M energy) cho bất kỳ khoảng thời gian nào bao quát hoạt động của bạn một cách thoải mái. Chi phí trên mỗi giao dịch chuyển phụ thuộc vào việc sử dụng của bạn vừa khít với một đơn hàng thuê duy nhất ra sao. Nơi việc gộp lô giúp ích là về bandwidth: một tài khoản duy nhất với 600 bandwidth miễn phí hàng ngày bao phủ khoảng một giao dịch chuyển; staking thậm chí một lượng TRX nhỏ cho bandwidth cho bạn đủ để bao phủ hàng chục giao dịch chuyển mỗi ngày với chi phí bổ sung gần bằng không.
Cụ thể về bandwidth: đừng bỏ qua nó
Hầu hết các hướng dẫn tập trung vào năng lượng và coi bandwidth như một suy nghĩ sau cùng. Điều đó phần lớn là công bằng vì năng lượng chi phối chi phí, nhưng bandwidth vẫn có thể đốt TRX nếu bạn không cẩn thận. Mỗi điểm bandwidth bị đốt tốn 1000 SUN (0.001 TRX). Một giao dịch chuyển 345 bandwidth tốn khoảng 0.345 TRX từ việc đốt nếu bạn không có bandwidth khả dụng.
Staking TRX cho bandwidth (resource_type = 0 trong freezebalancev2) cực kỳ hiệu quả. Thậm chí một khoản stake nhỏ bao phủ bandwidth cho nhiều giao dịch chuyển hàng ngày. Nếu bạn đang xử lý khối lượng, hãy stake một lượng tối thiểu cho bandwidth và thuê hoặc stake cho năng lượng riêng. 600 bandwidth miễn phí hàng ngày trên mỗi tài khoản chỉ đủ cho khoảng một giao dịch chuyển mỗi ngày trên mỗi địa chỉ, vì vậy các quy trình làm việc nhiều giao dịch chuyển cần một nguồn bandwidth thực sự.
Chiến lược thực tế theo trường hợp sử dụng
Người gửi thỉnh thoảng (1-5 giao dịch chuyển mỗi tháng)
Đốt TRX hoặc sử dụng thuê năng lượng cửa sổ ngắn. Ở khối lượng này, staking TRX của riêng bạn không có ý nghĩa vì vốn của bạn nằm khóa kiếm năng lượng mà bạn không sử dụng nhất quán. Thuê 1 giờ ngay khi bạn cần thường là tổng chi phí thấp nhất.
Hoạt động hàng ngày (10-100 giao dịch chuyển mỗi ngày)
Thuê năng lượng được tính theo ngày hoặc theo lô, và stake một lượng nhỏ TRX vĩnh viễn cho bandwidth. Nếu bạn đang vận hành ví sàn giao dịch, một bộ xử lý thanh toán, hoặc bất kỳ hệ thống giải ngân tự động nào, mua trước năng lượng thông qua API giữ cho đường ống của bạn di chuyển mà không cần can thiệp thủ công. API thuê hỗ trợ các đơn hàng theo chương trình để hệ thống của bạn có thể yêu cầu năng lượng trước mỗi lần chạy lô.
Hoạt động khối lượng lớn (1000+ giao dịch chuyển mỗi ngày)
Ở quy mô này, staking TRX của riêng bạn cho năng lượng bắt đầu cạnh tranh với việc thuê về chi phí trên mỗi giao dịch chuyển, nhưng chỉ khi bạn có thể giữ mức sử dụng cao. Nếu khối lượng của bạn có những đỉnh cao bất thường thay vì nhất quán, thuê vẫn thắng vì bạn không trả tiền cho dung lượng nhàn rỗi. Một mô hình lai (staking một lượng cơ sở và thuê phần dư trong các đỉnh cao) phổ biến giữa các sàn giao dịch và nền tảng thanh toán.
Kích hoạt địa chỉ: chi phí ẩn của giao dịch chuyển đầu tiên
Nếu bạn đang gửi USDT đến một địa chỉ mới chưa bao giờ nhận bất kỳ token TRC-20 hoặc TRX nào, địa chỉ đó cần được kích hoạt. Việc kích hoạt tạo một bản ghi tài khoản trên trie trạng thái của TRON. Giao thức TRON tính phí khoảng 1.1 TRX cho việc này, được đốt từ người gửi. Đó là chi phí một lần trên mỗi địa chỉ người nhận, không phải là phí định kỳ. Đối với các nền tảng thanh toán đang tiếp nhận người dùng mới, điều này cộng dồn lại và nên được đưa vào mô hình chi phí của bạn một cách riêng biệt với năng lượng và bandwidth.
Nếu bạn muốn API thuê xử lý việc kích hoạt như một phần của đơn hàng, hãy đặt preActivateDestinationAddress=1 khi đặt một đơn hàng năng lượng, và 1.5 TRX sẽ được trừ từ số dư trả trước trên bảng điều khiển của bạn cho bước đó.
Không có cách nào để tránh chi phí kích hoạt thông qua việc thuê năng lượng, vì kích hoạt không phải là một khoản phí năng lượng. Đó là phí giao thức TRX cố định cho việc tạo một mục tài khoản mới.
Tổng hợp lại
Giảm chi phí giao dịch chuyển USDT TRC-20 đi xuống ba quyết định: cách bạn lấy nguồn năng lượng, cách bạn lấy nguồn bandwidth, và liệu các địa chỉ người nhận của bạn đã được kích hoạt hay chưa. Làm đúng ba điều đó và chi phí trên mỗi giao dịch chuyển của bạn giảm từ vài đô la (đốt thuần) xuống dưới 0.10 USD cho hầu hết các trường hợp sử dụng.
Thiết lập tối ưu cho hầu hết các nhà phát triển là: stake một lượng nhỏ TRX cho bandwidth một lần, thuê năng lượng trên mỗi giao dịch chuyển hoặc trên mỗi lô, và theo dõi việc kích hoạt địa chỉ mới một cách riêng biệt trong sổ kế toán của bạn. Sự kết hợp đó cho bạn chi phí có thể dự đoán mà không có vốn bị khóa trong hàng đợi unfreeze 14 ngày.