任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 369

 
Link_x:
你好!
嗯,我如何通过创建一个指标的代码来附加一个线?
我在参考书中找到一个函数,它定义了一个对象。
我也找到了如何设置属性的方法。
我曾试图对它进行编程。
结果是--5个错误。
我希望看到一个如何定义OBJ_HLINE对象的例子。
谢谢你!


我们要自己去找东西吗? 还是你习惯了要把所有东西都摆在盘子里?

在此阅读

p.s. 示例代码和描述在这些字下面是错误的。

使用Wingdings字体

现在让我们使用Wingdings字体创建标签。让我们改变一下函数 start()

 
Ekburg:


你的问题不清楚......如果你正确地插入了代码,你可以解释你的困惑)。

但让我们看看我们能做什么


看上去是斯维尔洛夫斯克居民?
 
Vinin:

我猜是斯维尔罗维亚人吧?

是的,我是)。
 
SpikeOne:

请帮助我,我是否正确理解了这个代码的工作原理?

我把它放在EA的某个地方,它在达到715后开始关闭所有订单。

我只有一个问题,在某些地方因为我粘贴了这个代码而开始变得一团糟,也许有人会告诉我哪里出了问题。



我刚刚开始解析你的代码,我已经可以看出你的代码架构是坏的......

没有正确暴露的大括号,纠正它们,也许问题就解决了

P.S.我的意思是没有一个视觉展示的地方,和混合了开头和结尾的括号......例如,在第一块如果在结尾的地方,你的图括号打开另一个块,那是因为这个混淆产生的。

 
SpikeOne:

请帮助我,我是否正确理解了这个代码的工作原理?

我把它放在EA的某个地方,它在达到715后开始关闭所有订单。

我仍然有一个问题,在一些地方它变得很乱,因为我把这个代码放在那里,也许有人会告诉我哪里出了问题。



在终端安装最新的构建,在那里写代码更容易,不容易出错,我建议!:)

纠正了一开始发送的部分,没有最后的括号部分,不清楚为什么需要这样做。

if ( AccountProfit()+ AccountBalance()>=715)
   {
   for(int zx=OrdersTotal(); zx+1>=0; zx--)
      {
      if(OrderSelect(zx,SELECT_BY_POS,MODE_TRADES)==true)
      OrderDelete(OrderTicket());
      }
   }
while (OrdersTotal()>0)
   {
   if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderType()==OP_BUY) result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(MarketInfo(OrderSymbol(),MODE_BID),MarketInfo(OrderSymbol(),MODE_DIGITS)),3,CLR_NONE);
      if(OrderType()==OP_SELL) result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(MarketInfo(OrderSymbol(),MODE_ASK),MarketInfo(OrderSymbol(),MODE_DIGITS)),3,CLR_NONE);
      if (OrderType()==OP_BUYLIMIT || OrderType()==OP_BUYSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELLSTOP)
      OrderDelete(OrderTicket());
      if(result!=TRUE)
         {
         er=GetLastError();
         Print("LastError = ",er, " ",Symbol());
         }
      else er=0;
      }
   else Print( "Error when order select ", GetLastError());
   }
 

亲爱的同志们,朋友们!我很难表达我对你们之前帮助我写EA的 感激之情(在这个主题的第350页的最后)。现在我再次需要你的帮助,我希望你能再次出手。

因此,我需要在我的EA中写下以下内容。

该EA应该在EMA极值上工作。在EMA高点,它应该放置挂单,在等于反转穆维尼格蜡烛的低点价格减去该价格的一定百分比(例如,反转蜡烛的低点*0.99)的价格上建立空头头寸。挂单还必须包含一个止损和止盈,作为反转穆维尼格蜡烛的那个非常低的百分比。但这还不是全部。同时,如果达到EMA最大值,EA应该在该资产的所有未平仓多头中,在要做空的同一水平设置止损。因此,当达到估计的价格时(见上文),现有的多头应该被关闭(使用EA之前设置的止损),空头应该被打开。

在低EMA值时,情况恰恰相反:有一根蜡烛,其中Muving已经转为上升。在下一个蜡烛图上,EA应该开始跟踪价格,当它超过以下水平:反转蜡烛图的高点+一定的百分比(例如,反转蜡烛图的高点*1.01),现有的开仓空头应该在这个价格(反转蜡烛图的高点+一定的百分比)设置止损,并在同一价格开仓做多的挂单(止损和止盈为反转蜡烛图的高点的百分比)。

因此,顾问在muvning的反转(我们指的是完成的反转,即前两根蜡烛的反转,当前的蜡烛不被考虑在内,muvning可以在当前的柱子上反转,但它不会在上面转过来,这些在当前muvning期间的反转,如果关闭柱子反转的结果不是 - 不算在内)。

因此,如果muving处于最高点,专家顾问应该在某一水平上为现有的多头设置止损(见上文),并在同一水平上开立一个挂单来做空(有止损和止盈)。

如果muving是低的,则反之--EA在某一水平的开仓短线中设置止损(见上文),并在同一水平设置挂单开仓长线(带止损和止盈)。

因此,将不可能转为现金,我们将始终处于多头头寸,或空头头寸中。当关闭一个多头头寸时,我们同时打开一个空头,反之亦然。

我试着用我的工作EA(它通过跨越两个EMAs工作)并以正确的方式修改它。但我对C++知识的贫乏和对编程的厌恶使我失败了。以下是我试图修改为所需的专家顾问的链接:https://www.mql5.com/ru/code/8463?source=terminal4_codebase

我明白我需要很多帮助,这不是一件容易的事,所以作为奖励,我将把我对BTC/USD(比特币/美元)交易所btc-e的研究成果送给那些帮助我的人。我确定了最合适的移动平均线(以减少错误信号并触发良好的动作),它的最佳参数(反转蜡烛的高/低百分比),最合适的止盈。我在Excel中计算了一下。这个Excel文件是我送的,以示感谢。也许它对你有用。

我不想只使用这个专家顾问进行交易。当我不关注市场时,我需要它来监控市场(因为我不可能一天24小时都关注它)。当我在监控时,我根据一定的方法,按支撑/阻力线进行交易,但EMA系统也帮助我--确定水平的突破点,设置止损。

我在写EA时等待帮助,我在依靠它。

 
okidoki543:

亲爱的同志们,朋友们!我很难表达我对你们之前帮助我写EA的感激之情(在这个主题的第350页的最后)。现在我又需要你的帮助,我希望你能再次给予帮助。

哦,哦!:)只是一个写的命令)
 
okidoki543:

因此,我需要在EA中规定以下内容。

这项任务是相当可行的,原则上甚至不需要写很多代码......只要有时间就可以了......:)
 
我不知道如何插入正常的引语,我是这样手动放的:[quote]这个任务是很好做的,原则上你甚至不需要写太多的代码......这将是时间的问题......:)[/quote]如果你能帮忙,我将非常感激。
 
okidoki543:
我不知道如何插入一个正常的引号,这样说吧,手动:[quote]这个任务是相当可行的,原则上甚至没有很多代码要写,会有时间去做......:)[/quote]如果你帮忙,我将非常感激。


如果可以的话,我今天会跳过这段代码......我不确定是否会有效果,因为我在工作,没有时间写一个调试的程序......但这将是一个肯定的起点)

但我不能保证......今天的情况会如何)