错误、漏洞、问题 - 页 797

 
sergeev:

就是这个吗?


我有两个问题。

- 你为什么要改变代码中四元组的计算?

- 这个指标显示什么?如何利用它进行交易?

这就是它。

- 我没有改变它。我已经把所有的东西都一对一地转移了。代替四的代码中的f-i,我使用之前从慢速和快速移动平均线的OPEN、CLOSE、HIGH、LOW中计算出的MA数组的值,再次乘以仪器的适当系数。

例如,一个四的TOTAL代码。

if (Symbol() == "EURUSD"){
               OPEN=EUR(Mode,PRICE_OPEN,i,per1,per2)-USD(Mode,PRICE_OPEN,i,per1,per2);
               HIGH=EUR(Mode,PRICE_HIGH,i,per1,per2)-USD(Mode,PRICE_HIGH,i,per1,per2);
               LOW=EUR(Mode,PRICE_LOW,i,per1,per2)-USD(Mode,PRICE_LOW,i,per1,per2);
               CLOSE=EUR(Mode,PRICE_CLOSE,i,per1,per2)-USD(Mode,PRICE_CLOSE,i,per1,per2);
...
 pair[i]=(OPEN+HIGH+LOW+CLOSE)/4;

这是我在五中使用的欧元F-I之一,而不是(见下文)--立即计算其中的公式。这都是一对一的。

double EUR(int Mode, int Price, int i, int per1, int per2){
   return(
            (iMA("EURUSD",0,per2,0,Mode,Price,i)-
            iMA("EURUSD",0,per1,0,Mode,Price,i))*10000*kUSD
            +
            (iMA("EURGBP",0,per2,0,Mode,Price,i)-
            iMA("EURGBP",0,per1,0,Mode,Price,i))*10000*kGBP
            +
            (iMA("EURJPY",0,per2,0,Mode,Price,i)-
            iMA("EURJPY",0,per1,0,Mode,Price,i))*100*kJPY
          ); 

在五中,这种计算将是这样的--没有函数,就像四中一样,而是直接由先前计算的数组来进行。

if (Symbol() == "EURUSD")
        {     
// ----  OPEN=EUR(Mode,PRICE_OPEN,i,per1,per2)-USD(Mode,PRICE_OPEN,i,per1,per2);          
         OPEN=((OPEN_F_EURUSD[i]-OPEN_S_EURUSD[i])*10000*kUSD+(OPEN_F_EURGBP[i]-OPEN_S_EURGBP[i])*10000*kGBP+(OPEN_F_EURJPY[i]-OPEN_S_EURJPY[i])*100*kJPY -
               (OPEN_S_EURUSD[i]-OPEN_F_EURUSD[i])*10000*kEUR+(OPEN_S_GBPUSD[i]-OPEN_F_GBPUSD[i])*10000*kGBP+(OPEN_F_USDJPY[i]-OPEN_S_USDJPY[i])*100*kJPY);
               
// ----  HIGH=EUR(Mode,PRICE_HIGH,i,per1,per2)-USD(Mode,PRICE_HIGH,i,per1,per2);              
         HIGH=((HIGH_F_EURUSD[i]-HIGH_S_EURUSD[i])*10000*kUSD+(HIGH_F_EURGBP[i]-HIGH_S_EURGBP[i])*10000*kGBP+(HIGH_F_EURJPY[i]-HIGH_S_EURJPY[i])*100*kJPY -
               (HIGH_S_EURUSD[i]-HIGH_F_EURUSD[i])*10000*kEUR+(HIGH_S_GBPUSD[i]-HIGH_F_GBPUSD[i])*10000*kGBP+(HIGH_F_USDJPY[i]-HIGH_S_USDJPY[i])*100*kJPY);
               
// ----  LOW=EUR(Mode,PRICE_LOW,i,per1,per2)-USD(Mode,PRICE_LOW,i,per1,per2);
         LOW=((LOW_F_EURUSD[i]-LOW_S_EURUSD[i])*10000*kUSD+(LOW_F_EURGBP[i]-LOW_S_EURGBP[i])*10000*kGBP+(LOW_F_EURJPY[i]-LOW_S_EURJPY[i])*100*kJPY -
               (LOW_S_EURUSD[i]-LOW_F_EURUSD[i])*10000*kEUR+(LOW_S_GBPUSD[i]-LOW_F_GBPUSD[i])*10000*kGBP+(LOW_F_USDJPY[i]-LOW_S_USDJPY[i])*100*kJPY);
               
// ---   CLOSE=EUR(Mode,PRICE_CLOSE,i,per1,per2)-USD(Mode,PRICE_CLOSE,i,per1,per2);
         CLOSE=((CLOSE_F_EURUSD[i]-CLOSE_S_EURUSD[i])*10000*kUSD+(CLOSE_F_EURGBP[i]-CLOSE_S_EURGBP[i])*10000*kGBP+(CLOSE_F_EURJPY[i]-CLOSE_S_EURJPY[i])*100*kJPY -
               (CLOSE_S_EURUSD[i]-CLOSE_F_EURUSD[i])*10000*kEUR+(CLOSE_S_GBPUSD[i]-CLOSE_F_GBPUSD[i])*10000*kGBP+(CLOSE_F_USDJPY[i]-CLOSE_S_USDJPY[i])*100*kJPY);
         }
      
      pair[i]=(OPEN+HIGH+LOW+CLOSE)/4;    

- 几个符号运动的累积效应,以及开、高、低、关符号的快速和慢速MA的差异被提取。考虑到同样需要优化的仪器的快慢MA差异的乘数系数,它们被加在一起并除以4。

交易。1.通过穿越零线+不同(从零开始的距离,以过滤虚假进场)从下到上,然后买入,从上到下,然后卖出。请看预告片中的专家顾问。

2.关于拐点线:如果出现低于零的拐点,则买入,如果该累计MA工具差线出现高于零的拐点,则卖出(该选项在EA中尚不可用)。

我想在冠军赛中使用第一个或第二个选项。

附加的文件:
 

图表显示不正确(条形模式)。

当终端启动时,指示器缓冲区符号的显示与它们相关的条形图像相比,有明显的偏移。

建设687

同样在可视化模式下,当一个图表在移动时,指标缓冲 符号在相应的条形图后面移动,具有非常强烈和明显的滞后性。

 
R0MAN:

- 我没有改变它。我把所有东西都一对一地转移了。

你的结果是不一样的。

我不明白为什么你总是捆绑mqh

。我已经按顺序修复了代码。我添加了两个类

CSeries- 一个为4个数组和4个缓冲区服务的类+它们被定义在INDICATOR_CALCULATION
CPair - 一个为两个CSeries服务的类-快速和慢速。

和功能USD/JPY/EUR/GBP + 开始转移作为在MT4


我与MT4比较结果 - 一对一 - 完全吻合

啤酒请客 :)


我想使用锦标赛上的第一个或第二个选项。

你有什么有利可图的结果吗?

附加的文件:
 

而这正是你最初想做的那种指标

附加的文件:
 
sergeev:

1.你的结果不匹配。

我不知道为什么你的工具包里总是有MQH。

无论如何,我已经清理了代码。 我添加了两个类

CSeries - 一个类,为4个数组和4个缓冲区服务,它们被定义在INDICATOR_CALCULATION中。
CPair - 一个为两个CSeries服务的类--快和慢。

而美元/日元/欧元/英镑的功能+开始移位与MT4一样


2.我将结果与MT4进行了比较--一对一--它们是相同的。

啤酒请客 :)

3.你有什么有利可图的结果吗?


1.噢!我从心底里感谢你!你是我的好朋友。还没有看。是iCustom--它是可以接受的吗?

不是猫头鹰上五。我有这种籼米已经很久了--在档案馆里。

2.外科医生与他的MASD--灵感的来源!他正在用他的11个交易给所有的神经-多光谱-超声。:-)

他通常就是这样的。现在,如果iCustom适合我的需要,我就把信号放到猫头鹰里去,然后发疯!"。

3.虽然鞋跟上没有猫头鹰...它是否适合于iCustom?- 我需要它在第一、第二、第三条上的数值(用于编码入市的两个条件:零点交叉和(或)零点以上/以下的拐点)。

4."你欠我一杯啤酒:-)+在一条个人信息中写道。

 
R0MAN:

3.虽然鞋跟上没有猫头鹰,但这是一个很好的例子。它是否适合于iCustom?- 需要它的值来自第一、第二、第三条(用于编码两个市场进入 条件 零点交叉和(或)零点以上/以下的拐点)。

一切都被送入iCustom。
 
Rosh:
调试在测试器中是不可用的
是否有任何计划?由于不可复制的条件,在线调试的作用不大。
 
提醒我,如何让指标自动显示在图表窗口中,该窗口在测试器中运行后被打开?我不认为我以前需要做什么。
 
marketeer:
在线调试的作用不大,因为这些条件是不可复制的。

有一个这样的信,又大又粗。

是否有任何计划?

我不认为MetaQuotes有热情在测试员和调试员之间跨越,这是可以理解的--任务是歪的。

关于"虚拟服务器"的想法四处游荡--它更接近现实,特别是如果允许输入任意数据(以任意的速度)。但这也是一个给元引号带来很大压力的选项(显然,同时有几个原因)。

但更多的方式是可能的。第三种东西。类似于调试器中的 "微测试器"。 我们设置一对,指定断点,启动它,就可以了。通过调试器运行它。在断点处停止,可以逐步调查并开始 "进一步",直到完成 "调试期"。

一般般。

// 但这都是我的猜测/想法,也许斯特林戈会想出别的办法。

但有些事情必须要做,这是肯定的。

 

MetaDriver:

有一些关于 "虚拟服务器 "的想法在流传--它更接近于现实,特别是如果你允许任意的数据输入(以任意的速度)。但这也是一个对元引号造成很大压力的选项(显然,同时有几个原因)。

哎哟,在我看来,一个有调试功能的测试员会更现实,人们甚至不应该在这个方向上做梦。