KimIV的有用功能 - 页 73

 
该函数按其编号返回分形。上分形和下分形的编号是分开的。这可能有助于开发专家顾问,分析最后一些分形的相对定位,以作出进入市场的决定。通过修改KimIV函数制成。
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru  & khorosh        |
//+----------------------------------------------------------------------------+
//|  Версия   : 08.02.2009                                                     |
//|  Описание : Возвращает фрактал по его номеру.                              |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента        ("" или NULL - текущий символ)     |
//|    tf - таймфрейм                       (    0       - текущий ТФ)         |
//|    nf - номер фрактала                  (    0       - последний)          |
//+----------------------------------------------------------------------------+
double GetFractal(string sy="0", int tf=0, int nf=0, int mode=MODE_UPPER) {
  if ( sy=="" || sy=="0") sy=Symbol();
  double f=0;
  int    i, k=iBars( sy, tf), kf;
  for ( i=3; i< k; i++) {
    if( mode==MODE_LOWER){
    f=iFractals( sy, tf, MODE_LOWER, i);
    if ( f!=0) {
      kf++;
      if ( kf> nf) return(iLow( sy, tf, i));
     } 
    }
    if( mode==MODE_UPPER){
    f=iFractals( sy, tf, MODE_UPPER, i);
    if ( f!=0) {
      kf++;
      if ( kf> nf) return(iHigh( sy, tf, i));
      }
    }
  }
  Print("GetFractalBar(): Фрактал не найден");
  return(-1);
}
 

你好,伊戈尔!

我正在努力学习MQL4,由于缺乏对语言运算符的描述,有一个问题让我感到很棘手。我有一个指标,有8个缓冲区的累积数据。 我需要它在我选择的时间框架上显示,并且有下一个时间框架的周期。为此,它使用了iCustom()操作符。但它返回的是一个双倍的值,我不知道在这种情况下如何以及是否应该使用iCustom。

我真的希望得到你的帮助。

 

你好,伊戈尔!大家下午好。

我感兴趣的是应该输入的代码,以便专家顾问在关闭交易时不会在该日进行任何更多的交易...


我已经找到了,但它在策略测试器中 不起作用,我想测试它,我应该用什么代码代替?

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара открытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarCloseLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
  datetime t;
  int      i, k=OrdersHistoryTotal();

  if (sy=="" || sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) t=OrderCloseTime();
            }
          }
        }
      }
    }
  }
  return(iBarShift(sy, tf, t, True));
}

然后,你应该输入输入条件

if (NumberOfBarCloseLastPos(NULL, 1440,-1, Magic)  !=0) {
                                                      }
 
LeoV писал(а)>>

你好,伊戈尔!

你是否有一个脚本,可以将所有工具的未结头寸按成交量(手数)修改为某个百分比?无论是向上还是向下,每个位置都要保存神奇的数字?

你好,列昂尼德!

我没有......我写......。变化的地段

 
KimIV писал(а)>>

你好,列昂尼德!

没有......写......。变化的地段

伊戈尔,非常感谢你!我真的可以用它来做我的Pamm。)))))
 

你好,伊戈尔!

当我使用你的专家顾问 "e-SampleCase "时,当我设置一个停止时

小于100(10个点),我的测试器会产生错误130

我不知道为什么它不能正常工作。

请回答!

 
6232 >> :

当使用你的 "e-SampleCase "专家顾问时,当设置停止时

小于100(10点),我的测试仪给出的错误是130。

停止工作很好,为什么?

延长BC分钟的走廊,以设置停靠点和外卖点

 
BARS писал(а)>>

扩大了DC最小走廊,以设置停止和接管

>>谢谢你!知道了。

 
6232 >> :

你好,伊戈尔!

当我使用你的专家顾问 "e-SampleCase "时,当我设置一个停止时

小于100(10个点),我的测试器会产生错误130。

我不知道为什么它不能正常工作。

>> 请给我一个答案。

这可能是因为引入了第五位数,在Alpari,他们说你必须将你的止损点增加10倍,因为你的100点变成了10点,因此在大多数货币对上都有错误...

 
stalkervr писал(а)>>

如果你不介意,请告诉我如何使用你的函数

确定是否存在未结头寸和数量,以及是否存在挂单和数量。

尤金,我发现你的问题有点多余,因为非零量 将自动意味着存在

看看这些功能。

也许,你可以为自己做一些有用的东西。