Type/to search
2
Follow
0
Followers
Gestion des commandes, peut-on ajouter une heure de commande à la structure de la commande ?
Help
Created 2016-05-02 18:39:20  
 3
 2205

Order Structure de commande, retournée par la fonction GetOrder
{
Id: le numéro unique de la transaction
Price: Le prix à payer
Nombre de commandes
DealAmount: le nombre de transactions réalisées
Status: état de la commande, état de la commande dans la constante de référence
Type: type d'ordre, type d'ordre dans la constante de référence
}
Il y a un temps de commande supplémentaire dans cette structure, et il y a un temps de commande supplémentaire dans cette structure.
Le temps de validité de chaque annonce est important dans un contexte où de nombreuses annonces n'ont pas été réalisées.

Par exemple: pour supprimer le code d'une liste de diffusion datant de plus d'un certain temps:
function DelPendingOrderstime(time) {
while (true) {
var orders = GetRecords();
if (!orders) {
Sleep(2000);
continue;
}
var counter = 0;
for (var i = 0; i < orders.length; i++) {
if (new Date().getTime()-orders[i].Time >= time) {
exchange.CancelOrder(orders[i].Id);
counter++;
Sleep(2000);
}
}
if (counter === 0) {
break;
}
}
}
Cette hypothèse est vraie si la structure ORDER possède l'attribut time des ordres.
Dans le langage mql4, les fonctions de commande ont un paramètre spécifique qui indique la date d'expiration de la commande.
J'espère que le grand chef pourra ajouter ce time dans la structure des commandes.

Related Recommendations
Comment
All comments (3)

    好的,我会加上的, 更新之前可以这样解决

    创建一个全局的字典,把orderId与下单时间对应起来. 获取时间的时候,查表获取

    10 years ago

    好吧,玩不了高大上的字碘,只能等老大更新了

    10 years ago

    用了个函数封装返回对象。

    function createNewOrder(order){
    var opTime = new Date();
    return {
    Id : order.Id, //交易单唯一标识
    Price : order.Price, //下单价格
    Amount : order.Amount, //下单数量
    DealAmount : order.DealAmount, //成交数量
    Status : order.Status, //订单状态, 参考常量里的订单状态 Type
    time : opTime // 新增加的属性,为调用该函数的时间,该函数 在下单后 用GetOrder(ID) 函数 获取order结构 后调用新封装入时间
    };
    }

    function main(){
    var id = exchange.Buy(-1,1);
    var order = exchange.GetOrder(id);
    var newOrder = createNewOrder(order);
    Log("the newOrder `s time:",newOrder.time);
    Log("the newOrder is:",newOrder);

    Log("ORDER_STATE_PENDING:",ORDER_STATE_PENDING);//ORDER_STATE_PENDING :未完成
    Log("ORDER_STATE_CLOSED:",ORDER_STATE_CLOSED);//ORDER_STATE_CLOSED :已关闭
    Log("ORDER_STATE_CANCELED",ORDER_STATE_CANCELED);//ORDER_STATE_CANCELED
    }
    img
    这样行么?我也是 试试~~嘿嘿

    10 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)