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

বর্ধিত এপিআই ইন্টারফেস

এফএমজেড কোয়ান্ট এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের বিভিন্ন ফাংশনে প্রোগ্রাম্যাটিক কলগুলি সমর্থন করার জন্য প্ল্যাটফর্মের বর্ধিত এপিআই ইন্টারফেসটি খুলেছে।

ApiKey তৈরি করুন

এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম অনুমতি ব্যবস্থাপনা সমর্থন করে এক্সটেন্ডেড এপিআই ইন্টারফেস, এবং অনুমতিAPI KEYঅ্যাকাউন্ট সেটিংসে API ইন্টারফেস অপশনে (https://www.fmz.com/m/account) প্ল্যাটফর্মের পৃষ্ঠায়, Create এ ক্লিক করুন নতুন ApiKey বোতাম এক্সটেনশন তৈরি করতেAPI KEY.

আপনি API Permission ইনপুট বক্স সম্পাদনা করতে পারেন যখন একটিAPI KEY, এবং প্রবেশ করুন*সমস্ত সক্রিয় করার জন্য চিহ্নবর্ধিত এপিআই ইন্টারফেসঅনুমতি. আপনি যদি নির্দিষ্ট ইন্টারফেস অনুমতি নির্দিষ্ট করতে চান, তাহলে আপনাকে সংশ্লিষ্ট বর্ধিত এপিআই ফাংশন নাম লিখতে হবে। কমা ব্যবহার করে আলাদা করুন, উদাহরণস্বরূপঃGetRobotDetail,DeleteRobotএটা এই দেয়API KEYকল করার অনুমতিলাইভ ট্রেডিংয়ের বিস্তারিত তথ্য পানইন্টারফেস এবংলাইভ ট্রেডিং মুছে ফেলুন interface.

দ্যAPI KEYম্যানেজমেন্ট পাতা এছাড়াও আপনি অনুমতি দেয়সংশোধন, নিষ্ক্রিয়, মুছে ফেলুনসৃষ ্ টি করেছেনAPI KEY.

এক্সটেন্ডেড এপিআই ইন্টারফেস রিটার্ন কোড

বর্ধিত এপিআই ইন্টারফেসের দ্বারা ফেরত দেওয়া কাঠামোর একটি উদাহরণ নিম্নরূপঃ

    "code":0,
    "data":{
        // ...
    }
}

দ্যcodeক্ষেত্রটি হলঃ এক্সটেন্ডেড এপিআই ইন্টারফেসটি কল করার সময় কল ফলাফলের স্থিতি কোডটি ফিরে আসে।

বর্ণনা কোড
সফল কার্যকরকরণ 0
ভুল এপিআই কী 1
ভুল স্বাক্ষর 2
নোনস ত্রুটি 3
ভুল পদ্ধতি 4
ভুল প্যারামিটার 5
অভ্যন্তরীণ অজানা ত্রুটি 6

লাইভ ট্রেডিং কোড

দ্যGetRobotListইন্টারফেস,GetRobotDetailইন্টারফেস, এবংGetRobotLogsইন্টারফেস রিটার্ন ডেটাstatusক্ষেত্রঃ লাইভ ট্রেডিং স্ট্যাটাস কোড।

  • স্বাভাবিক শুরু
    অবস্থা কোড
    অলস 0
    অপারেটিং 1
    থামানো 2
    সাইন আউট 3
    থামানো 4
    কৌশল ভুল আছে 5
  • অস্বাভাবিক
    অবস্থা কোড
    কৌশল মেয়াদোত্তীর্ণ হয়েছে, এবং দয়া করে লেখক সাথে যোগাযোগ করুন এটি আবার কিনতে -1
    ডকার পাওয়া যায়নি -2
    কৌশল সংকলন ত্রুটি -3
    লাইভ ট্রেডিং ইতিমধ্যে চলছে -4
    অপর্যাপ্ত ভারসাম্য -5
    একই সময়ে কৌশল সংখ্যা সীমা অতিক্রম করে -6

যাচাই করার উপায়

এক্সটেন্ডেড এপিআই ইন্টারফেস কল করার সময় দুটি যাচাইকরণ পদ্ধতি রয়েছে, সমর্থন করেtokenযাচাইকরণ এবং সরাসরি যাচাইকরণ।

টোকেন যাচাইকরণ

ব্যবহারmd5যাচাই করার জন্য এনক্রিপশন পদ্ধতি, উদাহরণPython, Golangভাষা কলঃ

#!/usr/bin/python
# -*- coding: utf-8 -*-
import time
import json
import ssl
ssl._create_default_https_context = ssl._create_unverified_context

try:
    import md5
    import urllib2
    from urllib import urlencode
except:
    import hashlib as md5
    import urllib.request as urllib2
    from urllib.parse import urlencode

accessKey = ''   # your API KEY
secretKey = ''   

def api(method, *args):
    d = {
        'version': '1.0',
        'access_key': accessKey,
        'method': method,
        'args': json.dumps(list(args)),
        'nonce': int(time.time() * 1000),
        }

    d['sign'] = md5.md5(('%s|%s|%s|%d|%s' % (d['version'], d['method'], d['args'], d['nonce'], secretKey)).encode('utf-8')).hexdigest()
    # Note: for the timeout problem of "urllib2.urlopen" function, you can set the timeout time; for example, urllib2.urlopen ('https://www.fmz.com/api/v1', urlencode(d).encode('utf-8'), timeout = 10), that is, set timeout for 10 seconds
    return json.loads(urllib2.urlopen('https://www.fmz.com/api/v1', urlencode(d).encode('utf-8')).read().decode('utf-8'))

# Return the docker list
print(api('GetNodeList'))
# Return the exchange list
print(api('GetPlatformList'))
# GetRobotList(offset, length, robotStatus, label), passing "-1" means obtaining all
print(api('GetRobotList', 0, 5, -1, 'member2'))
# CommandRobot(robotId, cmd) sends command to live trading
print(api('CommandRobot', 123, 'ok'))
# StopRobot(robotId) returns the live trading status code
print(api('StopRobot', 123))  
# RestartRobot(robotId) returns the live trading status code
print(api('RestartRobot', 123))
# GetRobotDetail(robotId) returns detailed live trading information
print(api('GetRobotDetail', 123))
package main

import (
    "fmt"
    "time"
    "encoding/json"
    "crypto/md5"
    "encoding/hex"
    "net/http"
    "io/ioutil"
    "strconv"
    "net/url"
)

// Fill in your own FMZ platform api key
var apiKey string = ""                                  
// Fill in your own FMZ platform secret key
var secretKey string = ""                               
var baseApi string = "https://www.fmz.com/api/v1"

func api(method string, args ... interface{}) (ret interface{}) {
    // Process args
    jsonStr, err := json.Marshal(args)
    if err != nil {
        panic(err)
    }

    params := map[string]string{
        "version" : "1.0", 
        "access_key" : apiKey,
        "method" : method,
        "args" : string(jsonStr),
        "nonce" : strconv.FormatInt(time.Now().UnixNano() / 1e6, 10),
    }    

    data := fmt.Sprintf("%s|%s|%s|%v|%s", params["version"], params["method"], params["args"], params["nonce"], secretKey)
    h := md5.New()
    h.Write([]byte(data))
    sign := h.Sum(nil)

    params["sign"] = hex.EncodeToString(sign)

    // http request 
    client := &http.Client{}

    // request 
    urlValue := url.Values{}
    for k, v := range params {
        urlValue.Add(k, v)
    }
    urlStr := urlValue.Encode()
    request, err := http.NewRequest("GET", baseApi + "?" + urlStr, nil)
    if err != nil {
        panic(err)
    }    

    resp, err := client.Do(request)
    if err != nil {
        panic(err)
    }

    defer resp.Body.Close()

    b, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }

    ret = string(b)
    return 
}

func main() {
    settings := map[string]interface{}{
        "name": "hedge test",
        "strategy": 104150,                      
        // K-line period parameter, "60" means 60 seconds
        "period": 60,                           
        "node" : 73938,                         
        "appid": "member2",                
        "exchanges": []interface{}{
            map[string]interface{}{
                "eid": "Exchange", 
                "label" : "test_bjex", 
                "pair": "BTC_USDT", 
                "meta" : map[string]interface{}{
                    // Fill in the access key
                    "AccessKey": "",                                
                    // Fill in the secret key
                    "SecretKey": "",                                
                    "Front" : "http://127.0.0.1:6666/exchange",
                },
            },
        },
    }

    method := "RestartRobot"
    fmt.Println("Call interface:", method)
    ret := api(method, 124577, settings)
    fmt.Println("main ret:", ret)
}

প্রত্যক্ষ যাচাইকরণ

এটি ছাড়াই যাচাইকরণ সমর্থন করেtoken(পাস)secret_keyসরাসরি), আপনি একটি URL তৈরি করতে পারেন যা সরাসরি অ্যাক্সেস করা যেতে পারে। উদাহরণস্বরূপ, ইউআরএল যা সরাসরি ইন্টারেক্টিভ নির্দেশাবলী দেয় লাইভ ট্রেডিং, যা ব্যবহার করা যেতে পারেTradingViewঅথবাWebHookঅন্যান্য ক্ষেত্রে কলব্যাক।CommandRobot(RobotId, Cmd)ফাংশন, প্যারামিটারnonceযাচাই করার প্রয়োজন নেই, এবং অ্যাক্সেস ফ্রিকোয়েন্সি এবং ইন্টারফেসের ভিজিটের সময় সীমাবদ্ধ নয়।

উদাহরণস্বরূপAccessKeyতৈরি এক্সটেনশানAPI KEYহচ্ছেঃxxxএবংSecretKeyহচ্ছেঃyyy. একটি ইন্টারেক্টিভ কমান্ড বার্তা পাঠাতে নিচের লিঙ্কটি দেখুন লাইভ ট্রেডিং আইডি সহ লাইভ ট্রেডিং186515, বার্তা content একটি স্ট্রিং:"ok12345".


https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyy&method=CommandRobot&args=[186515,"ok12345"]

যদি সরাসরি যাচাইকরণ সমর্থিত হয়, শুধুমাত্রCommandRobotইন্টারফেস সমর্থন করা হয়Bodyউদাহরণস্বরূপ,WebHook URLএরTradingView:


https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyy&method=CommandRobot&args=[186515,+""]

নিম্নলিখিত ফরম্যাটে সেটিং করার জন্য মনোযোগ দিনঃargs=[130350,+""], যেখানে130350হল লাইভ ট্রেডিংIDএফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের।

বার্তা বাক্সে সেট করুনTrading View(প্রার্থিত সংস্থা তথ্য পাঠানো হবে):

  • JSON বিন্যাসঃ

    https://www.fmz.comimg

    {"close": {{close}}, "name": "aaa"}
    

    লাইভ ট্রেডিংIDএর186515ইন্টারেক্টিভ কমান্ড স্ট্রিং গ্রহণ করতে পারেঃ{"close": 39773.75, "name": "aaa"}.

  • পাঠ্য বিন্যাসঃ

    https://www.fmz.comimg

    BTCUSDTPERP Crossing 39700.00 close: {{close}}
    

    লাইভ ট্রেডিংIDএর186515ইন্টারেক্টিভ কমান্ড স্ট্রিং গ্রহণ করতে পারেঃBTCUSDTPERP Crossing 39700.00 close: 39739.4.

উদাহরণPython & Golangভাষা কলঃ

#!/usr/bin/python
# -*- coding: utf-8 -*-

import json
import ssl

ssl._create_default_https_context = ssl._create_unverified_context

try:
    import urllib2
except:
    import urllib.request as urllib2

accessKey = 'your accessKey'
secretKey = 'your secretKey'

def api(method, *args):
    return json.loads(urllib2.urlopen(('https://www.fmz.com/api/v1?access_key=%s&secret_key=%s&method=%s&args=%s' % (accessKey, secretKey, method, json.dumps(list(args)))).replace(' ', '')).read().decode('utf-8'))

# If APIKEY does not have the interface permission, the call to
print(api('RestartRobot', 186515)) will fail, and the returned data
is: {'code': 4, 'data': None}
# print(api('RestartRobot', 186515))

# Printed Id: the live trading details of 186515
print(api('GetRobotDetail', 186515))  
package main

import (
    "fmt"
    "encoding/json"
    "net/http"
    "io/ioutil"
    "net/url"
)

// Fill in your own FMZ platform api key
var apiKey string = "your access_key"

// Fill in your own FMZ platform secret key
var secretKey string = "your secret_key"
var baseApi string = "https://www.fmz.com/api/v1"

func api(method string, args ... interface{}) (ret interface{}) {
    jsonStr, err := json.Marshal(args)
    if err != nil {
        panic(err)
    }
    
    params := map[string]string{
        "access_key" : apiKey,
        "secret_key" : secretKey,
        "method" : method,
        "args" : string(jsonStr),
    }    

    // http request 
    client := &http.Client{}

    // request 
    urlValue := url.Values{}
    for k, v := range params {
        urlValue.Add(k, v)
    }
    urlStr := urlValue.Encode()
    request, err := http.NewRequest("GET", baseApi + "?" + urlStr, nil)
    if err != nil {
        panic(err)
    }    

    resp, err := client.Do(request)
    if err != nil {
        panic(err)
    }

    defer resp.Body.Close()

    b, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        panic(err)
    }

    ret = string(b)
    return 
}

func main() {
    method := "GetRobotDetail"
    fmt.Println("Call interface:", method)
    ret := api(method, 186515)
    fmt.Println("main ret:", ret)
}

TradingView সতর্কতা উপলব্ধি করতে FMZ Quant এ বর্ধিত API ব্যবহার করুন সিগন্যাল ট্রেডিং

এক্সটেন্ডেড এপিআই ইন্টারফেসের ব্যাখ্যা

  • এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের বর্ধিত এপিআই ইন্টারফেস ক্যোয়ারী পরামিতি যোগ করুন (বিভক্ত)?) এর পরপরইhttps://www.fmz.com/api/v1. নিম্নলিখিত অনুরোধ পরামিতিগুলি ব্যবহার করে প্রকাশিত হয়Python:

    {
        "version"   : "1.0",
        "access_key": "xxx",
        "method"    : "GetNodeList",
        "args"      : [],
        "nonce"     : 1516292399361,
        "sign"      : "085b63456c93hfb243a757366600f9c2"
    }
    
    মাঠ নির্দেশাবলী
    সংস্করণ সংস্করণ নম্বর।
    অ্যাক্সেস_কী অ্যাক্সেসকি, অ্যাকাউন্ট ম্যানেজমেন্ট পাতায় আবেদন করুন।
    পদ্ধতি নির্দিষ্ট কলিং পদ্ধতি।
    আর্গস কল করা নির্দিষ্ট পদ্ধতির প্যারামিটার তালিকা।
    নোনস টাইমস্ট্যাম্প, মিলিসেকেন্ডে, স্ট্যান্ডার্ড টাইমস্ট্যাম্প থেকে 1 ঘন্টার ত্রুটির অনুমতি দেয়। নোনসটি সর্বশেষ অ্যাক্সেসের নোনস মানের চেয়ে বড় হতে হবে।
    চিহ্ন Signature.

    প্রতিটি প্যারামিটার নাম চিহ্ন দ্বারা পৃথক করা হয়&, এবং প্যারামিটার নাম এবং মান প্রতীক সঙ্গে সংযুক্ত করা হয়=. সম্পূর্ণ অনুরোধ URL (গ্রহণmethod=GetNodeListউদাহরণস্বরূপঃ

    https://www.fmz.com/api/v1?access_key=xxx&nonce=1516292399361&args=%5B%5D&sign=085b63456c93hfb243a757366600f9c2&version=1.0&method=GetNodeList
    

    মনে রাখবেন যে কোনsecret_keyঅনুরোধের পরামিতিগুলির মধ্যে একটি পরামিতি।

  • স্বাক্ষর পদ্ধতি দ্যsignঅনুরোধ প্যারামিটারে প্যারামিটারটি নিম্নলিখিত ফরম্যাটের অনুযায়ী এনক্রিপ্ট করা হয়ঃ

    version + "|" + method + "|" + args + "|" + nonce + "|" + secretKey
    

    স্ট্রিং সংযুক্ত করার পর, ব্যবহার করুনMD5এনক্রিপশন অ্যালগরিদম স্ট্রিং এনক্রিপ্ট করতে এবং এটি একটি হেক্সাডেসিমাল ডেটা স্ট্রিং মান রূপান্তর করতে, প্যারামিটারের মান উল্লেখsign. স্বাক্ষর অংশের জন্য, দেখুনPythonকোড এক্সটেনশন এপিআই ইন্টারফেসযাচাই করার উপায় :

    # Parameter
    d = {
        'version': '1.0',
        'access_key': accessKey,
        'method': method,
        'args': json.dumps(list(args)),
        'nonce': int(time.time() * 1000),
    }
    
    # Calculate "sign" signature
    d['sign'] = md5.md5(('%s|%s|%s|%d|%s' % (d['version'], d['method'], d['args'], d['nonce'], secretKey)).encode('utf-8')).hexdigest()
    
  • ইন্টারফেস সার্ভিস ত্রুটিঃ

    • অপর্যাপ্ত পরামিতিঃ
      {
          "code":0,
          "data":{
              "result":null,
              "error":"Params length incorrect"
          }
      }
      

GetNodeList

দ্যGetNodeListডকারদের তালিকা পেতে এই পদ্ধতি ব্যবহার করা হয় এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের অ্যাকাউন্টেAPI KEYঅনুরোধে।

{
    "code": 0,
    "data": {
        "result": {
            "all": 1,
            "nodes": [{
                "build": "3.7",
                "city": "...",
                "created": "2024-11-08 09:21:08",
                "date": "2024-11-08 16:37:16",
                "forward": "...",
                "guid": "...",
                "host": "node.fmz.com:9902",
                "id": 123,
                "ip": "...",
                "is_owner": true,
                "loaded": 0,
                "name": "MacBook-Pro-2.local",
                "online": true,
                "os": "darwin/amd64",
                "peer": "...",
                "public": 0,
                "region": "...",
                "tunnel": false,
                "version": "...",
                "wd": 0
            }]
        },
        "error": null
    }
}

রিটার্ন ভ্যালু ক্ষেত্রের বর্ণনা (সত্যিকারের অর্থ স্পষ্ট এবং পুনরাবৃত্তি করা হবে না):

  • সমস্তঃ বর্তমান অ্যাকাউন্টের সাথে যুক্ত ডকারদের সংখ্যা।
  • নোড: ডকার নোডের বিবরণ রেকর্ড করে।
    • বিল্ডঃ ভার্সন নম্বর।
    • শহর: যে শহরে আপনি অবস্থান করছেন।
    • is_owner: true একটি ব্যক্তিগত ডকার নির্দেশ করে, false একটি পাবলিক ডকার নির্দেশ করে।
    • লোডডঃ লোড, কৌশল ইনস্ট্যান্সের সংখ্যা।
    • পাবলিকঃ ০ মানে একটি ব্যক্তিগত ডকার, ১ মানে একটি পাবলিক ডকার।
    • অঞ্চল: ভৌগলিক অবস্থান।
    • সংস্করণঃ ডকারের বিস্তারিত সংস্করণ তথ্য।
    • wd: অফলাইন অ্যালার্ম সক্ষম করা হবে কি না, 0 মানে অক্ষম। এক-ক্লিক স্থাপনার ডকার কিছু অতিরিক্ত তথ্য ধারণ করে. ক্ষেত্র উপসর্গ দিয়ে শুরুecs_এবংunit_, যা ওয়ান ক্লিক ডিপ্লয়িং ডকার সার্ভারের প্রাসঙ্গিক তথ্য (অপারেটরের নাম, কনফিগারেশন, অবস্থা ইত্যাদি), বিলিং চক্র, মূল্য এবং অন্যান্য তথ্য রেকর্ড করে, যা এখানে পুনরাবৃত্তি করা হবে না।

কোন প্যারামিটার নেই

GetRobotGroupList-এ যান

GetRobotGroupList()লাইভ ট্রেডিং গ্রুপিং তালিকা প্রদান করে এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের অ্যাকাউন্টAPI KEYঅনুরোধে।

{
    "code": 0,
    "data": {
        "result": {
            "items": [{
                "id": 3417,
                "name": "Test"
            }, {
                "id": 3608,
                "name": "Live trading demo"
            }]
        },
        "error": null
    }
}
  • পয়েন্টঃ লাইভ ট্রেডিং গ্রুপিং তথ্য।
    • আইডিঃ লাইভ ট্রেডিং গ্রুপিং আইডি
    • নামঃ লাইভ ট্রেডিং গ্রুপিংয়ের নাম। দ্যitemsক্ষেত্র শুধুমাত্র নতুন তৈরি গ্রুপ রেকর্ড.items.

কোন প্যারামিটার নেই

প্ল্যাটফর্ম তালিকা পান

GetPlatformList()এক্সচেঞ্জের তালিকা প্রদান করে FMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম অ্যাকাউন্ট দ্বারা যুক্ত করা হয়েছে থেকেAPI KEYঅনুরোধে।

{
    "code": 0,
    "data": {
        "result": {
            "all": 2,
            "platforms": [{
                "category": "加密货币||Crypto",
                "date": "2023-12-07 13:44:52",
                "eid": "Binance",
                "id": 123,
                "label": "Binance",
                "logo": "...",
                "name": "币安现货|Binance",
                "stocks": ["BTC_USDT", "LTC_USDT", "ETH_USDT", "ETC_USDT", "BTC_TUSD", "ETH_TUSD", "BNB_TUSD"],
                "website": "..."
            }, {
                "category": "通用协议|Custom Protocol",
                "date": "2020-11-09 11:23:48",
                "eid": "Exchange",
                "id": 123,
                "label": "XX Exchange REST Protocol",
                "logo": "...",
                "name": "通用协议|Custom Protocol",
                "stocks": ["BTC_USDT", "ETH_USDT"],
                "website": ""
            }]
        },
        "error": null
    }
}
  • all: যোগ করা/কনফিগার করা এক্সচেঞ্জ অবজেক্টের সংখ্যা
  • প্ল্যাটফর্মঃ বিনিময় সংক্রান্ত তথ্য।
    • eid: FMZ Quant Trading প্ল্যাটফর্মে এক্সচেঞ্জের আইডি,eidকিছু কনফিগারেশন এবং পরামিতিতে ব্যবহার করা হবে।

কোন প্যারামিটার নেই

GetRobotList

দ্যGetRobotListপদ্ধতি লাইভ তালিকা পেতে ব্যবহার করা হয় FMZ Quant Trading Platform অ্যাকাউন্টের অধীনে ট্রেডিং এর সাথে মিলে যায়API KEYঅনুরোধে।

{
    "code": 0,
    "data": {
        "result": {
            "all": 1,
            "concurrent": 0,
            "robots": [{
                "charge_time": 1731654846,
                "date": "2024-11-12 14:05:29",
                "end_time": "2024-11-15 14:56:32",
                "fixed_id": 4509153,
                "id": 591026,
                "is_sandbox": 0,
                "name": "test",
                "node_guid": "45891bcf3d57f99b08a43dff76ee1ea1",
                "node_id": 4519153,
                "node_public": 0,
                "profit": 0,
                "public": 0,
                "refresh": 1731651257000,
                "start_time": "2024-11-15 14:56:30",
                "status": 3,
                "strategy_id": 411670,
                "strategy_isowner": true,
                "strategy_language": 0,
                "strategy_name": "test",
                "strategy_public": 0,
                "uid": "105ed6e511cc977921610fdbb7e2a1d6",
                "wd": 0
            }]
        },
        "error": null
    }
}
  • রোবট: লাইভ ট্রেডিং তথ্য
    • group_id: লাইভ ট্রেডিং গ্রুপের আইডি। যদি লাইভ ট্রেডিং কৌশলটি ডিফল্ট গ্রুপে থাকে, তাহলে কোনgroup_id field.

পেজিং ক্যোয়ারী অফসেট সেটিং। অপসারণ মিথ্যা সংখ্যা পেজিং ক্যোয়ারির দৈর্ঘ্য সেটিং। লম্বা মিথ্যা সংখ্যা জিজ্ঞাসা করা হবে লাইভ ট্রেডিং অবস্থা নির্দিষ্ট করুন, বর্ধিত API ইন্টারফেস পড়ুনলাইভ ট্রেডিং কোড, পাস-1সব লাইভ ট্রেডিং পেতে. রোবটStatus মিথ্যা সংখ্যা আপনি যে লাইভ ট্রেডিংয়ের ক্যোয়ারী করতে চান তার কাস্টম লেবেল উল্লেখ করুন, এবং আপনি এই লেবেলের সমস্ত লাইভ ট্রেডিং ফিল্টার করতে পারেন। লেবেল মিথ্যা স্ট্রিং কীওয়ার্ড অনুসন্ধান করুন। কীওয়ার্ড মিথ্যা স্ট্রিং

নিয়ে যাওPythonlanguages বর্ধিত API ইন্টারফেসযাচাই করার উপায়উদাহরণস্বরূপঃprint(api('GetRobotList')): সব লাইভ ট্রেডিং তথ্য পান.print(api('GetRobotList', 'member2')): কাস্টম লেবেল সদস্যের সাথে সমস্ত লাইভ ট্রেডিংয়ের তথ্য মুদ্রণ করুন2.print(api('GetRobotList', 0, 5, -1, 'member2')): 0 থেকে 5 পৃষ্ঠা এবং সদস্য 2 দিয়ে লেবেলযুক্ত 5 টি পর্যন্ত রোবটের তালিকা।

কমান্ডরবট

দ্যCommandRobotপদ্ধতি একটি মিথস্ক্রিয়া পাঠাতে ব্যবহার করা হয় এফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের লাইভ ট্রেডিংয়ের জন্য কমান্ড অ্যাকাউন্টAPI KEYঅনুরোধে। লাইভ ট্রেডিং এর ইন্টারঅ্যাকশন কমান্ড গ্রহণকারী লাইভ ট্রেডিং ট্রেডিং আইডিrobotIdপ্যারামিটার, এবং ইন্টারঅ্যাকশন কমান্ড দ্বারা ফিরে আসেGetCommand()ফাংশন তাকে ধরার কৌশল বলেছিল।

{
    "code":0,
    "data":{
        "result":true,
        "error":null
    }
}
  • ফলাফলঃ ইন্টারেক্টিভ কমান্ডটি সফলভাবে পাঠানো হয়েছে কিনা; যখন একটি লাইভ ট্রেডিংয়ে একটি কমান্ড পাঠানো হয় যা চালানো হয় না, রিটার্ন ডেটাতে ফলাফলটি মিথ্যা।

প্যারামিটারrobotIdআইডি উল্লেখ করতে ব্যবহৃত হয় লাইভ ট্রেডিং যে ইন্টারেক্টিভ কমান্ড পায়. আপনি ব্যবহার করতে পারেন পত্রিকাGetRobotListলাইভ তথ্য পেতে পদ্ধতি অ্যাকাউন্টের অধীনে ট্রেডিং, যা লাইভ ট্রেডিং আইডি ধারণ করে।

robotId সত্য সংখ্যা প্যারামিটারcmdহল বটকে পাঠানো ইন্টারেক্টিভ কমান্ড; কমান্ডটি ফাংশন দ্বারা ধরা হবেGetCommand(), যা কৌশলটিতে ইন্টারঅ্যাক্টিভ লজিককে ট্রিগার করে। কৌশল কোডে ইন্টারঅ্যাক্টিভ লজিকের নির্দিষ্ট বাস্তবায়ন জন্য, অনুগ্রহ করে দেখুনGetCommand()কর্মক্ষমতাFMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম API ম্যানুয়াল.

সিএমডি সত্য স্ট্রিং

লাইভ ট্রেডিং স্ট্র্যাটেজি, এই স্ট্র্যাটেজি চালু থাকলে লাইভ ট্রেডিং আইডি হবে 123:

function main() {
    while (true) {
        var cmd = GetCommand()
        if (cmd) {
            Log(cmd)
        }
        Sleep(2000)
    }
}

যদি আমরা এই অধ্যায়ে পাইথন টেস্ট স্ক্রিপ্ট ব্যবহার করি, তবে FMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের বর্ধিত API অ্যাক্সেস করুনঃapi("CommandRobot", 123, "test command"). আইডি 123 এর সাথে লাইভ ট্রেডিং ইন্টারেক্টিভ কমান্ড পাবেন:test command, এবং তারপর লগ ফাংশন আউটপুট মাধ্যমে এটি প্রিন্ট আউট.

বন্ধ করুনরোবট

StopRobot(RobotId)ব্যবহার করা হয়API KEYFMZ Quant Trading-এর লাইভ ট্রেডিং-এর সাথে মিলে যায় প্ল্যাটফর্ম অ্যাকাউন্ট. লাইভ ট্রেডিং আইডি চলমান থামাতে লাইভ ট্রেডিং আইডিrobotId parameter.

{
    "code":0,
    "data":{
        "result":2,
        "error":null
    }
}
  • ফলাফলঃ লাইভ ট্রেডিং স্ট্যাটাস কোড হল ২, যার অর্থ বন্ধ।

প্যারামিটারrobotIdআইডি উল্লেখ করতে ব্যবহৃত হয় লাইভ ট্রেডিং বন্ধ করা হবে. আপনি ব্যবহার করতে পারেনGetRobotListলাইভ ট্রেডিং তথ্য পেতে পদ্ধতি অ্যাকাউন্ট, যেখানে লাইভ ট্রেডিং আইডি রয়েছে।

robotId সত্য সংখ্যা

রবট পুনরায় চালু করুন

দ্যRestartRobotএই পদ্ধতি ব্যবহার করা হয় লাইভ ট্রেডিং পুনরায় শুরু করার জন্যAPI KEYপুনরায় চালু করা লাইভ ট্রেডিং এর আইডি হল লাইভ ট্রেডিং এর আইডিrobotId parameter.

{
    "code":0,
    "data":{
        "result":1,
        "error":null
    }
}
  • ফলাফলঃ লাইভ ট্রেডিং স্ট্যাটাস কোড, 1 মানে চলমান।

দ্যrobotIdপ্যারামিটারটি আইডি নির্দিষ্ট করতে ব্যবহৃত হয় লাইভ ট্রেডিং পুনরায় শুরু করা হবে.GetRobotListলাইভ ট্রেডিং তথ্য পেতে পদ্ধতি অ্যাকাউন্ট, যেখানে লাইভ ট্রেডিং আইডি রয়েছে।

robotId সত্য সংখ্যা লাইভ ট্রেডিং কনফিগারেশন পরামিতি, পরামিতিsettingsবিন্যাস নিম্নরূপঃ

{
    "appid":"test",
    "args":[],
    "exchanges":[
        {"pair":"SOL_USDT","pid":123},
        {"pair":"ETH_USDT","pid":456}
    ],
    "name":"test",
    "node":123,
    "period":60,
    "strategy":123
}
  • appid: কাস্টম ক্ষেত্র ট্যাগ সংজ্ঞায়িত করা যায়।
  • args: কৌশল প্যারামিটার সেটিংস গঠন একটি অ্যারে, প্রতিটি উপাদান একটি পরামিতি. উদাহরণস্বরূপ, যদি কৌশল একটি পরামিতি আছেInterval, এবং আপনি সেট করতে চানInterval500 যখন কৌশল পুনরায় শুরু, তারপরargsএর মধ্যে রয়েছেঃ["Interval", 500]অর্থাৎ:"args": [["Interval", 500]].
  • এক্সচেঞ্জঃ লাইভ ট্রেডিংয়ের জন্য এক্সচেঞ্জ অবজেক্ট কনফিগারেশন কাঠামোটি একটি অ্যারে, যেখানে প্রতিটি উপাদান একটি এক্সচেঞ্জ অবজেক্ট কনফিগারেশন।
    • এটি প্ল্যাটফর্মে কনফিগার করা হয়েছে যে বিনিময় বস্তুর সাথে আবদ্ধ করতে পারেন অর্থাৎ, ব্যবহারpidকনফিগারেশনঃ{"pair":"SOL_USDT","pid":123}; pidএর মাধ্যমে অনুসন্ধান করা যেতে পারেGetPlatformListইন্টারফেস, এবংidফেরত তথ্য ক্ষেত্রের বিনিময় হয়pid.
    • আমরা সরাসরি কনফিগারেশন তথ্য পাস এবং বিনিময় বস্তু আবদ্ধ করতে পারেন অর্থাৎ, ব্যবহারeidকনফিগারেশনঃ{"eid":"Huobi","label":"test Huobi","meta":{"AccessKey":"123","SecretKey":"123"},"pair":"BCH_BTC"}; সংবেদনশীল তথ্য যেমনঃAPI KEYFMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম দ্বারা সংরক্ষণ করা হয় না, এবং এই ডেটা সরাসরি ডকার প্রোগ্রামে পাঠানো হয়। যদি এই ধরনের কনফিগারেশন ব্যবহার করা হয়, তবে লাইভ ট্রেডিং তৈরি বা পুনরায় শুরু হওয়ার প্রতিটি সময় তথ্যটি কনফিগার করা আবশ্যক।
    • এটা বাঁধতে পারেকাস্টমস প্রোটোকলবিনিময় বস্তু এটি কনফিগারেশন তথ্য পাস করতে পারেঃ{"eid":"Exchange","label":"test exchange","pair":"BTC_USDT","meta":{"AccessKey":"123","SecretKey":"123","Front":"http://127.0.0.1:6666/test"}}. labelবৈশিষ্ট্য বর্তমান দ্বারা অ্যাক্সেস করা এক্সচেঞ্জ অবজেক্টের জন্য একটি লেবেল সেট করা হয়কাস্টমস প্রোটোকল, যা প্রাপ্ত করা যায়exchange.GetLabel()কৌশল মধ্যে ফাংশন।
  • নামঃ কৌশল নাম
  • নোডঃ ডকার আইডি কোন ডকার চালানো হবে তা নির্দিষ্ট করে। যদি এই বৈশিষ্ট্যটি সেট না করা হয়, তাহলে ডকারকে স্বয়ংক্রিয়ভাবে চালানোর জন্য নির্ধারণ করা হবে।
  • সময়কালঃ ডিফল্ট K-লাইন সময়কাল কে-লাইন প্যারামিটার, ৬০ মানে ৬০ সেকেন্ড।
  • কৌশলঃ কৌশল আইডি এটি ব্যবহার করে প্রাপ্ত করা যায়GetStrategyList method.

সেটিংস মিথ্যা JSON অবজেক্ট

যদি একটি লাইভ ট্রেডিং এক্সটেন্ডেড এপিআই দ্বারা তৈরি করা হয়, এক্সটেন্ডেড এপিআইRestartRobot (RobotId, Settings)পুনরায় চালু করার জন্য ব্যবহার করা উচিত, এবংsettingsপ্যারামিটার পাস করা আবশ্যক। প্ল্যাটফর্ম পৃষ্ঠায় তৈরি লাইভ ট্রেডিং এক্সটেন্ডেড এপিআই বা পৃষ্ঠার বোতামে ক্লিক করে পুনরায় শুরু করা যেতে পারে। আপনি পাস বা পাস করতে পারেন নাsettingsযদি আপনি শুধুমাত্র পাসRobotIdপ্যারামিটার, বর্তমান লাইভ ট্রেডিং সেটিংস অনুযায়ী লাইভ ট্রেডিং শুরু করুন।

GetRobotবিস্তারিত

দ্যGetRobotDetailএফএমজেড কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম অ্যাকাউন্টের অধীনে লাইভ ট্রেডিংয়ের বিবরণ পেতে এই পদ্ধতি ব্যবহার করা হয়।API KEYলাইভ ট্রেডিং এর আইডি হল লাইভ ট্রেডিং এর আইডি যাrobotId parameter.

{
    "code": 0,
    "data": {
        "result": {
            "robot": {
                "charge_time": 1732246539,
                "charged": 5850000,
                "consumed": 5375000000,
                "date": "2018-12-28 14:34:51",
                "favorite": {
                    "added": false,
                    "type": "R"
                },
                "fixed_id": 123,
                "hits": 1,
                "id": 123,
                "is_deleted": 0,
                "is_manager": true,
                "is_sandbox": 0,
                "name": "test",
                "node_id": 123,
                "pexchanges": {
                    "123": "Futures_OKCoin"
                },
                "phash": {
                    "123": "ca1aca74b9cf7d8624f2af2dac01e36d"
                },
                "plabels": {
                    "123": "OKEX futures V5"
                },
                "priority": 0,
                "profit": 0,
                "public": 0,
                "refresh": 1732244453000,
                "robot_args": "[]",
                "start_time": "2024-11-22 11:00:48",
                "status": 1,
                "strategy_args": "[]",
                "strategy_exchange_pairs": "[60,[123],[\"ETH_USDT\"]]",
                "strategy_id": 123,
                "strategy_last_modified": "2024-11-21 16:49:25",
                "strategy_name": "test",
                "strategy_public": "0",
                "uid": "105ed6e51bcc17792a610fdbb7e2a1d6",
                "username": "abc",
                "wd": 0
            }
        },
        "error": null
    }
}
  • charge_time: পরবর্তী কমানোর সময় বর্তমান কমানোর পরে কার্যকর মেয়াদ শেষ হওয়ার সময়।
  • চার্জঃ সময় ইতিমধ্যে খরচ হয়েছে।
  • খরচঃ খরচ পরিমাণ (0.125 USD = 12500000 / 1e8) ।
  • তারিখঃ সৃষ্টির তারিখ।
  • fixed_id: ডকার আইডি যখন লাইভ ট্রেডিং চলছে তখন নির্ধারিত হয়। যদি এটি স্বয়ংক্রিয় হয়, মানটি -1 হয়।
  • is_manager: আপনার কাছে এই লাইভ ট্রেডিং পরিচালনা করার ক্ষমতা আছে কি না।
  • is_sandbox: এটি একটি সিমুলেটেড ট্রেডিং কিনা।
  • নামঃ লাইভ ট্রেডিং এর নাম।
  • node_id: ডকার আইডি ।
  • পেক্সচেঞ্জঃ লাইভ ট্রেডিংয়ের বিনিময় বস্তু, 123 হল পিড, এবং ফ্যুচারস_ওকেকয়েন হল বিনিময় নাম।
  • plabels: লাইভ ট্রেডিংয়ে কনফিগার করা এক্সচেঞ্জ অবজেক্টের ট্যাগ তথ্য।
  • মুনাফাঃ লাইভ ট্রেডিং মুনাফার তথ্য।
  • পাবলিকঃ লাইভ ট্রেডিং পাবলিক কিনা।
  • রিফ্রেশঃ সর্বশেষ সক্রিয় সময়।
  • strategy_exchange_pairs: কনফিগার করা এক্সচেঞ্জ অবজেক্ট, সেট ট্রেডিং জোড়া তথ্য।
  • wd: অফলাইন অ্যালার্ম সক্ষম করা হবে কিনা।

দ্যrobotIdপ্যারামিটারটি লাইভ ট্রেডিং এর আইডি নির্দিষ্ট করতে ব্যবহৃত হয় যার জন্য বিবরণ প্রাপ্ত করা হয়।GetRobotListঅ্যাকাউন্টের লাইভ ট্রেডিং সম্পর্কিত তথ্য পাওয়ার পদ্ধতি, যার মধ্যে লাইভ ট্রেডিং আইডি রয়েছে।

robotId সত্য সংখ্যা

অ্যাট্রিবিউট বর্ণনাstrategy_exchange_pairsউদাহরণস্বরূপ নিচের তথ্যগুলো নিই:

"[60,[44314,42960,15445,14703],[\"BTC_USDT\",\"BTC_USDT\",\"ETH_USDT\",\"ETH_USDT\"]]"

প্রথম তথ্য60ডিফল্ট K-লাইন সময়কালের প্রতিনিধিত্ব করে লাইভ ট্রেডিং দ্বারা 1 মিনিট, অর্থাৎ 60 সেকেন্ড।

[44314,42960,15445,14703]হল বিনিময় বস্তুpidলাইভ ট্রেডিংয়ের জন্য কনফিগার করা (সংযোজন আদেশ অনুযায়ী) ।

[\"BTC_USDT\",\"BTC_USDT\",\"ETH_USDT\",\"ETH_USDT\"]হচ্ছে লাইভ দ্বারা কনফিগার করা এক্সচেঞ্জ অবজেক্টের জন্য ট্রেডিং জুটি সেট ট্রেডিং (সংযোগের ক্রমে এবং এক-এক চিঠিপত্রের মাধ্যমে) সঙ্গেpid).

অ্যাকাউন্ট পান

দ্যGetAccountএই পদ্ধতি ব্যবহার করা হয় অ্যাকাউন্টের তথ্য অর্জনের জন্যAPI KEYFMZ Quant Trading Platform অ্যাকাউন্টের অনুরোধে।

{
    "code":0,
    "data":{
        "result":{
            "balance":22944702436,
            "concurrent":0,
            "consumed":211092719653,
            "currency":"USD",
            "email":"123@qq.com",
            "openai":false,
            "settings":null,
            "sns":{"wechat":true},
            "uid":"105ea6e51bcc177926a10fdbb7e2a1d6",
            "username":"abc"
        },
        "error":null
    }
}
  • ব্যালেন্সঃ অ্যাকাউন্ট ব্যালেন্স এখানে মানটি নির্ভুলতা নিয়ন্ত্রণের কারণে একটি পূর্ণসংখ্যা। এটিকে প্রকৃত মানে রূপান্তর করতে, আপনাকে এটিকে 1e8 (যেমন 10 এর 8 তম শক্তি) দ্বারা ভাগ করতে হবে। এখানে প্রকৃত মানটি হলঃ 229.44702436

GetExchangeList-এ যান

দ্যGetExchangeListFMZ Quant Trading Platform দ্বারা সমর্থিত এক্সচেঞ্জের তালিকা এবং প্রয়োজনীয় কনফিগারেশন তথ্য অর্জনের জন্য এই পদ্ধতি ব্যবহার করা হয়।

যখনisSummaryপ্যারামিটার হলfalse, ফেরত দেওয়া তথ্য হলঃ

{
    "code": 0,
    "data": {
        "result": {
            "exchanges": [{
                "category": "加密货币||Crypto",
                "eid": "Futures_Binance",
                "id": 74,
                "logo": "/upload/asset/d8d84b23e573e9326b99.svg",
                "meta": "[{\"desc\": \"Access Key\", \"qr\":\"apiKey\",\"required\": true, \"type\": \"string\", \"name\": \"AccessKey\", \"label\": \"Access Key\"}, {\"encrypt\": true, \"qr\":\"secretKey\",\"name\": \"SecretKey\", \"required\": true, \"label\": \"Secret Key\", \"type\": \"password\", \"desc\": \"Secret Key\"}]",
                "name": "币安期货|Futures_Binance",
                "priority": 200,
                "stocks": "BTC_USDT,ETH_USDT,ETH_USD",
                "website": "https://accounts.binance.com/zh-TC/register?ref=45110270"
            }]
        },
        "error": null
    }
}

যখনisSummaryপ্যারামিটার হলtrue, ফেরত দেওয়া তথ্য হলঃ

{
    "code": 0,
    "data": {
        "result": {
            "exchanges": [{
                "category": "加密货币||Crypto",
                "eid": "Futures_Binance",
                "id": 74,
                "logo": "/upload/asset/d8d84b23e573e9326b99.svg",
                "name": "币安期货|Futures_Binance",
                "priority": 200,
                "website": "https://accounts.binance.com/zh-TC/register?ref=45110270"
            }]
        },
        "error": null
    }
}
  • মেটাঃ কনফিগারেশন মেটাডেটা বিনিময় করুন।

দ্যisSummaryপ্যারামিটারটি রিটার্ন করা তথ্য সংক্ষিপ্ত তথ্য কিনা তা নির্দিষ্ট করতে ব্যবহৃত হয়।

isসংক্ষিপ্তসার সত্য বুল

মুছে ফেলুনNode

দ্যDeleteNode(Nid)পদ্ধতি ডকার নোড সংশ্লিষ্ট মুছে ফেলার জন্য ব্যবহার করা হয়API KEYFMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম অ্যাকাউন্টের অনুরোধে। মুছে ফেলা ডকার নোড আইডি হ'ল ডকার আইডিnid parameter.

{
    "code":0,
    "data":{
        "result":true,
        "error":null
    }
}
  • ফলাফলঃ সংশ্লিষ্ট ডকার প্রোগ্রাম সফলভাবে মুছে ফেলা হয় কিনা।

দ্যnidপ্যারামিটার ব্যবহার করা হয় ডকারের আইডি নির্দিষ্ট করার জন্য মুছে ফেলা হবে. আপনি ব্যবহার করতে পারেনGetNodeListঅ্যাকাউন্টের ডকারদের সম্পর্কে তথ্য পাওয়ার পদ্ধতি।

নিড সত্য সংখ্যা

মুছে ফেলুনরোবট

দ্যDeleteRobot(RobotId, DeleteLogs)এই পদ্ধতি ব্যবহার করা হয় লাইভ ট্রেডিং মুছে ফেলার জন্যAPI KEYFMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম অ্যাকাউন্টের অধীনে অনুরোধে। মুছে ফেলা লাইভ ট্রেডিং আইডি হল লাইভ ট্রেডিংrobotId parameter.

{
    "code":0,
    "data":{
        "result":0,
        "error":null
    }
}
  • ফলাফলঃ লাইভ ট্রেডিং ডিলিটেশন অপারেশনের ফিডব্যাকের ফলাফল। ০ঃ স্বাভাবিকভাবে মুছে ফেলুন। -২ঃ মুছে ফেলা সফল হয়েছে, কিন্তু লাইভ ট্রেডিং এর সাথে যুক্ত ডকারের সাথে যোগাযোগ করা সম্ভব হয়নি। অনুগ্রহ করে ফাইল 123.db3 ম্যানুয়ালি মুছে ফেলুন!

প্যারামিটারrobotIdআইডি উল্লেখ করতে ব্যবহৃত হয় লাইভ ট্রেডিং মুছে ফেলা হবে.GetRobotListলাইভ ট্রেডিং তথ্য পেতে পদ্ধতি অ্যাকাউন্ট, যেখানে লাইভ ট্রেডিং আইডি রয়েছে।

robotId সত্য সংখ্যা দ্যdeleteLogsপ্যারামিটারটি ব্যবহার করা হয় যদি একটি সত্য মান পাস করা হয় তবে লাইভ ট্রেডিং লগটি মুছে ফেলা হবে কিনা তা সেট করতে (যেমনঃtrue), লাইভ ট্রেডিং লগ মুছে ফেলা হয়।

মুছে ফেলুনলগ সত্য বুল

GetStrategyList-এ যান

দ্যGetStrategyListপ্ল্যাটফর্মের কৌশল সংক্রান্ত তথ্য পাওয়ার জন্য এই পদ্ধতি ব্যবহার করা হয়।

{
    "code": 0,
    "data": {
        "result": {
            "all": 123,
            "strategies": [{
                "category": 9,
                "date": "2024-11-10 20:40:04",
                "description": "",
                "forked": 0,
                "hits": 0,
                "id": 123,
                "is_buy": false,
                "is_owner": false,
                "language": 2,
                "last_modified": "2024-11-11 17:23:52",
                "name": "HedgeGridStrategy",
                "profile": {
                    "avatar": "...",
                    "nickname": "abc",
                    "uid": "4ed225440db1eda23fe05ed10184113e"
                },
                "public": 0,
                "tags": "",
                "uid": "4ed225440db1eda23fe05ed10184113e",
                "username": "abc"
            }]
        },
        "error": null
    }
}
  • all: ফিল্টার ক্যোয়ারী দ্বারা পাওয়া কৌশলগুলির মোট সংখ্যা।
  • কৌশল: নির্দিষ্ট কৌশল সংক্রান্ত তথ্য অনুসন্ধান করা হয়।

দ্যoffsetপ্যারামিটারটি অনুসন্ধানের সময় অফসেট সেট করতে ব্যবহৃত হয়।

অপসারণ সত্য সংখ্যা দ্যlengthপ্রশ্নের দৈর্ঘ্য সেট করতে প্যারামিটার ব্যবহার করা হয়।

লম্বা সত্য সংখ্যা দ্যstrategyTypeপ্যারামিটার ব্যবহার করা হয় কৌশল টাইপ সেট করতে।

  • strategyTypeপ্যারামিটার সেটিং0: সব কৌশল।
  • strategyTypeপ্যারামিটার সেটিং1: কৌশলটি সর্বজনীন।
  • strategyTypeপ্যারামিটার সেটিং2: কৌশল পর্যালোচনা করা হবে।

কৌশলপ্রকার সত্য সংখ্যা দ্যcategoryপ্যারামিটারটি ব্যবহার করা হয় প্রশ্ন করা কৌশল বিভাগ সেট করতে।

  • categoryপ্যারামিটার সেটিং-1: সব কৌশল।
  • categoryপ্যারামিটার সেটিং0: কাস্টম কৌশল।

শ্রেণী সত্য সংখ্যা দ্যneedArgsপ্যারামিটার ব্যবহার করা হয় যদি কৌশল জিজ্ঞাসা করা হয় প্যারামিটার আছে সেট করতে.

  • needArgsপ্যারামিটার সেটিং0: সব কৌশল।

needArgs সত্য সংখ্যা দ্যlanguageপ্যারামিটার ব্যবহার করা হয় প্রোগ্রামিং ভাষা সেট করার জন্য কৌশল জিজ্ঞাসা করা হবে.

  • languageপ্যারামিটার সেটিংস0: জাভাস্ক্রিপ্ট ভাষা।
  • languageপ্যারামিটার সেটিংস1: পাইথন ভাষা।
  • languageপ্যারামিটার সেটিংস2: সি++ ভাষা।
  • languageপ্যারামিটার সেটিংস3: ভিজ্যুয়ালাইজেশন কৌশল।
  • languageপ্যারামিটার সেটিংস4: আমার ভাষা.
  • languageপ্যারামিটার সেটিংস5: পাইন ভাষা।

ভাষা সত্য সংখ্যা দ্যkwপ্যারামিটার ব্যবহার করা হয় অনুসন্ধান করা কৌশল কীওয়ার্ড সেট করতে.

  • একটি ফাঁকা স্ট্রিং সেট করার অর্থ হল কোন কীওয়ার্ড ফিল্টারিং ব্যবহার করা হয় না।

কিলোওয়াট সত্য স্ট্রিং

নিউরোবট

দ্যNewRobotএই পদ্ধতি ব্যবহার করা হয় একটি লাইভ ট্রেডিংAPI KEYঅনুরোধে FMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের অ্যাকাউন্টের সাথে মিলে যায়।

{
    "code":0,
    "data":{
        "result":591988,
        "error":null
    }
}
  • ফলাফলঃ সৃষ্টি সফল এবং লাইভ ট্রেডিং আইডি ফেরত দেওয়া হয়।

লাইভ ট্রেডিং কনফিগারেশন প্যারামিটার,settingsপরামিতির বিন্যাস নিম্নরূপঃ

{
    "appid":"test",
    "args":[],
    "exchanges":[
        {"pair":"SOL_USDT","pid":123}
    ],
    "group":123,
    "name":"test",
    "node":123,
    "period":60,
    "strategy":123
}
  • গ্রুপঃ লাইভ ট্রেডিং গ্রুপ উল্লেখ করুন।
  • args: কৌশল পরামিতি, অথবা একটি খালি অ্যারে যদি কৌশল কোন পরামিতি আছে.
  • এক্সচেঞ্জঃ এক্সচেঞ্জ অবজেক্ট কনফিগারেশনের জন্য, দয়া করে দেখুনRestartRobot interface.

সেটিংস সত্য JSON অবজেক্ট

কনফিগারেশনেeidমধ্যেsettingsপ্যারামিটার,"meta":{"AccessKey": "123", "SecretKey": "123"}এই সংবেদনশীল তথ্যগুলি FMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্ম দ্বারা সংরক্ষণ করা হয় না। এই তথ্যগুলি সরাসরি ডকার প্রোগ্রামে প্রেরণ করা হয়, তাই প্রতিটি লাইভ ট্রেডিং তৈরি বা পুনরায় শুরু করার সময় এই তথ্যটি কনফিগার করা আবশ্যক।

যদি আমরা কাস্টম প্রোটোকল ব্যবহার করে একটি লাইভ ট্রেডিং বিনিময় বস্তু তৈরি, যখন কনফিগারsettingsপ্যারামিটার, আমরা নিম্নলিখিত সেটিংস ব্যবহার করতে পারেনexchangesঅ্যাট্রিবিউটঃ

{
    "eid": "Exchange",
    "label": "test",
    "pair": "ETH_BTC",
    "meta": {
        "AccessKey": "123",
        "SecretKey": "123",
        "Front": "http://127.0.0.1:6666/test"
    }
}

labelবৈশিষ্ট্যটি হল বর্তমান কাস্টম প্রোটোকলের দ্বারা অ্যাক্সেস করা এক্সচেঞ্জ অবজেক্টের জন্য একটি লেবেল সেট করা, যা এক্সচেঞ্জের মাধ্যমে প্রাপ্ত করা যেতে পারেexchange.GetLabel()কৌশল মধ্যে ফাংশন।

প্লাগইন চালান

দ্যPluginRunপদ্ধতি ব্যবহার করা হয়ডিবাগ টুলFMZ Quant Trading Platform এর ফাংশন; শুধুমাত্র জাভাস্ক্রিপ্ট ভাষা সমর্থিত।

{
    "code": 0,
    "data": {
        "result": "{\"logs\":[{\"PlatformId\":\"\",\"OrderId\":\"0\",\"LogType\":5,\"Price\":0,\"Amount\":0,\"Extra\":\"Hello FMZ\",\"Currency\":\"\",\"Instrument\":\"\",\"Direction\":\"\",\"Time\":1732267473108}],\"result\":\"\"}",
        "error": null
    }
}
  • ফলাফলঃ পাস করা জাভাস্ক্রিপ্ট কোডটি সফলভাবে কার্যকর করার পরে ডিবাগিং সরঞ্জামটি পরীক্ষার ফলাফলের ডেটা ফিরিয়ে দেয়।

ডিবাগিং টুলের সেটিংস প্যারামিটার,settingsকনফিগারেশন, পরীক্ষার কোড অন্তর্ভুক্তsourceবৈশিষ্ট্য.settingsপরামিতির বিন্যাস নিম্নরূপঃ

{
    "exchanges":[{"pair":"SOL_USDT","pid":123}],
    "node":123,
    "period":60,
    "source":"function main() {Log(\"Hello FMZ\")}"
}
  • উৎসঃ ডিবাগিং প্রয়োজন কোড.
  • নোডঃ ডকার আইডি, আপনি কোন ডকার লাইভ ট্রেডিং চালাতে পারেন তা নির্দিষ্ট করতে পারেন। যদি মান -1 হয় তবে এর অর্থ স্বয়ংক্রিয় বরাদ্দ।
  • এক্সচেঞ্জঃ এক্সচেঞ্জ অবজেক্ট কনফিগারেশনের জন্য, দয়া করে দেখুনRestartRobot interface.

সেটিংস সত্য JSON অবজেক্ট

{"eid": "OKEX", "pair": "ETH_BTC", "meta" :{"AccessKey": "123", "SecretKey": "123"}} {"eid": "Huobi", "pair": "BCH_BTC", "meta" :{"AccessKey": "123", "SecretKey": "123"}}

এর জন্যexchangesঅ্যাট্রিবিউটsettings, শুধুমাত্র এক সেট করা প্রয়োজন যখন কলPluginRunmethod (ডিবাগ টুল পৃষ্ঠায় ব্যবহার করা হলে শুধুমাত্র একটি এক্সচেঞ্জ অবজেক্ট সমর্থিত) আপনি যখন 2 এক্সচেঞ্জ অবজেক্ট সেট করবেন তখন কোন ত্রুটি রিপোর্ট করা হবে নাsettings, কিন্তু কোডে দ্বিতীয় এক্সচেঞ্জ অবজেক্ট অ্যাক্সেস করার সময় একটি ত্রুটি রিপোর্ট করা হবে।

GetRobotLogs

দ্যGetRobotLogsএই পদ্ধতিটি FMZ কোয়ান্ট ট্রেডিং প্ল্যাটফর্মের অ্যাকাউন্টের অধীনে লাইভ ট্রেডিংয়ের লগ তথ্য পেতে ব্যবহৃত হয়।API KEYলাইভ ট্রেডিং প্ল্যাটফর্মের আইডি হল লাইভ ট্রেডিং প্ল্যাটফর্মের আইডিrobotId parameter.

{
    "code": 0,
    "data": {
        "result": {
            "chart": "",
            "chartTime": 0,
            "logs": [{
                "Total": 20,
                "Max": 20,
                "Min": 1,
                "Arr": []
            }, {
                "Total": 0,
                "Max": 0,
                "Min": 0,
                "Arr": []
            }, {
                "Total": 0,
                "Max": 0,
                "Min": 0,
                "Arr": []
            }],
            "node_id": 123,
            "online": true,
            "refresh": 1732201544000,
            "status": 4,
            "summary": "...",
            "updateTime": 1732201532636,
            "wd": 0
        },
        "error": null
    }
}
  • logs: লগ তথ্য: Arr ক্ষেত্রে বেশ কয়েকটি লগ ডেটা আইটেম পাওয়া যায়। লগের প্রথম ডাটা স্ট্রাকচার হল লাইভ ট্রেডিং ডাটাবেসের কৌশল লগ টেবিলের লগ রেকর্ড। লগের দ্বিতীয় ডাটা স্ট্রাকচার হল লাইভ ট্রেডিং ডাটাবেসের কৌশল লগ টেবিলের লগ রেকর্ড। লগের তৃতীয় ডাটা স্ট্রাকচার হল লাইভ ট্রেডিং ডাটাবেসের কৌশল লগ টেবিলের লগ রেকর্ড।
  • সংক্ষিপ্তসারঃ লাইভ ট্রেডিং স্ট্যাটাস বার ডেটা।

দ্যrobotIdপ্যারামিটারটি আইডি নির্দিষ্ট করতে ব্যবহৃত হয় লাইভ ট্রেডিং যার জন্য লগের তথ্য সংগ্রহ করা হবে। আপনি ব্যবহার করতে পারেনGetRobotListতথ্য সংগ্রহের পদ্ধতি অ্যাকাউন্টের অধীনে লাইভ ট্রেডিং সম্পর্কে, যা লাইভ ট্রেডিং আইডি।

robotId সত্য সংখ্যা দ্যlogMinIdপ্যারামিটারটি লগের সর্বনিম্ন আইডি নির্দিষ্ট করতে ব্যবহৃত হয়।

লগমিনড সত্য সংখ্যা দ্যlogMaxIdপ্যারামিটারটি লগের সর্বাধিক আইডি নির্দিষ্ট করতে ব্যবহৃত হয়।

logMaxId সত্য সংখ্যা দ্যlogOffsetপরামিতি দ্বারা পরিসীমা নির্ধারণ করার পরে, অফসেট সেট করতে ব্যবহৃত হয়logMinIdএবংlogMaxId, এর উপর ভিত্তি করে অফসেটlogOffset(কয়েকটি রেকর্ড এড়িয়ে যাওয়া হয়) ডেটা আনার জন্য শুরু অবস্থান হিসাবে শুরু করুন।

logOffset সত্য সংখ্যা প্যারামিটারlogLimitসূচনা অবস্থান নির্ধারণের পর যেসব ডাটা রেকর্ড নির্বাচন করা হবে তার সংখ্যা নির্ধারণ করতে ব্যবহৃত হয়।

logLimit সত্য সংখ্যা দ্যprofitMinIdএই প্যারামিটারটি মুনাফা লগের ন্যূনতম আইডি সেট করতে ব্যবহৃত হয়।

মুনাফা সত্য সংখ্যা প্যারামিটারprofitMaxIdমুনাফা লগের সর্বাধিক আইডি সেট করতে ব্যবহৃত হয়।

লাভMaxId সত্য সংখ্যা প্যারামিটারprofitOffsetস্টার্ট পজিশন হিসেবে অফসেট (কয়েকটি রেকর্ড এড়িয়ে যাওয়া হয়) সেট করতে ব্যবহৃত হয়।

মুনাফাঅফসেট সত্য সংখ্যা প্যারামিটারprofitLimitসূচনা অবস্থান নির্ধারণের পর যেসব ডাটা রেকর্ড নির্বাচন করা হবে তার সংখ্যা নির্ধারণ করতে ব্যবহৃত হয়।

লাভসীমা সত্য সংখ্যা প্যারামিটারchartMinIdচার্ট ডেটা রেকর্ডের ন্যূনতম আইডি সেট করতে ব্যবহৃত হয়।

চার্ট সত্য সংখ্যা প্যারামিটারchartMaxIdচার্ট ডেটা রেকর্ডের সর্বাধিক আইডি সেট করতে ব্যবহৃত হয়।

চার্টMaxId সত্য সংখ্যা প্যারামিটারchartOffsetব্যবহার করা হয় অফসেট সেট করতে।

চার্টঅফসেট সত্য সংখ্যা প্যারামিটারchartLimitএর সংখ্যা নির্ধারণ করতে ব্যবহৃত হয় রেকর্ডস পেতে।

চার্টসীমা সত্য সংখ্যা প্যারামিটারchartUpdateBaseIdবেস আইডি সেট করতে ব্যবহৃত হয় অনুসন্ধানটি আপডেট হওয়ার পর।

chartUpdateBaseId সত্য সংখ্যা প্যারামিটারchartUpdateDateতথ্য সেট করতে ব্যবহৃত হয় রেকর্ড আপডেট টাইমস্ট্যাম্প, এবং এটি রেকর্ড বৃহত্তর ফিল্টার করবে এই টাইমস্ট্যাম্পের চেয়ে।

চার্টUpdateDate সত্য সংখ্যা প্যারামিটারsummaryLimitএর সংখ্যা নির্ধারণ করতে ব্যবহৃত হয় স্ট্যাটাস বার তথ্যের বাইট অনুসন্ধান করা হবে। প্যারামিটার লাইভের স্ট্যাটাস বার ডেটা অনুসন্ধানের জন্য পূর্ণসংখ্যা টাইপ ট্রেডিং। 0 এ সেটিং করার অর্থ হল স্ট্যাটাস বারটি অনুসন্ধান করার প্রয়োজন নেই তথ্য, এবং অ-শূন্য সংখ্যা সেটিং সংখ্যা নির্দেশ করে স্ট্যাটাস বার তথ্যের বাইটের সংখ্যা অনুসন্ধান করা হবে ইন্টারফেস তথ্য পরিমাণ সীমাবদ্ধ করে না, তাই আপনি একটি নির্দিষ্ট করতে পারেন বড়summaryLimitসমস্ত অবস্থা বার পেতে প্যারামিটার অবস্থা বার তথ্য ফিরে তথ্য সংরক্ষণ করা হয়summary.

সংক্ষিপ্তসারসীমা সত্য সংখ্যা

  • ডাটাবেসের কৌশল লগ টেবিল দ্যArrবৈশিষ্ট্য মান প্রথম উপাদান মধ্যেLogsরিটার্ন ডেটাতে (লগ ডেটা) অ্যাট্রিবিউট মান (অ্যারে স্ট্রাকচার) নিম্নরূপ বর্ণনা করা হয়ঃ

    "Arr": [
        [3977, 3, "Futures_OKCoin", "", 0, 0, "Sell(688.9, 2): 20016", 1526954372591, "", ""],
        [3976, 5, "", "", 0, 0, "OKCoin:this_week too many positions, long: 2", 1526954372410, "", ""]
    ],
    
    আইডি লগ টাইপ ইড অর্ডার দাম পরিমাণ অতিরিক্ত তারিখ চুক্তিপ্রকার দিকনির্দেশ
    3977 3 ফ্যুচার_ওকেকয়েন "" 0 0 বিক্রয় ((688.9, ২): 20016 1526954372591 "" ""
    3976 5 "" "" 0 0 OKCoin:this_week too many positions, long: 2 1526954372410 "" ""

    extraপ্রিন্ট করা লগের সংযুক্ত বার্তা।

    নির্দিষ্ট লগ টাইপ দ্বারা প্রতিনিধিত্ব করা হয়logTypeমানগুলি নিম্নরূপ বর্ণনা করা হয়েছেঃ

    লগ টাইপঃ 0 1 2 3 4 5 6
    logType এর অর্থঃ কিনুন বিক্রয় প্রত্যাহার ত্রুটি মুনাফা বার্তা পুনরায় চালু করুন
  • ডাটাবেসের মুনাফা চার্টের লগ টেবিল চার্টের লগ টেবিলের তথ্য কৌশল লগ টেবিলের মুনাফা লগের সাথে সামঞ্জস্যপূর্ণ।

    "Arr": [
        [202, 2515.44, 1575896700315],
        [201, 1415.44, 1575896341568]
    ]
    

    উদাহরণস্বরূপ, লগ ডেটাগুলির একটি নিনঃ

    [202, 2515.44, 1575896700315]
    

    202হল লগID; 2515.44লাভের মূল্য;1575896700315টাইমস্ট্যাম্প।

  • ডাটাবেসের চার্ট লগ টেবিল

    "Arr": [
        [23637, 0, "{\"close\":648,\"high\":650.5,\"low\":647,\"open\":650,\"x\":1575960300000}"],
        [23636, 5, "{\"x\":1575960300000,\"y\":3.0735}"]
    ]
    

    উদাহরণস্বরূপ, লগ ডেটাগুলির একটি নিনঃ

    [23637, 0, "{\"close\":648,\"high\":650.5,\"low\":647,\"open\":650,\"x\":1575960300000}"],
    

    23637হল লগID, 0হল চার্ট ডেটা সিরিজের সূচক এবং সর্বশেষ তথ্য"{\"close\":648,\"high\":650.5,\"low\":647,\"open\":650,\"x\":1575960300000}"হল লগ ডেটা; এই ডেটা হল চার্টের কে-লাইন ডেটা।

অন্তর্নির্মিত গ্রন্থাগার ট্রেডিং টার্মিনাল