4
ফোকাস
1274
অনুসারী

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

তৈরি: 2025-02-28 17:20:12, আপডেট করা হয়েছে: 2025-03-11 18:04:16
comments   0
hits   696

[TOC]

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

ভূমিকা

ব্লকচেইন প্রযুক্তির বিকাশ পরিমাণগত ট্রেডিংকে Web3 যুগে প্রবেশ করাচ্ছে। একটি শীর্ষস্থানীয় পরিমাণগত ট্রেডিং টুল হিসেবে, FMZ পরিমাণগত ট্রেডিং প্ল্যাটফর্ম দীর্ঘদিন ধরে Web3 এর দিকনির্দেশনা অন্বেষণ করে আসছে এবং Ethereum-সম্পর্কিত ফাংশন প্রদান করে, যা ব্যবহারকারীদের স্মার্ট চুক্তির সাথে যোগাযোগ করতে, তহবিল পরিচালনা করতে এবং সরাসরি চেইনে স্বয়ংক্রিয় ট্রেডিং কৌশলগুলি কার্যকর করতে সক্ষম করে।

আজ, FMZ প্ল্যাটফর্মটি তার Web3 ট্রেডিং ক্ষমতা আরও প্রসারিত করেছে এবং Tron (TRX) নেটওয়ার্ককে সমর্থন করে, যা ব্যবহারকারীদের Ethereum এবং Tron-এর দুটি প্রধান পাবলিক চেইনে পরিমাণগত ট্রেডিং কৌশল স্থাপন করতে দেয়। এই আপগ্রেড কেবল ক্রস-চেইন লেনদেনের নমনীয়তা উন্নত করে না, বরং ব্যবসায়ীদের অন-চেইন সম্পদ ব্যবস্থাপনার জন্য আরও সম্ভাবনা প্রদান করে।

এই প্রবন্ধে, আমরা বিস্তারিতভাবে আলোচনা করব:

  • FMZ প্ল্যাটফর্মের Web3 দিকনির্দেশনায় ট্রন বাস্তুবিদ্যা, অ্যাপ্লিকেশন, উন্নয়ন এবং অন্যান্য প্রযুক্তিগত বিষয়বস্তু নিয়ে আলোচনা করুন।
  • FMZ প্ল্যাটফর্মে ট্রন নেটওয়ার্কের উপর ভিত্তি করে কনফিগারেশন অনুশীলন করুন।
  • বাস্তবে ব্যবহৃত সম্পদ এবং উপকরণ
  • ট্রন নোডগুলিতে কলিং পদ্ধতি অনুশীলন করুন।
  • সানসোয়াপ, ট্রন ইকোসিস্টেমের উপর ভিত্তি করে একটি ডিফাই অনুশীলন।

ট্রন ভূমিকা

TRX-TRON পরিচিতির বিবরণ (Feixiaohao থেকে উদ্ধৃত)

TRON ২০১৭ সালের সেপ্টেম্বরে জাস্টিন সান দ্বারা প্রতিষ্ঠিত হয়েছিল এবং ২০১৮ সালের মে মাসে এর মেইননেট চালু হওয়ার পর থেকে অনেক অসামান্য সাফল্য অর্জন করেছে। ২০১৮ সালের জুলাই মাসে, TRON ইকোসিস্টেম বিটটরেন্টের সাথে তার ইন্টিগ্রেশন সম্পন্ন করে, যা ১০ কোটিরও বেশি মাসিক সক্রিয় ব্যবহারকারীর সাথে বিকেন্দ্রীভূত ওয়েব ৩.০ পরিষেবা প্রদানের ক্ষেত্রে অগ্রণী। সাম্প্রতিক বছরগুলিতে, TRON নেটওয়ার্ক দুর্দান্ত পারফর্ম করেছে। TRONSCAN তথ্য থেকে জানা যায় যে, ২০২২ সালের অক্টোবর পর্যন্ত, TRON পাবলিক চেইনের মোট ব্যবহারকারীর সংখ্যা ১১৫ মিলিয়ন ছাড়িয়ে গেছে, লেনদেনের সংখ্যা ৪ বিলিয়ন ছাড়িয়ে গেছে এবং মোট লকড ভ্যালু (TVL) ১৩.২ বিলিয়ন মার্কিন ডলার ছাড়িয়ে গেছে। TRON নেটওয়ার্ক ২০২১ সালের ডিসেম্বরে সম্পূর্ণ বিকেন্দ্রীভূত হয় এবং এখন এটি একটি সম্প্রদায়-শাসিত বিকেন্দ্রীভূত স্বায়ত্তশাসিত সংস্থা (DAO)। ২০২২ সালের মে মাসে, TRON বিকেন্দ্রীভূত সুপার-কোলাটেরালাইজড স্টেবলকয়েন USDD চালু করার ঘোষণা দেয়, যা শিল্পের ক্রিপ্টোকারেন্সি কেন্দ্রীয় ব্যাংক, TRON জয়েন্ট রিজার্ভ দ্বারা সমর্থিত, যা বিকেন্দ্রীভূত স্টেবলকয়েন যুগে TRON-এর আনুষ্ঠানিক প্রবেশকে চিহ্নিত করে। ২০২২ সালের অক্টোবরে, ডোমিনিকা ঘোষণা করে যে TRON হল তার আনুষ্ঠানিকভাবে মনোনীত জাতীয় ব্লকচেইন অবকাঠামো, যা TRON কে একটি বৃহৎ পাবলিক চেইন করে তোলে যা ব্লকচেইন অবকাঠামো বিকাশের জন্য একটি সার্বভৌম রাষ্ট্রের সাথে একটি সহযোগিতা চুক্তিতে পৌঁছেছে। ডোমিনিকার প্রাকৃতিক ঐতিহ্য এবং পর্যটন আকর্ষণের বিশ্বব্যাপী দৃশ্যমানতা বৃদ্ধির জন্য TRON কে ডোমিনিকার ফ্যান টোকেন, ডোমিনিকা কয়েন (DMC) ইস্যু করার জন্য অনুমোদিত করা হয়েছে। একই সময়ে, TRON-এর অধীনে সাতটি প্রধান টোকেনকে ডোমিনিকাতে আইনি ডিজিটাল মুদ্রা এবং আইনি দরপত্রের মর্যাদা দেওয়া হয়েছিল।

  • উচ্চ থ্রুপুট: TRON-এ TPS উন্নত করে উচ্চ থ্রুপুট অর্জন করা হয় এবং দৈনন্দিন ব্যবহারের জন্য এর ব্যবহারিকতা বিটকয়েন এবং ইথেরিয়ামকে ছাড়িয়ে গেছে।

  • স্কেলেবিলিটি: ভালো স্কেলেবিলিটি এবং দক্ষ স্মার্ট চুক্তির উপর ভিত্তি করে, অ্যাপ্লিকেশনগুলিতে TRON-এ আরও স্থাপনার পদ্ধতি থাকতে পারে এবং TRON বিপুল সংখ্যক ব্যবহারকারীকে সমর্থন করতে পারে।

  • উচ্চ নির্ভরযোগ্যতা: TRON-এর একটি আরও নির্ভরযোগ্য নেটওয়ার্ক কাঠামো, ব্যবহারকারীর সম্পদ, অন্তর্নিহিত মূল্য এবং উচ্চতর বিকেন্দ্রীভূত ঐক্যমত্য একটি উন্নত পুরষ্কার বিতরণ ব্যবস্থা নিয়ে আসে।

বাস্তবে ব্যবহৃত সম্পদ এবং উপকরণ

  • TRON মেইননেট অফিসিয়াল জিআরপিসি নোড

grpc.trongrid.io:50051

  • অন্যান্য নোড:

আপনি অন্যান্য নোড প্রদানকারীর JSON-RPC নোড, REST নোড ইত্যাদি ব্যবহার করতে পারেন (আপনি অনুরোধ করতে HttpQuery ব্যবহার করতে পারেন)। FMZ-তে এক্সচেঞ্জ অবজেক্ট এনক্যাপসুলেশনের একমাত্র কল হল grpc পদ্ধতি।

  • TRON ওয়ালেট

আপনাকে একটি TRON ওয়ালেট প্রস্তুত করতে হবে। আপনি OKX, imToken, ইত্যাদি ব্যবহার করতে পারেন, অথবা আপনি নিজেই একটি তৈরি করতে পারেন।

  • tronscan

https://tronscan.org/

  • ট্রন প্রোটোকল

https://github.com/tronprotocol

  • SunSwap

https://sun.io/?lang=zh-CN#/v3/swap

https://github.com/sunswapteam

FMZ-এ WEB3 এক্সচেঞ্জ অবজেক্ট কনফিগার করুন

FMZ প্ল্যাটফর্ম ট্রনকে সমর্থন করার আগে, এটি Ethereum-এর Web3 ডেভেলপমেন্টকে সমর্থন করার ক্ষেত্রে নেতৃত্ব দিয়েছিল। UniSwap বিকেন্দ্রীভূত এক্সচেঞ্জের সাথে কীভাবে সংযোগ স্থাপন করবেন তা জানতে আপনি পূর্ববর্তী নিবন্ধগুলি পর্যালোচনা করতে পারেন। যেহেতু ট্রন ইথেরিয়ামের সাথে সামঞ্জস্যপূর্ণ এবং ETH এবং EOS এর কিছু বৈশিষ্ট্যকে একীভূত করে, তাই স্মার্ট চুক্তি সম্পাদন এবং অন-চেইন মিথস্ক্রিয়ায় এর অনন্য সুবিধা রয়েছে। FMZ প্ল্যাটফর্মে ট্রন এক্সচেঞ্জ অবজেক্ট (ওয়ালেট, নোড তথ্য) কনফিগার করা প্রায় ইথেরিয়াম এক্সচেঞ্জ অবজেক্ট (ওয়ালেট, নোড তথ্য) কনফিগার করার মতোই।

এক্সচেঞ্জ অবজেক্ট যোগ করুন

অ্যাড এক্সচেঞ্জ পৃষ্ঠায়:

https://www.fmz.com/m/platforms/add

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

ওয়ালেটটি কনফিগার করুন, ChainType হিসেবে TRON নির্বাচন করুন এবং ডিফল্ট RPC নোড ঠিকানা ব্যবহার করুন।

সাধারণ JSON-RPC নোড পদ্ধতি অনুশীলন

আমরা পরীক্ষা করার জন্য প্ল্যাটফর্মের ডিবাগিং টুল ব্যবহার করতে পারি।

ডিবাগিং টুল: https://www.fmz.com/m/debug

eth_getBalance

নাম থেকেই বোঝা যাচ্ছে, এই পদ্ধতিটি ইথেরিয়ামের পদ্ধতির মতোই, এবং এর কার্যকারিতাও হুবহু একই রকম। এই পদ্ধতিটি নির্দিষ্ট ট্রন ওয়ালেটে TRX ব্যালেন্স পড়ার জন্য ব্যবহৃত হয়।

curl https://docs-demo.tron-mainnet.quiknode.pro/jsonrpc \
  -X POST \
  -H "Content-Type: application/json" \
  --data '{"method":"eth_getBalance","params":["0x41f0cc5a2a84cd0f68ed1667070934542d673acbd8", "latest"],"id":1,"jsonrpc":"2.0"}'

অনুরোধ করা ব্যালেন্স ডেটার মান খুবই বড়, হেক্সাডেসিমেল মান, যার জন্য পূর্ববর্তী ইথেরিয়াম-সম্পর্কিত কৌশলে ব্যবহৃত রূপান্তর ফাংশনের প্রয়োজন।

function toAmount(s, decimals) {
    return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
}

function toInnerAmount(n, decimals) {
    return (BigDecimal(n) * BigDecimal(Math.pow(10, decimals))).toFixed(0)
}

যেহেতু ট্রন ওয়ালেট থেকে কপি করা ওয়ালেট ঠিকানাটি একটি base58-এনকোডেড ঠিকানা, তাই এটি ব্যবহার করার আগে এটিকে একটি হেক্স-এনকোডেড প্যারামিটারে রূপান্তর করতে হবে।

function base58ToHex(base58Str) {
    const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
    
    var num = BigInt(0)
    for (var char of base58Str) {
        var digit = BigInt(ALPHABET.indexOf(char));
        if (digit === BigInt(-1)) throw new Error("Invalid Base58 character: " + char)
        num = num * BigInt(58) + digit
    }

    var hex = num.toString(16)
    
    if (hex.length % 2 !== 0) {
        hex = "0" + hex
    }

    return "0x" + hex
}

ঠিকানাটি রূপান্তর করার পরে, আমরা এটিকে কল করতে পারিeth_getBalanceপদ্ধতি।

সম্পূর্ণ পরীক্ষা কোডঃ

function toAmount(s, decimals) {
    return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
}

function toInnerAmount(n, decimals) {
    return (BigDecimal(n) * BigDecimal(Math.pow(10, decimals))).toFixed(0)
}

function base58ToHex(base58Str) {
    const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
    
    var num = BigInt(0)
    for (var char of base58Str) {
        var digit = BigInt(ALPHABET.indexOf(char));
        if (digit === BigInt(-1)) throw new Error("Invalid Base58 character: " + char)
        num = num * BigInt(58) + digit
    }

    var hex = num.toString(16)
    
    if (hex.length % 2 !== 0) {
        hex = "0" + hex
    }

    return "0x" + hex
}

function main() {
    var tronAddress = "Tron 钱包地址"
    var hexAddress = base58ToHex(tronAddress).substring(2, 44)

    var jsonrpcBase = "https://go.getblock.io/xxx/jsonrpc"  // 具体的JSON-RPC节点
    var body = {
        "method": "eth_getBalance",
        "params": [hexAddress, "latest"],
        "id":1,
        "jsonrpc":"2.0"
    }

    var options = {
        method: "POST",
        body: JSON.stringify(body),
        headers: {"accept": "application/json", "content-type": "application/json"},
        timeout: 1000
    }

    var ret = JSON.parse(HttpQuery(jsonrpcBase, options))
    var balance = ret.result
    return toAmount(balance, 6)
}

TRX এর টোকেন নির্ভুলতা 6, তাই bigNumber প্রক্রিয়া করার সময় প্যারামিটার 6 পূরণ করুন।

FMZ প্ল্যাটফর্মের ডিবাগিং টুলে পরীক্ষা করুন:

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

ট্রনস্ক্যানে জিজ্ঞাসা করা ওয়ালেটে থাকা TRX ব্যালেন্সের তুলনা করলে, তথ্য সামঞ্জস্যপূর্ণ।

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

জিআরপিসি নোড পদ্ধতি অনুশীলন

FMZ প্ল্যাটফর্মের প্রধান অনুশীলন বিষয়বস্তু হল grpc নোডের পদ্ধতি কল। সীমিত স্থানের কারণে, এখানে শুধুমাত্র সাধারণভাবে ব্যবহৃত পদ্ধতি কলগুলি তালিকাভুক্ত করা হয়েছে।

প্রোটোটাইপ কল করা হচ্ছে:exchange.IO("api", "tron", "method name", ...). “পদ্ধতির নাম” হলো সেই পদ্ধতির নাম যা ডাকা হবে।

GetAccount

ওয়ালেট অ্যাকাউন্টের তথ্য অনুসন্ধান করুন।

function main() {
    var account = exchange.IO("api", "tron", "GetAccount", "tron 钱包地址")  // tron 钱包地址 :填写实际的钱包地址。
    return account
}

কল তথ্য ফেরত দিন (উদ্ধৃতাংশ):

{
    "address": {},
    "balance": 72767348,   // 即钱包的TRX余额:72.767348
    "asset_optimized": true,
    "create_time": 1693463943000,
    ...

GetTransactionInfoByID

স্থানান্তর পরীক্ষা করুন।

function main() {
    return exchange.IO("api", "tron", "GetTransactionInfoByID", "305f0c2487095effcf9e2db61f021f976707611424cba57e1d6464736f7f49e7") 
}

ফেরত দেওয়া তথ্য:

{"id":{},"fee":1100000,"blockNumber":70192360,"blockTimeStamp":1741229766000,"contractResult":[{}],"receipt":{"net_fee":100000}}

ListNodes

সমস্ত নোড তথ্য ফেরত দেয়।

function main() {
    return exchange.IO("api", "tron", "ListNodes")
}

TRC20GetDecimals

TRC20 টোকেনের নির্ভুলতার তথ্য অনুসন্ধান করুন

function main() {
    return exchange.IO("api", "tron", "TRC20GetDecimals", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")  // USDT
}

TRC20ContractBalance

একটি নির্দিষ্ট ওয়ালেট ঠিকানায় একটি নির্দিষ্ট TRC20 টোকেনের ব্যালেন্স জিজ্ঞাসা করুন।

function main() {
    return exchange.IO("api", "tron", "TRC20ContractBalance", "TRX 钱包地址", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")
}

GetNowBlock

বর্তমান ব্লকচেইনের সর্বশেষ ব্লক তথ্য প্রদান করে।

function main() {
    return exchange.IO("api", "tron", "GetNowBlock")
}

ফেরত দেওয়া তথ্য:

{
    "transactions": [
        {
            "transaction": {
                "raw_data": {
                    "ref_block_bytes": {},
                    "ref_block_hash": {},
                    "expiration": 1741489083000,
                    "contract": [
                        {
                            "type": 1,
                            "parameter": {
                                "type_url": "type.googleapis.com/protocol.TransferContract",
                                "value": {}
                                ...

GetAccountNet

TRON অ্যাকাউন্টের ব্যান্ডউইথ তথ্য অনুসন্ধান করুন।

function main() {
    return exchange.IO("api", "tron", "GetAccountNet", "TWTbnQuiWvEg...")
}

ফেরত দেওয়া তথ্য:

{
    "freeNetLimit": 600,
    "TotalNetLimit": 43200000000,
    "TotalNetWeight": 26982826755
}

CreateAccount

একটি ট্রন অ্যাকাউন্ট তৈরি করুন।

function main() {
    return exchange.IO("api", "tron", "CreateAccount", "TWTbnQ...", "TKCG9...")
}

একটি বিদ্যমান অ্যাকাউন্ট তৈরি করার চেষ্টা করলে একটি ত্রুটি দেখাবে:

Futures_OP 4: Contract validate error : Account has existed

GetBlockByNum

ব্লকের উচ্চতার উপর ভিত্তি করে ব্লকের তথ্য পান।

function main() {
    return exchange.IO("api", "tron", "GetBlockByNum", 70227286)
}

ফেরত দেওয়া তথ্য:

{
    "transactions": [
        {
            "transaction": {
                "raw_data": {
                    "ref_block_bytes": {},
                    "ref_block_hash": {},
                    "expiration": 1741334628000,
                    "contract": [
                    ...

TRC20GetName / TRC20GetSymbol

TRC20GetName, চুক্তির ঠিকানার উপর ভিত্তি করে TRC20 টোকেন নামটি জিজ্ঞাসা করুন। TRC20GetSymbol, চুক্তির ঠিকানা অনুসারে TRC20 টোকেন প্রতীকটি জিজ্ঞাসা করুন।

function main() {
    Log("TRC20GetName:", exchange.IO("api", "tron", "TRC20GetName", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"))
    Log("TRC20GetSymbol:", exchange.IO("api", "tron", "TRC20GetSymbol", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"))
}

ফেরত দেওয়া তথ্য:

2025-03-09 11:18:43.083		信息 TRC20GetSymbol: USDT
2025-03-09 11:18:43.006		信息 TRC20GetName: Tether USD

ParseTRC20…

function main() {
    // 例如某个转账数据中的Data,转换为可读数值
    Log("ParseTRC20NumericProperty:", exchange.IO("api", "tron", "ParseTRC20NumericProperty", "0x00000000000000000000000000000000000000000000000000000001a13b8600"))  // 7000000000

    // 例如某个转账数据中的Data,转换为可读字符串
    Log("ParseTRC20StringProperty:", exchange.IO("api", "tron", "ParseTRC20StringProperty", "0x0000000000000000000000000000000000000000000000000000000055534454"))    // USDT
}

TRC20Call

TRC20 চুক্তি কল করার জন্য, আমরা TRC20 চুক্তির balanceOf পদ্ধতি ব্যবহার করি, প্রথমে এটি এনকোড করি, এবং তারপর TRC20Call ব্যবহার করে এটি কল করি।

function main() {
    var data = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQuiWvEg...")
    var tx = exchange.IO("api", "tron", "TRC20Call", "TWTbnQuiWvEg...", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", data, true, 0)
    return tx.constant_result
}
  • “TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t” : TRC20 USDT চুক্তির ঠিকানা।
  • “TWTbnQuiWvEg…” : প্যারামিটার, balanceOf পদ্ধতি দ্বারা অনুরোধ করা ব্যালেন্সের TRX ওয়ালেট ঠিকানা।
  • “balanceOf” : যে পদ্ধতির নাম এনকোড করা প্রয়োজন।

ধ্রুবক পদ্ধতির জন্য সম্প্রচারের প্রয়োজন হয় না। কলের ফলাফল tx.constant_result এ রেকর্ড করা হয়েছে।

Transfer

একটি ট্রান্স ডেটা তৈরি করো।

function main() {
    var trans = exchange.IO("api", "tron", "Transfer", "TWTb...", "TKCG9FN...", 1000000)
    return trans
}
  • TWTb...: TRX ওয়ালেট A এর ঠিকানা।
  • TKCG9FN...: TRX ওয়ালেট B এর ঠিকানা।
  • ১০০০০০০০: ১TRX ট্রান্সফার করুন।

ফেরত দেওয়া তথ্য:

{
    "transaction": {
        "raw_data": {
            "ref_block_bytes": {},
            "ref_block_hash": {},
            "expiration": 1741493085000,
            "contract": [
                {
                    "type": 1,
                    "parameter": {
                        "type_url": "type.googleapis.com/protocol.TransferContract",
                        "value": {}
                    }
                }
            ],
            "timestamp": 1741493025759
        }
    },
    "txid": {},
    "result": {
        "result": true
    }
}

GetContractABI

চুক্তির ঠিকানার উপর ভিত্তি করে ABI চুক্তিটি পান।

function main() {
    var usdtABI = exchange.IO("api", "tron", "GetContractABI", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")
    return usdtABI
}

ফেরত দেওয়া তথ্য:

{
    "entrys": [
        {
            "constant": true,
            "name": "name",
            "outputs": [
                {
                    "type": "string"
                }
            ],
            "type": 2,
            "stateMutability": 2
        },
        {
            "constant": true,
            "name": "deprecated",
            "outputs": [
                {
                    "type": "bool"
                }
            ],
            "type": 2,
            "stateMutability": 2
        },
        ...

Transfer

দিকেTKCG9FN1j...ট্রন ওয়ালেট ঠিকানায় 1TRX স্থানান্তর করুন।

function main() {
    var ownerAddress = exchange.IO("address")
    var ret = exchange.IO("api", "tron", "Transfer", ownerAddress, "TKCG9FN1j...", 1000000)     
    return ret
}

TriggerConstantContract

স্মার্ট চুক্তির পদ্ধতিটি কল করুন।

function main() {
    var tx = exchange.IO("api", "tron", "TriggerConstantContract", "TWTbnQu...", "TSUUVjysXV8YqHytSNjfkNXnnB49QDvZpx", "token0()", "")
    var ret2 = Encode("raw", "raw", "hex", tx.constant_result[0])
    Log(ret2) // 000000000000000000000000891cdb91d149f23b1a45d9c5ca78a88d0cb44c18
}

ফেরত দেওয়া ডেটা হল sunSwap ট্রেডিং পুলের token0 টোকেন ঠিকানা।

স্মার্ট চুক্তি পদ্ধতি কল

  • USDT ব্যালেন্স চেক করুন

ট্রন চেইনে স্মার্ট কন্ট্রাক্ট পদ্ধতিতে কল করুনbalanceOfTR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6tজন্যUSDTটোকেনের স্মার্ট চুক্তির ঠিকানা।

  function toAmount(s, decimals) {
      return Number((BigDecimal(BigInt(s)) / BigDecimal(Math.pow(10, decimals))).toString())
  }

  function main() {
      var balance = exchange.IO("api", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "Tron 钱包地址")
      return toAmount(balance, 6)
  }

আপনি আপনার ওয়ালেটে USDT এর ব্যালেন্স চেক করতে পারেন: 0.000019

FMZ পরিমাণগত Web3 সম্প্রসারণ: ট্রন সাপোর্ট যোগ করা হয়েছে, অন-চেইন লেনদেন ক্ষমতা সম্প্রসারিত হয়েছে

exchange.IO এর অন্যান্য বৈশিষ্ট্য

FMZ প্ল্যাটফর্মWeb3 tronএক্সচেঞ্জ অবজেক্টexchange.IOফাংশনটি নিম্নলিখিত ফাংশনগুলি বাস্তবায়ন করে।

  • TRX ট্রান্সফার
  function main() {
      var ret = exchange.IO("api", "tron", "send", "目标TRX钱包地址", 1)  // 需要注意,参数1 表示 0.000001 TRX ,需要转换数值为链上数值。
      return ret   // 转账hash: 305f0c2487095effcf9e2db61f021f9767076114...
  }
  • নোড ঠিকানা পরিবর্তন করুন
  exchange.IO("base", "rpc address")  // rpc address 替换为具体的节点地址
  // 或者
  exchange.IO("rpc", "rpc address")
  • স্মার্ট চুক্তি ABI নিবন্ধন করুন
  exchange.IO("abi", "contract ABI")  // contract ABI 替换为具体的合约ABI内容
  • বর্তমান এক্সচেঞ্জ অবজেক্টের সাথে আবদ্ধ ওয়ালেটের ঠিকানা পান
  exchange.IO("address")  // 返回tron钱包地址
  • pack / encode / encodePacked

প্যাক / এনকোড: এনকোড / প্যাক ডেটা, পদ্ধতি কল।

  function main() {
      // 打包TRC20合约的balanceOf方法调用
      var data1 = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")  // TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t 为USDT合约地址
      Log(data1)
      var data2 = exchange.IO("encode", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")
      Log(data2)
      Log("data1 == data2:", data1 == data2)  // true

      // 编码数据为uint256
      var data3 = exchange.IO("pack", "uint256", 19)   // 数据为: 19
      Log(data3)
      var data4 = exchange.IO("encode", "uint256", 19)
      Log(data4)
      Log("data3 == data4:", data3 == data4)
  }

এনকোডপ্যাকড: এনকোডেড এবং প্যাকেজড

  function main() {
      var data1 = exchange.IO("encodePacked", "address", "TWTbnQu...")
      Log(data1)
      //                          e0c12e16a9f713e5f104c...

      var data2 = exchange.IO("encode", "address", "TWTbnQu...")
      Log(data2)
      // 000000000000000000000000 e0c12e16a9f713e5f104c...
  }
  • unpack / decode

আনপ্যাক / ডিকোড: ডেটা আনপ্যাক / ডিকোড করুন, পদ্ধতি কল।

  function main() {
      var data = exchange.IO("pack", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "balanceOf", "TWTbnQu...")
      Log(data)
      var tx = exchange.IO("api", "tron", "TRC20Call", "TWTbnQu...", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", data, true, 0)
      var ret = Encode("raw", "raw", "hex", tx.constant_result[0])
      Log(ret)

      // 解码
      var usdtBalance = exchange.IO("decode", "uint256", ret)
      Log("usdtBalance:", usdtBalance)

      // 解码
      return exchange.IO("unpack", "uint256", ret)
  }
  • ব্যক্তিগত কী আপডেট/আমদানি করুন
  exchange.IO("key", "xxx")  // xxx 为私钥
  • হ্যাশ গণনা করা হচ্ছে প্রোটোটাইপ কল করা হচ্ছে:exchange.IO("hash", algo, inputFormat, outputFormat, data)

বর্তমানে কনফিগার করা প্রাইভেট কী দিয়ে সাইন করুন এবং সাইন করা ডেটা ফেরত দিন।

  var signature = exchange.IO("hash", "sign", "string", "hex", "txHash")  // txHash: 具体hash值

সানসোয়াপের প্রথম নজর

ট্রন চেইনে DEX এক্সচেঞ্জের প্রাথমিক অনুশীলন: সানসোয়াপ। আমরা sunSwap ফ্যাক্টরি চুক্তি কল করি, সমস্ত ট্রেডিং জোড়ার সূচক অনুরোধ করি, এবং তারপর সূচক 1 সহ ট্রেডিং জোড়ার ঠিকানা অনুরোধ করি।

function main() {
    var poolIndexs = exchange.IO("api", "TThJt8zaJzJMhCEScH7zWKnp5buVZqys9x", "allPoolsLength")
    Log("poolIndexs:", poolIndexs)  // 交易对索引总数

    var hexAddress = exchange.IO("api", "TThJt8zaJzJMhCEScH7zWKnp5buVZqys9x", "allPools", exchange.IO("encode", "uint256", 1)) 
    Log("hexAddress:", hexAddress)  // 索引为1的交易对地址
}

সীমিত স্থানের কারণে, আমরা পরবর্তী প্রবন্ধে পাঠকদের সাথে বিস্তারিত সানসোয়াপ বিষয়বস্তু শেয়ার করব। আপনার সমর্থনের জন্য ধন্যবাদ।

THE END

ওয়েব৩ যুগে FMZ পরিমাণগত ট্রেডিং প্ল্যাটফর্মটি উদ্ভাবন অব্যাহত রেখেছে, পরিমাণগত ব্যবসায়ীদের একটি বিস্তৃত অন-চেইন ট্রেডিং স্থান প্রদান করে। ট্রন নেটওয়ার্ককে সমর্থন করার মাধ্যমে, FMZ কেবল ক্রস-চেইন লেনদেনের ক্ষমতাই বাড়ায় না, বরং ব্যবহারকারীদের ট্রন ইকোসিস্টেমে স্মার্ট চুক্তি মিথস্ক্রিয়া, তহবিল ব্যবস্থাপনা এবং স্বয়ংক্রিয় ট্রেডিং কৌশলগুলি দক্ষতার সাথে সম্পাদন করতে সক্ষম করে।

এই প্রবন্ধে, আমরা ট্রন নেটওয়ার্কের জন্য FMZ প্ল্যাটফর্মের সমর্থন চালু করেছি এবং ট্রন চেইনে সানসোয়াপ DEX এর চুক্তি পদ্ধতি কল বাস্তবায়ন করেছি। ব্লকচেইন প্রযুক্তির বিকাশের সাথে সাথে, Web3 পরিমাণগত লেনদেনের সম্ভাবনাগুলি প্রসারিত হতে থাকবে। FMZ তার Web3 সক্ষমতা অপ্টিমাইজ এবং উন্নত করে চলবে যাতে পরিমাণগত ব্যবসায়ীদের আরও নমনীয়, নিরাপদ এবং দক্ষ ট্রেডিং পরিবেশ প্রদান করা যায়, যা ব্যবহারকারীদের অন-চেইন বাজারে আরও বেশি সুবিধা পেতে সহায়তা করে।

পড়ার জন্য ধন্যবাদ এবং আপনার সমর্থনের জন্য ধন্যবাদ।