KimIV的有用功能 - 页 39

 

我的妈呀...给我两个...

 
KimIV писал (а)>>

谢谢你的回答,如果能计算出两个iMA(移动平均线)的交角,那是非常有趣的。而更有趣的是,由于角度不直,如何做呢?获得的数值可能对许多专家顾问有用。>> 请帮助。

 
AlexDub писал (а)>>

非常有趣的是,是否可以计算两个iMAs(移动平均线)的交角

有可能

AlexDub 写道(a)>>
而更有趣的是如何做到这一点,因为角度不直?

1.画出与两个iMA的切线。

2.计算它们之间的角度值。

 
KimIV писал (а)>>

也许...

1.画出两个标尺的切线。

2.计算切线之间的角度值。

比方说,我可以计算出角度,但如何画出切线,我需要一个代码:)
 
AlexDub писал (а)>>
需要代码:)

写...然后你可以把它贴在这里,如果你不觉得不好的话 :)

 
亲爱的伊戈尔!
我正在尝试你的专家顾问e-TFL_v2,它运行后写了一条信息,即上下价格水平未被定义,请告知我做错了什么或我需要配置其他东西。预先感谢您的回答!
 
Starik писал (а)>>
我不知道什么是价格的上限和下限,请你告诉我,我做错了什么,或者我是否应该调整其他东西?

你放在图表上的线条必须被赋予 "正确 "的名称,必须与EA的NameUpLine和NameDnLine参数中的名称一致。

 

GetExtremumZZZPrice()函数。

该函数搜索标准自定义ZigZag 指标的极值并返回其价格水平。该函数接受以下可选参数。

  • sy- 仪器的名称。""NULL- 当前符号。默认值为NULL
  • tf- 时间框架。默认值为0--当前符号。
  • ne- 极端数字。0-最后一次,1-上一次,2-上一次,等等。
  • dp,dv,bs- ZigZaga参数:ExtDepth, ExtDeviation, ExtBackstep。
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 07.10.2006                                                     |
//|  Описание : Возвращает экстремум ЗигЗага по его номеру.                    |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (NULL или "" - текущий символ)          |
//|    tf - таймфрейм                  (      0     - текущий ТФ)              |
//|    ne - номер экстремума           (      0     - последний)               |
//|    dp - ExtDepth                                                           |
//|    dv - ExtDeviation                                                       |
//|    bs - ExtBackstep                                                        |
//+----------------------------------------------------------------------------+
double GetExtremumZZPrice(string sy="", int tf=0, int ne=0, int dp=12, int dv=5, int bs=3) {
  if (sy=="" || sy=="0") sy=Symbol();
  double zz;
  int    i, k=iBars(sy, tf), ke=0;

  for (i=1; i<k; i++) {
    zz=iCustom(sy, tf, "ZigZag", dp, dv, bs, 0, i);
    if (zz!=0) {
      ke++;
      if (ke>ne) return(zz);
    }
  }
  Print("GetExtremumZZPrice(): Экстремум ЗигЗага номер ",ne," не найден");
  return(0);
}
 

如何使用GetExtremumZZZPrice()函数的例子。

  • 当前图表上最后一个ZigZag 极值的价格水平。
    Message(GetExtremumZZPrice());
  • 当前符号的H4图表上最后一次ZigZag突破的价格水平。
    Message(GetExtremumZZPrice(NULL, PERIOD_H4, 1));
  • 在当前图表上找到最后一次ZigZag突破的价格水平,并画一条水平线穿过它。
    double p=GetExtremumZZPrice(NULL, 0, 1);
    SetHLine(Magenta, "", p);

附上一个测试GetExtremumZZZPrice()函数的脚本。

附加的文件:
 
KimIV писал (а)>>

使用GetExtremumZZZPrice()函数的例子。

  • 当前图表上最后一个ZigZag 极值的价格水平。
  • 当前符号的H4图表上最后一次ZigZag突破的价格水平。
  • 在当前图表上找到最后一次ZigZag突破的价格水平,并画一条水平线穿过它。

那你如何在所有这些点上画一条垂直的虚线作为背景?