22
Suivre
17
Abonnés

Renseignez-vous sur le code JS

Créé le: 2024-12-01 11:59:19, Mis à jour le:
comments   5
hits   550

J’ai écrit un code pour surveiller l’exécution des ordres, et pour obtenir des données sur les commandes de la plateforme d’échange, en utilisant exchange.GetOrders. Puis les intervalles sont de 1000 millisecondes. Mais la plate-forme suggère: Erreur GetTicker: {“code”:-1003,“msg”:“Too many requests; current limit of IP(8.216.89.72) is 2400 requests per minute. Please use the websocket for live updates to avoid polling the API.”}

Comment résoudre ce problème ? Qu’est-ce qui peut être fait d’autre que d’utiliser le code ci-dessous ?

function main() {
    setContract();  // 设置合约
    initDatas();    // 初始化数据
    initialize();   //检查是否存在多单和空单

    while (true) {
        ////监测交易平台的订单是否成交
        var orders = exchange.GetOrders();
        if (orders) {
            for (var i = 0; i < orders.length; i++) {
                if (orders[i].Status === ORDER_STATE_CLOSED) {
                    Log('挂单已成交: id=', orders[i].Id, '成交价:', orders[i].Price, '成交量:', orders[i].Amount);
                    calculateProfit(ticker);                        //统计收益****
                }
            }
        }
        else { Log("获取订单失败,返回值为null"); }

        ////监测从TradingView发出的WebHook消息
        var command = GetCommand();                     //获取WebHook消息
        if (command) {// 如果有消息,则执行命令
            Log("接收到的命令:", command, "#FF1CAE");
            TV_FMZ_Strategy(command); //开单平单操作
        }

        Take_Profit_Stop_Loss();   //止盈止损操作
        Sleep(_Interval);          // 程序运行间隔
    }
}