Tài nguyên đang được tải lên... tải...

FMZ Mobile APP Trading Terminal, tăng cường kinh nghiệm giao dịch định lượng của bạn

Tác giả:FMZ~Lydia, Tạo: 2023-10-30 11:57:31, Cập nhật: 2024-11-10 18:51:41

img

Trong lĩnh vực giao dịch định lượng, các công cụ giao dịch định lượng đơn giản và dễ sử dụng luôn là một trong những chìa khóa để đạt được tăng trưởng tài sản và quản lý rủi ro. Tuy nhiên, với sự cạnh tranh ngày càng tăng trên thị trường, các công cụ giao dịch truyền thống không còn đủ để đáp ứng nhu cầu thị trường thay đổi nhanh chóng. Để duy trì lợi thế cạnh tranh cho các nhà giao dịch định lượng trong thế giới tài sản kỹ thuật số liên tục phát triển, Ứng dụng di động FMZ đã thêm một tính năng mới đáng kể: Terminal giao dịch. Tính năng này sẽ không chỉ cải thiện hiệu quả giao dịch của bạn, mà còn trao quyền cho bạn thông qua các chương trình plugin tùy chỉnh để hỗ trợ giao dịch, bơm thêm sức sống mới vào sự nghiệp giao dịch của bạn.

Hướng dẫn cho người mới bắt đầu:

FMZ Mobile APP Trading Terminal là gì?

Trên nền tảng giao dịch FMZ Quant, bạn có thể tải về FMZ Quant Mobile APP từTrang tải về ứng dụng di độngSau khi tải xuống và cài đặt, mở ứng dụng di động FMZ và đăng nhập bằng tài khoản FMZ của bạn.

img

Xin lưu ý rằng FMZ Quant được chia thànhFMZ.COMtrang web quốc tế vàFMZ.CNTrang web nội địa Trung Quốc (hỗ trợ các thị trường khác nhau). Khi đăng nhập, bạn cần chọn trang web tương ứng. Tài khoản cho các trang web khác nhau là độc lập và không thể hoán đổi.

FMZ Quantitative Trading Platform mobile APP trading terminal là một công cụ giao dịch định lượng bao gồm các API từ các sàn giao dịch lớn. Nó cho phép chuyển đổi nhanh giữa các sàn giao dịch khác nhau, và với sự giúp đỡ của các tính năng khác nhau của nền tảng FMZ, nó có thể thực hiện phân tích thu thập dữ liệu, giám sát dữ liệu thời gian thực, giao dịch hỗ trợ chương trình, hoạt động giao dịch bán tự động / thủ công v.v.

Làm thế nào để truy cập và kích hoạt chức năng đầu cuối giao dịch?

Sau khi đăng nhập vào FMZ Quant Mobile APP, bạn có thể thấy chức năng Trading Terminal trên giao diện chính.

Trước khi FMZ ra mắt thiết bị đầu cuối giao dịch APP di động của mình, phiên bản web của FMZ đã ra mắt tính năng này khá sớm.ít nhất một chương trình docker phải được triển khai. Điều này là do tất cả các yêu cầu thực tế được gửi đến sàn giao dịch được thực hiện từ docker, chứ không phải trên ứng dụng di động, an toàn hơn. Nó cũng tránh những nhược điểm như API KEY ràng buộc địa chỉ IP và không thể sử dụng khi IP di động thay đổi.

img

Giải thích chi tiết về giao diện đầu cuối giao dịch

1. Giao diện chính của Terminal giao dịch:

Sau khi mở đầu cuối giao dịch, bạn có thể thấy giao diện chính của đầu cuối giao dịch. Nhấp vào khu vực trong khung màu đỏ sẽ mở các giao diện cấu hình Docker, ExchangeMarkets.

  • Docker: Tất cả các chương trình docker được triển khai dưới tài khoản FMZ hiện tại của bạn sẽ được liệt kê ở đây để lựa chọn.
  • Exchange: Các đối tượng trao đổi (được cấu hình bằng thông tin API KEY vv) được tạo trong tài khoản FMZ hiện tại của bạn cũng sẽ xuất hiện trong danh sách tương ứng cho các lựa chọn hoạt động cụ thể.
  • Thị trường: Thiết lập cặp giao dịch hoặc hợp đồng mà thiết bị đầu cuối giao dịch này sẽ vận hành.

img

Khu vực thương mại:

Khu vực giao dịch hiển thị dữ liệu độ sâu thị trường; Các widget giao dịch có thể được thiết lập với giá lệnh, số lượng lệnh, hướng lệnh, đòn bẩy và các cài đặt khác.

img

Các tab dưới cùng của giao diện chính hiển thị thông tin như Order, Assets, làm cho quỹ và lệnh của bạn rõ ràng trong một cái nhìn.

Biểu đồ K-line:

Nếu bạn muốn xem biểu đồ K-line khi đặt hàng, một thiết kế chu đáo đã được thực hiện ở đây - một widget hiển thị gập lại mở ra biểu đồ K-line nhỏ của sản phẩm hiện tại.

img

Nếu bạn muốn xem biểu đồ đường K trong một khu vực lớn hơn, hiển thị hồ sơ giao dịch thị trường, thông tin sâu và nhiều hơn nữa, bạn có thể nhấp vào biểu tượng đường K này để chuyển sang trang biểu đồ đường K chuyên nghiệp.

img

Giao diện biểu đồ đường K chuyên nghiệp:

img

Giao diện biểu đồ đường K chuyên nghiệp cũng có thể được hiển thị trong chế độ cảnh quan:

img

Plugin giao dịch

Một plugin đầu cuối giao dịch có thể làm gì?

  • Tính toán và hiển thị dữ liệu thị trường thời gian thực.
  • Đặt đơn đặt hàng và quản lý đơn đặt hàng
  • Thực hiện quản lý rủi ro.
  • Chiến lược giao dịch phụ trợ bán tự động.

Các ngôn ngữ và công cụ lập trình nào được sử dụng để phát triển các plugin?

  • con nhện
  • javascript
  • c++

Anh có thể mua gì?

  • Chia sẻ plugin của bạn với cộng đồng để học hỏi lẫn nhau với các nhà phát triển.
  • Học hỏi từ các nhà phát triển khác và lấy cảm hứng.
  • Tương tác với những người đam mê giao dịch định lượng khác.

Hãy đưa ra một ví dụ dựa trên một kịch bản ứng dụng thực tế:

Trong cộng đồng FMZ, một người dùng đã đưa ra một yêu cầu như vậy:

Sử dụng js để đi qua tất cả các đồng tiền hợp đồng U của sàn giao dịch Binance, và mở một vị trí 10u (dài) cho mỗi loại tiền tệ.

Tiêu chuẩn này có thể được thực hiện với các plugin đầu cuối giao dịch thực sự, và chạy các chiến lược plugin trên đầu cuối giao dịch là miễn phí.

Hãy xem làm thế nào để thiết kế và thực hiện yêu cầu của người dùng.

Đầu tiên, chúng ta cần tạo một plugin giao dịch và thêm ba thông số vào chiến lược của nó:

img

Sau đó bắt đầu viết chương trình plugin:

function main() {
    let exName = exchange.GetName()
    if (exName != "Futures_Binance") {
        return "not support!"
    }

    let apiBase = "https://fapi.binance.com"
    if (isSimulate) {
        apiBase = "https://testnet.binancefuture.com"        
        Log("Switch base address:", apiBase)
    }
    exchange.SetBase(apiBase)
    
    try {
        var obj = JSON.parse(HttpQuery(apiBase + "/fapi/v1/exchangeInfo"))
    } catch (e) {
        Log(e)
    }
    
    let pairs = []
    for (var i in obj.symbols) {
        if (obj.symbols[i]["status"] !== "TRADING" || obj.symbols[i]["quoteAsset"] !== "USDT") {
            continue
        }
        let = pair = obj.symbols[i]["baseAsset"] + "_" + obj.symbols[i]["quoteAsset"]
        pairs.push(pair)
    }
    
    let markets = _C(exchange.GetMarkets)
    for (var i in pairs) {
        // /*
        // For testing purposes, only 10 varieties are opened here. If all varieties are needed, this comment content can be deleted.
        if (i >= 9) {
            break
        }
        // */

        let pair = pairs[i]
        exchange.SetCurrency(pair)
        exchange.SetContractType("swap")
        let ticker = exchange.GetTicker()
        if (!ticker) {
            continue 
        }
        
        let = amountPrecision = markets[pair + ".swap"]["AmountPrecision"]
        exchange.SetDirection("buy")
        let amount = _N(qty / ticker.Last, amountPrecision)
        if (amount > 0) {
            exchange.Buy(-1, amount)
        }

        Sleep(100)
    }

    // Obtain all positions
    let pos = exchange.IO("api", "GET", "/fapi/v2/positionRisk")
    if (!pos) {
        return 
    }
    
    // View positions
    return pos.filter(item => Number(item.positionAmt) != 0)
}

Sau khi plugin đầu cuối giao dịch được viết, nó có thể được kiểm tra:

Trong đầu cuối giao dịch của ứng dụng di động, nhấp vào nút ... để mở danh sách các plugin đầu cuối giao dịch.

img

Sau khi hoàn thành hoạt động trên APP di động, chúng tôi sử dụng mã sau đây để truy vấn vị trí của bot mô phỏng của Binance:

function main() {
    let apiBase = "https://testnet.binancefuture.com"
    exchange.SetBase(apiBase)

    let pos = exchange.IO("api", "GET", "/fapi/v2/positionRisk")
    if (!pos) {
        return 
    }

    // View positions
    return pos.filter(item => Number(item.positionAmt) != 0)
}

Dữ liệu được tìm thấy:

[{
	"symbol": "ETCUSDT",
	"entryPrice": "16.17",
	"unRealizedProfit": "0.08567881",
	"positionSide": "LONG",
	"updateTime": 1698420908103,
	"isolated": false,
	"breakEvenPrice": "16.176468",
	"leverage": "20",
	"adlQuantile": 3,
	"positionAmt": "0.65",
	"markPrice": "16.30181356",
	"liquidationPrice": "0",
	"maxNotionalValue": "400000",
	"marginType": "cross",
	"notional": "10.59617881",
	"isolatedMargin": "0.00000000",
	"isAutoAddMargin": "false",
	"isolatedWallet": "0"
}, {
	"positionAmt": "105",
	"markPrice": "0.09371526",
	"liquidationPrice": "0",
	"leverage": "20",
	"maxNotionalValue": "90000",
	"positionSide": "LONG",
	"isolatedWallet": "0",
	"symbol": "TRXUSDT",
	"updateTime": 1698420906668,
	"breakEvenPrice": "0.094497784",
	"isolatedMargin": "0.00000000",
	"isolated": false,
	"entryPrice": "0.09446",
	"adlQuantile": 1,
	"unRealizedProfit": "-0.07819770",
	"isAutoAddMargin": "false",
	"notional": "9.84010230",
	"marginType": "cross"
}, {
	"unRealizedProfit": "-0.00974456",
	"isAutoAddMargin": "false",
	"notional": "9.97449543",
	"isolatedWallet": "0.50309216",
	"updateTime": 1698420905377,
	"markPrice": "67.85371047",
	"isolatedMargin": "0.49334760",
	"adlQuantile": 2,
	"symbol": "LTCUSDT",
	"entryPrice": "67.92",
	"liquidationPrice": "64.91958163",
	"maxNotionalValue": "250000",
	"positionSide": "LONG",
	"isolated": true,
	"positionAmt": "0.147",
	"breakEvenPrice": "67.947168",
	"leverage": "20",
	"marginType": "isolated"
}, {
	"liquidationPrice": "1613.23261508",
	"marginType": "isolated",
	"isolated": true,
	"symbol": "ETHUSDT",
	"entryPrice": "1784.27",
	"markPrice": "1783.35661952",
	"isAutoAddMargin": "false",
	"positionSide": "LONG",
	"notional": "8.91678309",
	"leverage": "10",
	"maxNotionalValue": "30000000",
	"isolatedWallet": "0.89551774",
	"adlQuantile": 1,
	"positionAmt": "0.005",
	"breakEvenPrice": "1784.983708",
	"unRealizedProfit": "-0.00456690",
	"isolatedMargin": "0.89095084",
	"updateTime": 1698420900362
}, {
	"positionAmt": "17.1",
	"marginType": "cross",
	"isolatedWallet": "0",
	"adlQuantile": 2,
	"liquidationPrice": "0",
	"maxNotionalValue": "250000",
	"positionSide": "LONG",
	"isolated": false,
	"symbol": "EOSUSDT",
	"breakEvenPrice": "0.6432572",
	"updateTime": 1698420904257,
	"isolatedMargin": "0.00000000",
	"isAutoAddMargin": "false",
	"notional": "10.34550000",
	"entryPrice": "0.643",
	"markPrice": "0.60500000",
	"unRealizedProfit": "-0.64980000",
	"leverage": "20"
}, {
	"isolated": false,
	"adlQuantile": 1,
	"liquidationPrice": "0",
	"maxNotionalValue": "10000000",
	"notional": "9.73993328",
	"leverage": "20",
	"updateTime": 1698420901638,
	"symbol": "BCHUSDT",
	"entryPrice": "250.0",
	"markPrice": "243.49833219",
	"isAutoAddMargin": "false",
	"positionSide": "LONG",
	"positionAmt": "0.040",
	"breakEvenPrice": "250.1",
	"isolatedMargin": "0.00000000",
	"unRealizedProfit": "-0.26006671",
	"marginType": "cross",
	"isolatedWallet": "0"
}]

Có thể thấy rằng 6 vị trí đã được mở, điều này là bởi vì khi đặt lệnh thực tế trên robot mô phỏng, nó dễ dàng kích hoạt giá giới hạn; ngoài ra, do số tiền lệnh là 10U, nó dễ dàng kích hoạt giới hạn số tiền lệnh tối thiểu của các cặp giao dịch; do đó, một vài cặp giao dịch đã không được đặt hàng thành công. Nếu bạn cần sử dụng điều này trong thực tế, các tình huống thực tế hơn nên được xem xét để tối ưu hóa plugin này để sử dụng tốt hơn.

Các plugin tích hợp thú vị khác trên FMZ

FMZ Quant Trading Platform thiết bị đầu cuối giao dịch ứng dụng di động có nhiều plugin thú vị.

https://www.fmz.com/upload/asset/16b436307a4ce5c246c2.mp4

Sự kết thúc

Tính năng đầu cuối giao dịch mới của ứng dụng di động FMZ sẽ trở thành trợ lý mạnh mẽ của bạn trên thị trường tài sản kỹ thuật số, cho phép bạn đáp ứng linh hoạt hơn với biến động và cơ hội thị trường. Không còn giới hạn trong các chiến lược giao dịch truyền thống, thông qua các chương trình plugin tùy chỉnh, bạn có thể tạo ra các chiến lược giao dịch thông minh hơn, hiệu quả hơn phù hợp hơn với thị trường. Hãy bắt đầu chương mới thú vị này của giao dịch định lượng cùng nhau và nâng cao kỹ năng giao dịch và lợi nhuận của bạn.


Thêm nữa