[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 460

 
Serg-s-n писал(а)>>
大家晚上好!谁知道如何关闭一个订单,选择最开始的订单并关闭它?

寻找一个开放时间最短的职位。

 
Serg-s-n писал(а)>>
大家晚上好!谁知道在关闭一个订单时,如何选择第一个订单并关闭它?

正如正确所说,你需要找到开放时间最早的订单,获得其票据,选择带有该票据的订单,并关闭它。

下面是一个如何找到你需要的订单的例子。

  int ticket = -1;
  datetime MinDateTime = 0;

  for (int i=1; i<=OrdersTotal(); i++)         // Цикл по всем ордерам
  
    if (OrderSelect( i-1, SELECT_BY_POS)==true)  // Если есть следующий        
    {
      if ( ticket < 0 || OrderOpenTime() < MinDateTime ) // Его дата меньше, чем дата предыдущего найденного?
      {
        if ( OrderType() == OP_BUY )          // Это ордер на покупку?
        {
          ticket = OrderTicket();             // Запомнить его ticket.
          MinDateTime = OrderOpenTime();
        }
      }
    }     
  }                                           // Конец тела цикла

一旦找到你需要的订单的票据,你需要用OrderSelect(ticket, SELECT_BY_TICKET)函数选择它,然后用你需要的参数关闭OrderClose()。

 
我们有一个带有TP和SL的EA开仓。如何计算自上一次成功下单以来,目前已经连续失去了多少个SL头寸?
 

1.订单历史总数

2.按时间对已结束的订单进行排序

3.确定某一行的最后一笔订单 OrderProfit<0

 
sergeev >>:

1. OrdersHistoryTotal

2. Сортируем закрытые ордера по времени

3. Определяем у последних подряд идущие OrderProfit<0


谢谢你
 

下午好。

请解决这个问题。当我调用 MarketInfo("EURUSD", MODE_STOPLEVEL)函数--最小允许的止损/止盈水平,以点为单位,它显示为10点。

不同的数字显示在终端,例如sl=30,tp=10。我应该怎么做,怎样才能在函数调用中把它们分开?

 
gvi2504 писал(а)>>

下午好。

请解决这个问题。当我调用MarketInfo("EURUSD", MODE_STOPLEVEL)函数--最小允许的止损/止盈水平,以点为单位,它显示为10点。

不同的数字显示在终端,例如sl=30,tp=10。我应该怎么做? 我如何在函数调用中分离它们?

当你为SL和TP设置最小止损时,它将显示不同的数值)。

 
Techno >>:

Уровень минимальных стопов для SL и TP один и тот же, не может она тебе показывать разных значений, иначе дц втопку )

我也这么想,但在MasterForex,SL和TP是不同的。对这个问题还有什么想法吗?

 
gvi2504 писал(а)>>

我也这么想,但在MasterForex,SL和TP是不同的。对这个问题还有什么想法吗?

你怎么知道它们是不同的?

 
Techno >>:

а как ты определил, что разные?

当我在寻找一个错误的时候,每个动作都是overAlagged,结果是TP在修改的时候通过了,但是SL不是太接近。

原因: