O recurso está a ser carregado... Carregamento...

exchange.CancelOrder

FMZ平台的订单{@struct/Order Order}结构的属性```Id```由交易所品种代码和交易所原始订单Id组成,以英文逗号间隔。例如OKX交易所的现货交易对```ETH_USDT```订单的属性```Id```格式为:```ETH-USDT,1547130415509278720```。
调用```exchange.CancelOrder()```函数撤销订单时传入的参数```orderId```与订单{@struct/Order Order}结构的```Id```属性一致。


```exchange.CancelOrder()```函数返回真值,例如```true```表示取消订单请求发送成功, 返回假值,例如```false```表示取消订单请求发送失败。返回值只是代表发送请求成功或失败,判断交易所是否取消订单, 可以调用```exchange.GetOrders()```判断。
bool

exchange.CancelOrder(orderId)
exchange.CancelOrder(orderId, ...args)

```orderId```参数用于指定所要取消的订单。
orderId
true
string
扩展参数,可以输出附带信息到这条撤单日志中,```arg```参数可以传多个。
arg
false
string、number、bool、object、array、空值等系统支持的任意类型

```javascript
function main(){
    var id = exchange.Sell(99999, 1)
    exchange.CancelOrder(id)
}
def main():
    id = exchange.Sell(99999, 1)
    exchange.CancelOrder(id)
void main() {
    auto id = exchange.Sell(99999, 1);
    exchange.CancelOrder(id);
}

O pedido foi cancelado.

function main() {
    if (exchange.GetName().includes("Futures_")) {
        Log("设置合约为:永续合约,设置交易方向为:开多仓。")
        exchange.SetContractType("swap")
        exchange.SetDirection("buy")
    }
    
    var ticker = exchange.GetTicker()
    exchange.Buy(ticker.Last * 0.5, 0.1)
    
    var orders = exchange.GetOrders()
    for (var i = 0 ; i < orders.length ; i++) {
        exchange.CancelOrder(orders[i].Id, "撤销的订单:", orders[i])
        Sleep(500)
    }
}
def main():
    if exchange.GetName().find("Futures_") != -1:
        Log("设置合约为:永续合约,设置交易方向为:开多仓。")
        exchange.SetContractType("swap")
        exchange.SetDirection("buy")
    
    ticker = exchange.GetTicker()
    exchange.Buy(ticker["Last"] * 0.5, 0.1)            

    orders = exchange.GetOrders()
    for i in range(len(orders)):
        exchange.CancelOrder(orders[i]["Id"], "撤销的订单:", orders[i])
        Sleep(500)
void main() {
    if (exchange.GetName().find("Futures_") != std::string::npos) {
        Log("设置合约为:永续合约,设置交易方向为:开多仓。");
        exchange.SetContractType("swap");
        exchange.SetDirection("buy");
    }            

    auto ticker = exchange.GetTicker();
    exchange.Buy(ticker.Last * 0.5, 0.1);            

    auto orders = exchange.GetOrders();
    for (int i = 0 ; i < orders.size() ; i++) {
        exchange.CancelOrder(orders[i].Id, "撤销的订单:", orders[i]);
        Sleep(500);
    }
}

A função API do FMZ pode gerar funções de log output, como:Log()exchange.Buy()exchange.CancelOrder()A partir de agora, você pode usar um parâmetro de saída para executar o que você deseja.exchange.CancelOrder(orders[i].Id, orders[i])E assim é que estamos eliminando o Id.orders[i].IdA ordem é executada com a informação que vem com ela, ou seja,orders[i]Esta é a estrutura {@struct/Order Order}.

O Google Analytics é um serviço de gerenciamento de conteúdo que permite que os usuários usem uma versão mais antiga do seu servidor.exchange.CancelOrder()Parâmetros da funçãoorderIdO que é possível comparar com o descrito na documentação atualorderIdHá uma diferença.

{@fun/Trade/exchange.Buy exchange.Buy}, {@fun/Trade/exchange.Sell exchange.Sell}, {@fun/Trade/exchange.GetOrders exchange.GetOrders}

exchange.CreateOrder exchange.GetOrder