[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 616

 

下午好!

我正在将指标中计算的4个变量("tick_up"、"tick_dn"、"pip_up"、"pip_dn")写到一个文本文件。由于它们是按刻度计算的

我看不到创建一个脚本的可能性,我使用指标并在历史上运行它。

这里是记录的代码。

.............
     
 handle = FileOpen("TickHistory.txt", FILE_CSV|FILE_WRITE, '\t');
   FileWrite(handle, "tick_up", "tick_dn", "pip_up", "pip_dn");
   FileWrite(handle, MA1[i],MA2[i],ExtBuffer1[i], ExtBuffer0[i]);  //---Также пробовал организовать вывод НЕ через массив, а через переменную типа double. 
            
   }      
      FileClose(handle);       
return(0);
}

创建了TickHistory.txt 文件,其中只有2行被写进

tick_up  tick_dn  pip_up    pip_dn   //--- Имя переменных
 0.35     0.65     0.28      0.71   //--- Рассчитываемые данные

为什么只有一行数据被写入文件?

 
DOCTORS:


我为我的要求不够正确而道歉 ...本质是不同时间段的高点计算是不同的,这是可以理解的,因此我做了以下工作(这对不同时间段的交易策略是必要的)。



显示图片

该指标需要重新设计,似乎有很多不必要的计算。

 
Fox_RM:

下午好!

我正在将指标中计算的4个变量("tick_up"、"tick_dn"、"pip_up"、"pip_dn")写到一个文本文件。由于它们是按刻度计算的

我看不到创建一个脚本的可能性,我使用指标并在历史上运行它。

这里是记录的代码。

创建了TickHistory.txt 文件,其中只有2行被写进

为什么只有一行数据被写入文件?


这就是你如何写下两行字

 
Fox_RM:

下午好!

我正在将指标中计算的4个变量("tick_up"、"tick_dn"、"pip_up"、"pip_dn")写到一个文本文件。由于它们是按刻度计算的

我看不到创建一个脚本的可能性,我使用指标并在历史上运行它。

这里是记录的代码。

创建了TickHistory.txt 文件,其中只有2行被写进

为什么只有一行数据被写入文件?

因为每次你在FILE_WRITE模式下打开一个文件,而没有FILE_READ,它就会被完全覆盖。https://docs.mql4.com/ru/files/FileOpen
 
alsu:
因为每次你在FILE_WRITE模式下打开一个文件,而没有FILE_READ,它就会被完全覆盖。https://docs.mql4.com/ru/files/FileOpen
即正确的方法:在循环之前打开一次,并写入标题,在循环中多次写入数据,在循环之后关闭。
 

还有一个关于使用iMAonArray和类似函数工作的问题。

我在计算卷的滑落。

//----Объявление массивов
double ExtBuffer0[],ExtBuffer1[],MA1[],MA2[],ExtVol[]; //--- Связанные через SetIndexBuffer массивы
double Mass1[], Mass2[], Mass3[];               //--- Массивы просто объявленные на глобальном уровне

   SetIndexBuffer(0,MA1);
   SetIndexBuffer(1,MA2);
   SetIndexBuffer(2,ExtBuffer0);
   SetIndexBuffer(3,ExtBuffer1);
   SetIndexBuffer(3,ExtVol);
  
IndicatorBuffers(5);


//----Вычисление среднего Вариант №1 (через связанные массивы) 
ExtVol[i]=Volume[i]; 
MA1[i]=iMAOnArray(ExtVol[i],0,8,0,0,0); //--- Или MA1[i]=iMAOnArray(Volume[i],0,8,0,0,0);

//----Вычисление среднего Вариант №2
Mass1[i]=Volume[i]; 
Mass2[i]=iMAOnArray(Mass1[i],0,8,0,0,0); //--- Или Mass1[i]=iMAOnArray(Volume[i],0,8,0,0,0);

为什么我只通过通过SetIndexBuffer 链接的 数组获得滑动计算

如果我用普通的数组来做,什么都没有出来。

 
alsu:
即这是正确的:在循环之前打开一次,并写入标题,在循环中多次写入数据,在循环之后关闭。
明白了!)问题清除了!)谢谢你
 

先生们!如何更明智地描述酒吧周期?



先生们!如果不是太困难,请给我建议。

如果我想在三个或四个连续的柱子上比较指标,我应该如何正确地写代码?

我正在看不同的变体,感到很困惑。

我很抱歉,如果我让别人紧张...

 

亲爱的鉴赏家们!关于修改和棚架的问题。



请你原谅!

请善待自己,谁能理解。如何正确描述订单的修改。

以及跟踪止损和五位数的利润?

试过标准选项,但它们不知为何工作不稳定。

也许有人会抛出一个链接?

我预先感谢你。

 
你能告诉我如何在EA中声明一个指标叠加在另一个指标上(如RSI上的MA)?