Nó hỗ trợ xác minh mà không cầntoken
(trượt)secret_key
trực tiếp), bạn có thể tạo ra một URL có thể được truy cập trực tiếp.
ví dụ, URL trực tiếp cung cấp các hướng dẫn tương tác để
giao dịch trực tiếp, có thể được sử dụng đểTradingView
hoặcWebHook
cho các trường hợp khác.CommandRobot(RobotId, Cmd)
chức năng, tham sốnonce
không cần xác minh, và tần suất truy cập và
Thời gian truy cập giao diện không bị giới hạn.
Ví dụ:AccessKey
của phần mở rộng được tạoAPI KEY
là:xxx
vàSecretKey
là:yyy
. Xem liên kết sau để gửi một thông báo lệnh tương tác đến
giao dịch trực tiếp với ID giao dịch trực tiếp186515
, thông điệp
content là một chuỗi:"ok12345"
.
https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyy&method=CommandRobot&args=[186515,"ok12345"]
Trong trường hợp xác minh trực tiếp được hỗ trợ,
chỉCommandRobot
giao diện được hỗ trợ để có đượcBody
Ví dụ, các cài đặt trongWebHook URL
củaTradingView
:
https://www.fmz.com/api/v1?access_key=xxx&secret_key=yyy&method=CommandRobot&args=[186515,+""]
Chú ý để thiết lập theo định dạng sau:args=[130350,+""]
, trong đó130350
là giao dịch trực tiếpID
của FMZ Quant Trading Platform.
Đặt trong hộp tin nhắn củaTrading View
(các
Định dạng JSON:
{"close": {{close}}, "name": "aaa"}
Các giao dịch trực tiếp vớiID
của186515
có thể nhận chuỗi lệnh tương tác:{"close": 39773.75, "name": "aaa"}
.
Định dạng văn bản:
BTCUSDTPERP Crossing 39700.00 close: {{close}}
Các giao dịch trực tiếp vớiID
của186515
có thể nhận chuỗi lệnh tương tác:BTCUSDTPERP Crossing 39700.00 close: 39739.4
.
Ví dụ:Python
& Golang
Gọi ngôn ngữ:
#!/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)
}
Sử dụng API mở rộng trên FMZ Quant để nhận ra cảnh báo