编码帮助 - 页 781

 
求你了,你愿意帮忙吗?

我有这个指标,它应该在收盘时更新一些数值,但它的反应不够早,通常是在收盘后20-40秒,很多时候我不得不重新加载图表。

你能帮助解决这个问题吗?
附加的文件:
 
Savior: 我认为在蜡烛收盘 时应该更新一些数值。

没有这样的事情。当一个新的刻度线在当前蜡烛的最后一秒后到达,开始一个新的蜡烛时,蜡烛就被认为是关闭的。

在亚洲时段,刻度之间可能有几分钟的间隔,想想M1图表。更大的图表,认为是周末,市场假日(国家和经纪人特定。)需要了解你的经纪人何时停止和开始(不一定与市场相同。
"无孔 "图表 - MQL4文章2006年6月20日
如果开盘=收盘就没有蜡烛?-MQL4编程论坛2010.06.06

该代码在计时器上每秒运行一次,当一个符号开始一个新的条形图时就会更新。没有什么问题。

 

大家好 -

我使用EA Builder建立了一些像样的EA,但是我正在努力使用分形建立一个。

鉴于分形出现在5烛台系列的中间点,我想我可能得到了 "移动 "和指数的错误。

试图创建一个简单的长线(一旦我理解了移位/指数,我就可以增加参数)。

开盘,分形,时间框架(当前),指标(上)移位(3)"高于 "蜡烛图,指数(3),值(低)。

我的想法是,分形在低位蜡烛下面,准备开始上升趋势。

非常感谢您的帮助!谢谢您,大卫

 
  1. David-Toronto: 非常感谢您的帮助!谢谢您,David
    帮助你做什么?你没有说明问题,你甚至没有说明想要什么?

  2. David-Toronto :使用EA Builder设置一些像样的EA
    EA builder, EATree, Etasoft forex generator, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FXEABuilder,fxDreema, FxPro,Molanis,Online Forex Expert Advisor Generator,Strategy Builder FX, Strategy Quant, Visual Trader Studio,MQL5 Wizard, etc.,都是一样的。你会很快 得到一些东西,但你会花更多 时间去尝试把它弄,而不是在前面学习语言,然后直接写它。
    1. 由于你没有学习过MQL4/5,因此我们没有共同的语言 来沟通。
      如果我们告诉你你需要什么,你就无法编码。
      如果我们给你代码,你也不知道如何把它整合到你的代码中。
      当你发布你的 尝试(使用SRC)和你的 问题的性质时,我们愿意帮助 你,但我们不会去调试 你的 的数百行代码。你基本上要靠自己了。

    2. EA生成器在关闭多个订单时,会产生不好的代码计数。
      EA生成器的代码很差,Bars不可靠(图表中的最大条数),volume不可靠(错过ticks)。
      EA生成器的代码很差,没有对4/5位数的经纪人、TP/SL 滑点进行调整
      EA生成器的代码很差,没有为ECN经纪商进行调整。生成前500)
      EA生成器的代码很差,没有
      检查返回代码。

    3. EATree使用图表上的对象来保存数值--而不是持久性存储(文件GV+Flush)。

    4. FX EA生成器使坏代码,不检查 返回代码。
      FX EA Builder的代码很差,在终端重启时丢失了打开的票据。没有恢复(崩溃/电源故障。)
      FX EA Builder的代码很差,没有为点差调整止损。
      FX EA Builder的代码不好,直接 使用OrdersTotal

    5. FOREXEADVISOR STRATEGY BUILDER的代码不好,没有更新全局变量。
      FOREXEADVISOR STRATEGY BUILDER制作不良代码,编译错误。
      FOREXEADVISOR STRATEGY BUILDER制作的坏代码,没有检查 返回代码。

    学习编码,或者花钱请人(自由职业者)来编码。
    雇人写脚本 - 概述 - MQL5编程论坛

 
William Roeder:
  1. 帮你做什么?你没有说明问题,你甚至没有说明想要什么?

  2. EA builder, EATree, Etasoft forex generator, 外汇策略生成器, FOREXEADVISOR STRATEGY BUILDER, FXEABuilder,fxDreema, FxPro,Molanis,Online Forex Expert Advisor Generator,Strategy Builder FX, Strategy Quant, Visual Trader Studio,MQL5 Wizard, etc.,都是一样的。你会很快 得到一些东西,但你会花更多 时间去尝试把它弄,而不是在前面学习语言,然后直接写它。
    1. 由于你没有学过MQL4/5,因此,我们没有共同的语言 可以交流。
      如果我们告诉你你需要什么,你就无法编码。
      如果我们给你代码,你也不知道如何把它整合到你的代码中。
      当你发布你的 尝试(使用SRC)和你的 问题的性质时,我们愿意帮助 你,但我们不会去调试 你的 的数百行代码。你基本上要靠自己了。

    2. EA生成器在关闭多个订单时,会产生不好的代码计数。
      EA生成器的代码很差,Bars不可靠(图表中的最大条数),volume不可靠(错过ticks)。
      EA生成器的代码很差,没有对4/5位数的经纪人、TP/SL 滑点进行调整
      EA生成器的代码很差,没有为ECN经纪商进行调整。生成前500)
      EA生成器的代码很差,没有
      检查返回代码。

    3. EATree使用图表上的对象来保存数值--而不是持久性存储(文件GV+Flush),不能恢复(崩溃/断电。

    4. FX EA生成器使坏的代码,不检查 返回代码。
      FX EA Builder的代码很差,在终端重启时丢失了打开的票据。没有恢复(崩溃/电源故障。)
      FX EA Builder的代码很差,没有为点差调整止损。
      FX EA Builder的代码不好,直接 使用OrdersTotal

    5. FOREXEADVISOR STRATEGY BUILDER的代码不好,没有更新全局变量。
      FOREXEADVISOR STRATEGY BUILDER制作不良代码,编译错误。
      FOREXEADVISOR STRATEGY BUILDER制作的坏代码,没有检查 返回代码。

    学习编码,或者花钱请人(自由职业者)来编码。
    雇人写脚本 - 概述 - MQL5编程论坛

谢谢威廉,但还没有准备好编码,也不需要用砖头砸脑袋。

对于开始或使用过EA Builder的人来说,如果你能提供帮助,请只回复。 谢谢。


问题是如何为发生在蜡烛上方的分形开立多头交易(使用EA Builder)。

我的尝试是在任何分形发生后(高于或低于蜡烛)给出买单。

使用:分形,时间框架(当前),指标(上)移动(3)"高于 "蜡烛图,指数(3),值(低)。

 

下午好

我是个编码新手,想在我试图编码的一个指标上得到一些帮助。我基本上是在做我自己的MA,一个条形的开盘和收盘值的带子,取决于哪一个在哪里,也就是说,如果开盘比收盘高,它被保存在顶部阵列,否则它被保存在底部阵列。我已经在我写的一个EA上做了相当多的故障排除,但不幸的是,我不能在指标上得到同样的结果。

附加的文件:
MA_Band.mq4  5 kb
 
  1. PLZFrosty: 但我不能在指示灯上得到同样的结果,

    "不工作 "是没有意义的--就像说汽车不工作一样。不能启动,不能挂档,没有电,钥匙丢失,轮胎爆胎--毫无意义。你真的期望得到答案吗?这里没有读心术,我们的水晶球是有裂缝的。你还没有说明问题。

  2.       SetIndexBuffer(0, MA_top);
          ⋮
          SetIndexBuffer(1, MA_bot);
    
    你声明你的指标有多少个缓冲区?如果你检查了你的返回代码,你就会知道原因。
    程序属性(#property) - 预处理器 - 语言基础 - MQL4参考
 
William Roeder:
  1. "不工作 "是没有意义的--就像说汽车不工作一样。不能启动,不能挂档,没有电,钥匙丢失,轮胎爆胎--毫无意义。你真的期望得到答案吗?这里没有读心术,我们的水晶球也有裂缝。 你还没有说明问题。

  2. 你声明你的指示器有多少个缓冲器?如果你检查了你的返回代码,你就会知道原因。
    程序属性(#property) - 预处理器 - 语言基础 - MQL4参考

我知道它应该做什么,但我不知道如何找出它不工作的原因。我已经用注释函数 来找出它停止工作的地方,发现它在应该把值放入所述数组的地方停止。我在请求指导如何排除故障,而不是请人帮我解决这个问题。告诉我我错过了什么,或者我做错了什么,以及在哪里可以读到解决方案,这对我帮助很大。谢谢你的链接。至少这是我的一个问题得到了解决。有没有比使用Comment()来排除代码爆炸的地方更有效的方法?

Documentation on MQL5: Common Functions / Comment
Documentation on MQL5: Common Functions / Comment
  • www.mql5.com
[in]   Any values, separated by commas. To delimit output information into several lines, a line break symbol "\n" or "\r\n" is used. Number of parameters cannot exceed 64. Total length of the input comment (including invisible symbols) cannot exceed 2045 characters (excess symbols will be cut out during output). Data of double type are output...
 
PLZFrosty:

我知道它应该做什么,但我不知道如何找出它不工作的原因。我已经用 "评论 "功能 找出了它停止工作的地方,发现它是在应该将数值放入所述数组的地方停止的。我在请求指导如何排除故障,而不是请人帮我解决这个问题。告诉我我错过了什么,或者我做错了什么,以及在哪里可以读到解决方案,这对我帮助很大。谢谢你的链接。至少这是我的一个问题得到了解决。有没有比使用Comment()来排除代码爆炸的地方更有效的方法?

我不知怎么搞的,但我不知道为什么它能工作,而不是反过来。我发现我的推理有一个小错误,于是重写了我的函数。当我使用Comment(DoubleToString(array[1], 3);时,它仍然没有显示我的数组的值,但它至少在画MA线。除了使用Comment()外,还有什么方法可以让我看到我的数组值吗?
 
input int SmallEMA = 50;
input int BigEMA = 100;
void OnTick()
  {
   string signal = "";
   double SmallMovingAvarage1 = iMA(Symbol(),PERIOD_CURRENT,SmallEMA,0,MODE_EMA,PRICE_CLOSE,0);
   double BigMovingAvarage1   = iMA(Symbol(),PERIOD_CURRENT,BigEMA,0,MODE_EMA,PRICE_CLOSE,0);
   
   if (BigMovingAvarage1 > SmallMovingAvarage1)
   
   {
   
      signal = "sell";
   }
   
   if (BigMovingAvarage1 < SmallMovingAvarage1)
    
   {
      signal = "buy";
   }
   
   
 
   if (signal == "sell" &&   OrdersTotal() == 0 )
   
   OrderSend(Symbol(),OP_SELL,0.02,Bid,10,0,0,NULL,0,0);
   
    
   
   if ( signal == "buy" && OrdersTotal() == 1)
   
   CloseSellPositions();
  
   
   
   if (signal == "buy" &&  OrdersTotal() == 0  )
   
    OrderSend(Symbol(),OP_BUY,0.02,Ask,10,0,0,NULL,0,0);
   
   //if (signal == "sell" && 0 <= OrdersTotal() <= 1)
   
   if (signal == "sell" && OrdersTotal() == 0)
   
   CloseBuyPositions();
    
   
   Comment ("The current signal is: ",signal);
   
   
  }


void CloseBuyPositions()
   {
   
   for(int i = OrdersTotal() -1 ; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_BUY)
      {
         
         OrderClose(OrderTicket(),0.02,Bid,10);
      }
   }
   
   
   }
void CloseSellPositions()
   {
   
   for(int i = OrdersTotal()- 1; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_SELL)
      {
         OrderClose(OrderTicket(),0.02,Ask,10);
      }
    }
   } 

嗨。


EMA (1) = 50

EMA(2)=100


如果(50<100)

关闭未结的买入头寸(如果有的话)并建立一个卖出头寸


如果(50>100)


关闭未平仓的卖出头寸(如果有),并开立买入头寸。


我想开发一个满足这些条件的专家顾问,我分享了我写的代码。但它并不像我想的那样工作。


你能帮助我完成我的代码中缺少的部分吗?