初学者的问题 MQL5 MT5 MetaTrader 5 - 页 825

 
Aleksey Rodionov:


你读过文件 吗?用小数点代替%G。即AccountInfoDouble(ACCOUNT_BALANCE) 相应地,如果删除这个,将不会被打印出来。
Документация по MQL5: Общие функции / PrintFormat
Документация по MQL5: Общие функции / PrintFormat
  • www.mql5.com
Количество, порядок и тип параметров должны точно соответствовать составу спецификаторов, в противном случае результат печати неопределён. Вместо функции PrintFormat() можно использовать функцию Если за строкой формата следуют еще параметры, то эта строка должна содержать спецификации формата, определяющие формат вывода этих параметров...
 

下午好!

请帮助我解决这个问题,或者告诉我哪里已经解决了: 在不同的条件下建仓--在条件1、2、3下买入,在条件4.5下卖出。如何在代码中写明,使条件1(buy1)开仓的BAY在条件6时关闭,条件7时买入2和买入3,条件8时卖出4,条件9时卖出5?出于某种原因,所有的酒馆都在7点关门,所有的卖家都在9点。我已经是第三天在纠结这个问题了。我已经是第三天遇到麻烦了,谢谢你。

 
novichok2018:

下午好!

请帮助我解决这个问题,或者告诉我哪里已经解决了: 在不同的条件下建仓--在条件1、2、3下买入,在条件4.5下卖出。如何在代码中写明,使条件1(buy1)开仓的BAY在条件6时关闭,条件7时买入2和买入3,条件8时卖出4,条件9时卖出5?出于某种原因,所有的酒馆都在7点关门,所有的卖家都在9点。我已经是第三天在纠结这个问题了。谢谢你。

对于魔法数字1,设置魔法数字+1,对于魔法数字2+2,以此类推。这样你就可以看到这个位置是由条件1还是条件2打开的......。

 
Vladimir Karputov:

为条件1设置魔法数字+1,为条件2设置魔法数字+2,以此类推。这样你就可以看到这个仓位是为条件1还是为条件2开的......。

谢谢你!到目前为止,一切都在顺利进行。

 
2018/02/08 00:25:21 完成 #69381 panFX
 
 
fxsaber:

奇迹。刚刚有了你的答案,现在又没了。

请重复第二个选项。

 
#include <MT4Orders.mqh>

int CountProfit( const string Symb, const long MagicNumber = 0 )
{
  int Count=0;
 
  for (int i = OrdersHistoryTotal() - 1; i >= 0; i--)
    if (OrderSelect(i ,SELECT_BY_POS, MODE_HISTORY) &&
        (OrderMagicNumber() == MagicNumber) &&
        (OrderType() <= OP_SELL) && (OrderSymbol() == Symb))
    {
      if (OrderProfit() < 0)
        break;
        
      Count++;
    }

 return(Count);
}

int CountProfit( const string Symb, const long MagicNumber = 0 )
{
  int Count=0;
  ulong Ticket;
 
  if (HistorySelect(0, LONG_MAX))
    for (int i = HistoryDealsTotal() - 1; i >= 0; i--)
      if ((bool)(Ticket = HistoryDealGetTicket(i)) &&
          (HistoryDealGetInteger(Ticket, DEAL_ENTRY) == DEAL_ENTRY_OUT) &&
          (HistoryDealGetInteger(Ticket, DEAL_MAGIC) == MagicNumber) &&
          (HistoryDealGetString(Ticket, DEAL_SYMBOL) == Symb))
      {
        if (HistoryDealGetDouble(Ticket, DEAL_PROFIT) < 0)
          break;
          
        Count++;
      }

 return(Count);
}
 
与本主题无关的评论已被移至 "MQL4 MT4 MetaTrader 4初学者的问题"。
 
Vladimir Karputov:
与本主题无关的评论已被移至MQL4 MT4 MetaTrader 4初学者问题

哦,我的天啊!而最后一个帖子是在2月5日,谁会在那里回答我呢? 而#8284也算是在MT4上。