4
tập trung vào
13
Người theo dõi

Môi trường đĩa mô phỏng

Được tạo ra trong: 2022-04-05 17:52:26, cập nhật trên: 2022-04-05 17:54:46
comments   0
hits   1087

Ghi chú: Chiến lược này sử dụng ngôn ngữ Python để tạo ra một môi trường đĩa ảo hỗ trợ đĩa thực

Thiết lập môi trường:

def main():
    IFsign()
    SimSign()
    while True:
        SimGo()

IFsignMôi trường khởi tạo hàm, chỉ tải một lần khi chạy, được sử dụng để tạo biến SimSignChức năng chứa đối tượng SimGoChức năng tính toán giá trị của tài khoản giả mạo, cần hoạt động vòng lặp

Cấu trúc dữ liệu:

Order Cấu trúc đơn đặt hàng, có thể được thay đổi[0].GetOrder() hàm trả về.

{
    Id          : 123456,        // 交易单唯一标识
    Price       : 1000,          // 下单价格
    Amount      : 10,            // 下单数量
    DealAmount  : 10,            // 成交数量
    AvgPrice    : 1000,          // 成交均价
    Side        : "BUY"          // 订单方向,常量里的订单类型有:BUY,SELL
    Type        : "LONG",        // 订单类型,常量里的订单类型有: LONG,SHORT,NULL
    profit      : 0,             // 订单收益,现货均返回NULL
    feeCcy      : 1,             // 订单手续费
}

Account Thông tin tài khoản của exchange[0].GetAccount() hàm trả về.

{
    Balance         : 1000,      // 可用计价币数量
    FrozenBalance   : 0,         // Balance表示的资产用于挂单的冻结数量
    Stocks          : 1,         // 可用交易币数量
    FrozenStocks    : 0          // Stocks表示的资产用于挂单的冻结数量
}

Position Thông tin về vị trí trong giao dịch tương lai, được trao đổi bởi[0].GetPosition() hàm trả về mảng của cấu trúc Position này.

{
    MarginLevel     : 10,        // 持仓杆杠大小
    Amount          : 100,       // 持仓量
    FrozenAmount    : 0,         // 仓位冻结量,用于平仓挂单时的临时冻结仓位数量
    Price           : 10000,     // 持仓均价
    Profit          : 0,         // 持仓浮动盈亏
    Type            : "LONG",    // LONG为多头仓位,SHORT为空头仓位
    Margin          : 1          // 仓位占用的保证金
}

Tài liệu API:

Các hàm sau đây cần được thông quaexchange[交易对序号]Gọi đối tượng

exchange[0].Buy(price,account)

Chức năng Buy được sử dụng đểMua hàng, được gọi và trả về một order ID ⋅ giá trị tham số: Price là giá của order, loại giá trị số ⋅ số lượng của order, loại giá trị số ⋅

def main():
    id = exchange[0].Buy(100, 1)
    Log("id:", id)

exchange[0].Sell(Price, Amount)

Chức năng Sell được sử dụng dưới đâyĐơn bán hàng, được gọi và trả về một order ID ⋅ giá trị tham số: Price là giá của order, loại giá trị số ⋅ số lượng của order, loại giá trị số ⋅

def main():
    id = exchange[0].Sell(100, 1)
    Log("id:", id)

exchange[0].CancelOrder(Id)

Chức năng CancelOrder được sử dụngHủy đơn đặt hàng, hủy lệnh của một số Id khi được gọi. Giá trị tham số: Id là số lệnh.

def main():
    id = exchange[0].Sell(99999, 1)
    exchange[0].CancelOrder(id)

exchange[0].GetOrder(Id)

Chức năng GetOrder được sử dụngNhận đơn đặt hàng đã hoàn thành, trả về thông tin đơn đặt hàng của một Id sau khi được gọi, không điền vào tham số trả về tất cả thông tin đơn đặt hàng. Giá trị tham số: Id là số đơn đặt hàng cần lấy, tham số Id là loại số nguyên

def main():
    order = exchange[0].GetOrder()

exchange[0].GetOrders(Id)

Chức năng GetOrders được sử dụngNhận đơn hàng chưa hoàn thành, trả về thông tin đơn đặt hàng của một Id sau khi được gọi, không điền vào tham số trả về tất cả thông tin đơn đặt hàng. Giá trị tham số: Id là số đơn đặt hàng cần lấy, tham số Id là loại số nguyên

def main():
    orders = exchange[0].GetOrders()

exchange[0].GetAccount()

Chức năng GetAccount được sử dụngTruy cập thông tin tài khoản。 trả về giá trị: Account cấu trúc cấu trúc。

def main():
    account = exchange[0].GetAccount()

exchange[0].GetPosition()

Chức năng GetPosition được sử dụngNhận thông tin về vị trí hiện tại。 trả về giá trị: position structured array。 không giữ vị trí thì trả về null array, tức là[]。

def main():
    exchange[0].SetContractType("swap")
    exchange[0].SetMarginLevel(10)
    exchange[0].SetDirection("buy")
    exchange[0].Buy(10000, 2)
    position = exchange[0].GetPosition()

exchange[0].SetMarginLevel(…)

Chức năng SetMarginLevel được sử dụngCài đặt kích thước thanh。 giá trị tham số: kiểu giá trị số。

def main():
    exchange[0].SetMarginLevel(10)

exchange[0].SetDirection(…)

Chức năng SetDirection được sử dụng để thiết lập exchange[0].Buy hoặc exchange[0].SellĐơn đặt hàngĐịnh hướng của …

Phương thức downorder Hướng đặt tham số của hàm SetDirection Ghi chú
exchange[0].Buy “buy” Mua và mở nhiều vị trí
exchange[0].Buy “closesell” Mua cổ phiếu trống
exchange[0].Sell “sell” Bán kho trống
exchange[0].Sell “closebuy” Bán nhiều vị thế

Các tham số Direction có thể lấy bốn tham số buy, closebuy, sell, closesell.

def main():
    exchange[0].SetContractType("swap")
    exchange[0].SetMarginLevel(5)
    exchange[0].SetDirection("buy")
    exchange[0].Buy(10000, 2)
    exchange[0].SetMarginLevel(5)
    exchange[0].SetDirection("closebuy")
    exchange[0].Sell(1000, 2)

exchange[0].SetContractType(…)

Chức năng SetContractType được sử dụngThiết lập loại hợp đồng。 giá trị tham số: kiểu chuỗi。 Parameter ContractType có thể là bất kỳ chuỗi nào

def main():
    exchange[0].SetContractType("this_week")

exchange[0].SetServiceCharge()

Chức năng SetServiceCharge được sử dụngThiết lập phí xử lý。 giá trị tham số: kiểu giá trị số。

def main():
    # 设置0.25%手续费
    exchange[0].SetServiceCharge(0.00025)

exchange[0].SetBalance()

Chức năng SetBalance được sử dụngThiết lập số dư。 giá trị tham số: kiểu giá trị số。

def main():
    # 设置余额为10000
    exchange[0].SetBalance(10000)

exchange[0].SetSpread()

Chức năng SetSpread được sử dụngThiết lập khác nhau。 giá trị tham số: kiểu giá trị số。

def main():
    # 设置点差为0.005%
    exchange[0].SetSpread(0.005)

Địa chỉ chính sách