রিসোর্স লোড হচ্ছে... লোডিং...

exchange.Encode

দ্যexchange.Encode()ফাংশনটি স্বাক্ষর এনক্রিপশন গণনার জন্য ব্যবহৃত হয়।

দ্যexchange.Encode()ফাংশন হিসাব করা হ্যাশ মান কোডিং ফেরত দেয়। স্ট্রিং

exchange.Encode ((algo, inputFormat, outputFormat, data) exchange.Encode ((algo, inputFormat, outputFormat, data, keyফরম্যাট, কী)

প্যারামিটারalgoহ'ল এনকোডিং গণনার জন্য ব্যবহৃত অ্যালগরিদম। সমর্থিত সেটিংস হ'লঃ raw (কোন অ্যালগরিদম ব্যবহার করা হয়নি), sign, signTx, md4, md5, sha256, sha512, sha1, keccak256, sha3.224, sha3.256, sha3.384, sha3.512, sha3.keccak256, sha3.keccak512, sha512.384, sha512.256, sha512.224, emd160, blake2ripb.256, blake2b.512, blake2s.128, blake2s.256।algoএছাড়াও সমর্থন করেঃ text.encoder.utf8, text.decoder.utf8, text.encoder.gbk, text.decoder.gbk, এনকোডিং এবং ডিকোডিং স্ট্রিং জন্য।algoএছাড়াও সমর্থন করেঃ ed25519 অ্যালগরিদম। এটি বিভিন্ন হ্যাশ অ্যালগরিদম ব্যবহার সমর্থন করে, উদাহরণস্বরূপ, প্যারামিটারalgoed25519.md5, ed25519.sha512 ইত্যাদি হিসাবে লেখা যেতে পারেed25519.seedগণনা। কিছু সত্য স্ট্রিং তথ্য বিন্যাস নির্দিষ্ট করতে ব্যবহৃত হয়dataপ্যারামিটার।inputFormatপ্যারামিটারটি raw, hex, base64, এবং string এর মধ্যে একটিতে সেট করা যেতে পারে। raw এর অর্থ ডেটা কাঁচা ডেটা, hex এর অর্থ ডেটাhexকোড করা, base64 মানে তথ্যbase64এনকোড করা হয়, এবং string মানে ডাটা একটি স্ট্রিং। ইনপুটফরম্যাট সত্য স্ট্রিং আউটপুট ডেটা ফরম্যাট নির্দিষ্ট করতে ব্যবহৃত হয়।outputFormatপ্যারামিটার নিম্নলিখিত সেটিংস সমর্থন করেঃ raw, hex, base64, string. raw মানে ডাটা কাঁচা ডাটা, hex মানে ডাটাhexকোড করা, base64 মানে তথ্যbase64এনকোড করা হয়, এবং string মানে ডাটা একটি স্ট্রিং। আউটপুটফর্ম্যাট সত্য স্ট্রিং প্যারামিটারdataযে তথ্যগুলো প্রক্রিয়া করা হবে। তথ্য সত্য স্ট্রিং তথ্য বিন্যাস নির্দিষ্ট করতে ব্যবহৃত হয়keyপ্যারামিটার।keyপ্যারামিটারটি raw, hex, base64, এবং string এর মধ্যে একটিতে সেট করা যেতে পারে। raw এর অর্থ ডেটা কাঁচা ডেটা, hex এর অর্থ ডেটাhexকোড করা, base64 মানে তথ্যbase64এনকোড করা হয়, এবং string মানে ডাটা একটি স্ট্রিং। keyফরম্যাট মিথ্যা স্ট্রিং দ্যkeyপ্যারামিটার স্বাক্ষর হিসাব ব্যবহৃত কী উল্লেখ করতে ব্যবহৃত হয়, এবং এটি একটি সরল পাঠ্য স্ট্রিং হিসাবে ব্যবহার করা যেতে পারে. আপনি ব্যবহার করতে পারেন"{{accesskey}}", "{{secretkey}}"উল্লেখ করার জন্যaccessKeyএবংsecretKey{@var/EXCHANGE exchange} এক্সচেঞ্জ অবজেক্টে কনফিগার করা। চাবি মিথ্যা স্ট্রিং

function main() {
    var APIKEY = "your Access Key(Bitmex API ID)"
    var expires = parseInt(Date.now() / 1000) + 10
    var signature = exchange.Encode("sha256", "string", "hex", "GET/realtime" + expires, "hex", "{{secretkey}}")
    var client = Dial("wss://www.bitmex.com/realtime", 60)
    var auth = JSON.stringify({args: [APIKEY, expires, signature], op: "authKeyExpires"})
    var pos = 0
    client.write(auth)
    client.write('{"op": "subscribe", "args": "position"}')
    while (true) {
        bitmexData = client.read()
        if(bitmexData.table == 'position' && pos != parseInt(bitmexData.data[0].currentQty)){
            Log('position change', pos, parseInt(bitmexData.data[0].currentQty), '@')
            pos = parseInt(bitmexData.data[0].currentQty)
        }
    }
}
import time
def main():
    APIKEY = "your Access Key(Bitmex API ID)"
    expires = int(time.time() + 10)
    signature = exchange.Encode("sha256", "string", "hex", "GET/realtime" + expires, "hex", "{{secretkey}}")
    client = Dial("wss://www.bitmex.com/realtime", 60)
    auth = json.dumps({"args": [APIKEY, expires, signature], "op": "authKeyExpires"})
    pos = 0
    client.write(auth)
    client.write('{"op": "subscribe", "args": "position"}')
    while True:
        bitmexData = json.loads(client.read())
        if "table" in bitmexData and bitmexData["table"] == "position" and len(bitmexData["data"]) != 0 and pos != bitmexData["data"][0]["currentQty"]:   
            Log("position change", pos, bitmexData["data"][0]["currentQty"], "@")
            pos = bitmexData["data"][0]["currentQty"]
void main() {
    auto APIKEY = "your Access Key(Bitmex API ID)";
    auto expires = Unix() + 10;
    auto signature = exchange.Encode("sha256", "string", "hex", format("GET/realtime%d", expires), "hex", "{{secretkey}}");
    
    auto client = Dial("wss://www.bitmex.com/realtime", 60);
    json auth = R"({"args": [], "op": "authKeyExpires"})"_json;            

    auth["args"].push_back(APIKEY);
    auth["args"].push_back(expires);
    auth["args"].push_back(signature);
    auto pos = 0;
    client.write(auth.dump());
    client.write("{\"op\": \"subscribe\", \"args\": \"position\"}");
    while(true) {
        auto bitmexData = json::parse(client.read());
        if(bitmexData["table"] == "position" && bitmexData["data"][0].find("currentQty") != bitmexData["data"][0].end() && pos != bitmexData["data"][0]["currentQty"]) {
            Log("test");
            Log("position change", pos, bitmexData["data"][0]["currentQty"], "@");
            pos = bitmexData["data"][0]["currentQty"];
        }
    }
}

BitMEX অবস্থান পরিবর্তন চাপের উদাহরণ (wss প্রোটোকল):

শুধুমাত্র বাস্তব ট্রেডিং সমর্থন কলexchange.Encode()ফাংশন।"{{accesskey}}", "{{secretkey}}"রেফারেন্স শুধুমাত্র বৈধ যখনexchange.Encode()ফাংশন ব্যবহার করা হয়.

{@var/EXCHANGE exchange}, {@fun/Global/Encode Encode}

exchange.Log exchange.Go