KimIV的有用功能 - 页 48

 

也就是说,增加一个常数并不影响结果

我想做一个快速指标,但没有成功(

 
Prival писал (а)>>

不信任是一个很好的经验法则。在任何数学软件包中都可以查到。我们将公布结果。我现在就在MathCade里做。

很好,但在表示不相信之前,你必须检查。>> 打扰一下。

 
TheXpert писал (а)>>

一个很好的例子,但在表示不相信之前,你必须要检查一下。请您原谅。

如果你有任何疑问,请表达出来,一定要这样做。毕竟,你不想再去找他们,你不想再去寻找错误。你需要确定一切都做得很正确。但同样的,没有任何保证http://www.citforum.ru/programming/digest/scofdebug/。

 

下午好!事实证明,分形函数在整个分支中已经脱节。

我们已经找到了其中的两个人。

一个返回最后一个分形之间的条数(BarsBetweenLastFractals(string sy="", int tf=0))。

另一个是最后一个分形的价格水平(第37页)。

为了以和谐的方式结束分形主题,我们还需要一个函数。它返回最后一个分形的顶部的条形号码!

伊戈尔!如果这对你来说不是太困难的话。你能产生并显示这样的功能吗?

 

函数ExistOrdersByPrice()。

返回一个标志,表明在给定的设定价格下存在一个订单。- 秩序存在(设定),- 秩序不存在(未设定)。你可以用函数参数限制要检查的订单列表。

  • sy- 市场工具的名称。如果给出这个参数,函数将只检查指定工具的订单。NULL 表示当前的仪器,""(默认)表示任何仪器。
  • op- 交易的类型,挂单的类型。有效值:OP_BUYLIMITOP_BUYSTOPOP_SELLLIMITOP_SELLSTOP-1。默认值为-1 表示任何订单类型。
  • mn- 订单标识符(MagicNumber)。默认值为-1 意味着任何MagicNumber。
  • pp- 设置订单的价格水平。默认值为-1 是任何价格。
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 30.07.2008                                                     |
//|  Описание : Возвращает флаг существования ордеров по цене установки        |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//|    pp - цена                       (-1   - любая цена)                     |
//+----------------------------------------------------------------------------+
bool ExistOrdersByPrice(string sy="", int op=-1, int mn=-1, double pp=-1) {
  int d, i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if ((OrderSymbol()==sy || sy=="") && (op<0 || OrderType()==op)) {
        if (OrderType()>1 && OrderType()<6) {
          d=MarketInfo(OrderSymbol(), MODE_DIGITS);
          pp=NormalizeDouble(pp, d);
          if (pp<0 || pp==NormalizeDouble(OrderOpenPrice(), d)) {
            if (mn<0 || OrderMagicNumber()==mn) return(True);
          }
        }
      }
    }
  }
  return(False);
}
 

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

  • 按设置价格检查任何订单的可用性 1.4
    Message(IIFs(ExistOrdersByPrice("", -1, -1, 1.4), "Есть", "Нет"));
  • 检查当前图表工具的设置价格1.5的任何订单
    Message(IIFs(ExistOrdersByPrice(NULL, -1, -1, 1.5), "Есть", "Нет"));
  • 检查是否有任何工具的设置价格为1.5的买入限价订单
    Message(IIFs(ExistOrdersByPrice("", OP_BUYLIMIT, -1, 1.5), "Есть", "Нет"));
  • 检查欧元兑美元在设置价格1.4的卖出止损单的存在,神奇数字123456。
    Message(IIFs(ExistOrdersByPrice("EURUSD", OP_SELLSTOP, 123456, 1.4), "Есть", "Нет"));
  • 在美元兑日元的设置价格106和神奇数字987处检查是否存在任何订单
    Message(IIFs(ExistOrdersByPrice("USDJPY", -1, 987, 106), "Есть", "Нет"));

P.S. 附上一个测试ExistOrdersByPrice()函数的脚本。

附加的文件:
 
rid писал (а)>>
为了以和谐的方式 "结束 "分形主题,需要另一个功能。返回最后一个分形的顶部的条数!

2008年8月13日,我发布了GetFractalBar 函数(第41页)。

 

b-Orders 库已经发布。

 
KimIV писал (а)>>

2008年8月13日,我发布了GetFractalBar 函数(第41页)

是的,确实如此。>> 谢谢你!

 
KimIV писал (а)>>

b-Orders 库已经发布。

一个非常有用的图书馆!我代表这里的所有人 "非常感谢!"