新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1405

[删除]  
ifitstrue:

关于的问题

如果我在过去的H1上画一条趋势线,那么最初的M1柱的指数会是多少?

而通过行文的开始和结束时间,并不清楚如何找到它。

对不起,如果我没有解释清楚的话。

这对我来说很困难。

除了指数之外,还有时间...

 
//---
   for(int j=0;j<OrdersTotal();j++)
     {
      if(OrderSelect(j,SELECT_BY_POS,MODE_TRADES)==false) break;
      if(OrderMagicNumber()!=MAGICZZ || OrderSymbol()!=Symbol()) continue;
   //--- check order type 
      if(OrderType()==OP_BUY)
        {
         //if(OrderProfit()>0.0)
           //{//Print("OrderProfitB()=",OrderProfit());
         if(iClose(NULL,PERIOD_CURRENT,1)-iOpen(NULL,PERIOD_CURRENT,1)>0.0)
           {if(iOpen(NULL,PERIOD_CURRENT,0)-iClose(NULL,PERIOD_CURRENT,0)>0.0)
              {Print("iCloseB()=",iClose(NULL,PERIOD_CURRENT,0));
               if(!OrderClose(OrderTicket(),OrderLots(),Bid,3,White))
                  Print("OrderClose error ",GetLastError());
              }  
           }
        }
      if(OrderType()==OP_SELL)
        {
         //if(OrderProfit()>0.0)
           //{//Print("OrderProfitS()=",OrderProfit());
         if(iOpen(NULL,PERIOD_CURRENT,1)-iClose(NULL,PERIOD_CURRENT,1)>0.0)
           {if(iClose(NULL,PERIOD_CURRENT,0)-iOpen(NULL,PERIOD_CURRENT,0)>0.0)
              {Print("iCloseS()=",iClose(NULL,PERIOD_CURRENT,0));
               if(!OrderClose(OrderTicket(),OrderLots(),Ask,3,White))
                  Print("OrderClose error ",GetLastError());
              }
           }
你好!2021.03.01_19:49 GMT+3。想改善我的交易系统的结果。但iOpen()和iClose()似乎并不工作。在策略测试器中,我检查了专家顾问,在175笔交易中,似乎只有81笔交易被上述代码中描述的条件关闭。这个代码不起作用。我们能做些什么来使其发挥作用?问问MetaQuotes的程序员怎么样?现在,我将查看策略测试器的日志,并发布这些功能很少工作的情况。找到了。20210228.log . 时间 13:53:02.192, open #155, iCloseB()=1.3434.附上的是日志文件。现在我希望有人能告诉我如何处理这些iClose()和iOpen()函数以使其发挥作用。因为交易系统的效率不够高。暂时就这些了。2021.03.01_20:12 gmt+3。
附加的文件:
20210228.log  277 kb
 
在mt5上发生的情况是,在某个时间段,新的条形图 出现的时间到了(而且报价似乎正在到来),但它仍然没有出现。它是什么?定价的具体细节?
 
ifitstrue:

关于的问题

如果我在过去的H1上画一条趋势线,那么最初的M1柱的指数会是多少?

而通过行文的开始和结束时间,并不清楚如何找到它。

对不起,如果我没有解释清楚的话。

这对我来说很困难。

H1有一个酒吧的开放时间- 它是iTime()。

为了了解M1上这个时间段的柱状体的索引,有iBarShift()。

剩下的就是用iHighest()和iLowest()知道M1的最低和最高栏位。

 
又见面了!2021.03.01_20:24 gmt+3.我在这个论坛1304页的主题中写道,我的第四版测试器 很慢。而维塔利-穆齐琴科误解了我。我写的是我写完评论的时间。而且我并不催促任何人。虽然我的问题没有答案,但我意外地找到了答案。我现在用策略测试器做什么?在测试专家顾问之前,我检查了 "优化 "复选框。我优化它。虽然,我目前不需要优化。我在大约一秒钟内优化了它。然后我清除了 "优化 "复选框。我检查了专家顾问的工作方式。然后,策略测试器迅速工作。这不是四十分钟或一个小时。我觉得有义务写这个。也许它对任何人都会有用处。我在第四个版本的终端中编写我的专家顾问,因为我的经纪人在第四个版本的终端中有卢布账户,而在第五个版本中没有。我不想搞美元:它有一个巨大的国家债务上限,我的经纪人以非市场汇率将我的美元翻译成卢布。20:39 GMT+3。
 
Николай Никитюк:
你好!2021.03.01_19:49 GMT+3。想改善我的交易系统的结果。但似乎iOpen()和iClose()函数不起作用。在策略测试器中,我检查了专家顾问,在175笔交易中,似乎只有81笔交易被上述代码中描述的条件关闭。这个代码不起作用。我们能做些什么来使其发挥作用?问一下MetaQuotes的程序员如何?现在,我将查看策略测试器的日志,并发布这些功能很少工作的情况。找到了。20210228.log . 时间 13:53:02.192, open #155, iCloseB()=1.3434.附上的是日志文件。现在我希望有人能告诉我如何处理这些iClose()和iOpen()函数以使其发挥作用。因为交易系统的效率不够高。暂时就这些了。2021.03.01_20:12 gmt+3。

代码似乎很好,但我对滑移量感到困惑......非常小,放更多的 滑移量 并检查

 
Alexey Viktorov:
我的天啊!我是不是想要什么?我有要求什么吗?你认为我是谁?
我的错误,对不起,错了人,错了地方。)
 
Николай Никитюк:
你好!2021.03.01_19:49 GMT+3。想改善我的交易系统的结果。但似乎iOpen()和iClose()函数不起作用。在策略测试器中,我检查了专家顾问,在175笔交易中,似乎只有81笔交易被上述代码中描述的条件关闭。这个代码不起作用。我们能做些什么来使其发挥作用?问问MetaQuotes的程序员怎么样?现在,我将查看策略测试员的日志,并公布这些功能的工作情况有多罕见。找到了。20210228.log . 时间 13:53:02.192, open #155, iCloseB()=1.3434.附上的是日志文件。现在我希望有人能告诉我如何处理这些iClose()和iOpen()函数以使其发挥作用。因为交易系统的效率不够高。暂时就这些了。2021.03.01_20:12 gmt+3。

试着这样改写,因为这是同一件事。

         if(Close[1]-Open[1]>0.0)
           {
            if(Close[0]-Open[0]>0.0)

或者说,我就是这样写的。

         if(Close[1]>Open[1])
           {
            if(Close[0]>Open[0])
              {
 
klub2003:

大家好!

问题是这样的:
价格向下或向上穿越MA。
我需要记住它,以便以后在计算通过的点数时使用它。

我是这样理解的。

double FixPrice; // 变量

bool Fix=false; // 标记

如果( Fix==false) {

if ( Close[0] > MA_lo ) FixPrice = Close[0];
}// 测量直到价格越过MA

如果( Close[0] < MA_lo ) Fix=true。

if ( Fix==true) FixPrice_L = FixPrice ;

这里有一个小插曲--价格没有被记住!

我将非常感谢您的帮助!
//+------------------------------------------------------------------+
//|                                                         Test.mq4 |
//|                        Copyright 2019, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//---

double     FixPrice;        // переменная ТАК БУДЕТ ЗАПОМИНАТЬСЯ. ГЛОБАЛЬНАЯ ПЕРЕМЕННАЯ
bool       Fix = false;      // маркер
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(Fix == false)
     {
      if(Close[0] > MA_lo)
         FixPrice = Close[0];
     }                                                                              // делаем замер пока цена не пересечет МА
   if(Close[0] < MA_lo)
      Fix = true;
   if(Fix == true)
      FixPrice_L = FixPrice ;
//+------------------------------------------------------------------+
  }
//+------------------------------------------------------------------+

这就是你想让它被记住的方式。

但请记住,在蜡烛的开端。

Close[0]=Open[0] 
и Close[0]=High [0] и Close[0]=Low[0]



因此,如果你需要即时、实时的数据,你最好使用

double Bidd=NormalizeDouble(Bid,Digits); если цена сверху или
double Askk=NormalizeDouble(Askk,Digits); если цена снизу МА

double MA_lo=NormalizeDouble(MA_lo,Digits);

最好将所有的价格正常化,这将在条件中进行比较,所以你不会感到惊讶 :)

 
MakarFX:

Чтобы перевернуть ФИБО поменяй местами  р1 и р2

С алертом я не помогу(

MakarFX
:

为了扭转FIBO,交换p1和p2

我无法帮助处理警报(

你好,谢谢,有两个不同的解决方案,你的是最简单 的 ....