[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 5. - 页 113

 
r772ra:

循环浏览职位

非常感谢你,我现在将尝试所有的东西!谢谢你!"。
 
r772ra:

循环浏览职位

试过了,没有用。所以是的,我可以找到它。但问题是,我得到以下情况。

例如,在01.01我开了一个头寸,但条件在02.01才触发。也就是说,从负方订单的开盘价来看,价格在第二天已经超过了50点。如果条件得到满足,该动作将被执行。而行动是减少交易的1/3,即减少交易量的3倍。 但行动将发挥作用,直到该手完全关闭。我们可以设置一些标志。 如果b=0,那么行动就到位了。而在行动结束时b=1。如果我们在一天结束时不使旗帜无效,交易将被执行一次,当我们通过历史测试时,就这样了。如果我们将标志归零,那么只要标志被归零,行动就会再次开始减少订单,直到完全关闭。我以为可以比较最初开仓的交易量和后来改变的交易量,但比较时它们总是一样的。如果我们减少手数,账户中的资金量也会减少,因此初始量将被重新计算。即也不是这样,我认为是第三天。我没有任何线索,你有什么其他想法吗?

 
Boneshapper:

下午好!

尊敬的专业人士,请您为我提供建议。

如果价格超过该订单的开仓价50点,则必须修改该订单。

OrderSelect(0, SELECT_BY_POS,MODE_TRADES)。

double OPEN =OrderOpenPrice();
double maximus = OPEN + 0.00500;
提醒("maximus = ",maximus)。
double minimus = OPEN - 0.00500;
RefreshRates()。//刷新数据。
timecur = TimeToStr(TimeCurrent(),TIME_SECONDS); //计算出HH:MM格式的当前时间。
如果((timecur > "00:00:00") && (timecur < "22:58:00") && (Deal_s == 1) && (Deal_bb == 0)&& (Bid > maximus)
{
OrderSelect(0, SELECT_BY_POS,MODE_TRADES)。
Lootup = OrderLots () * 0.34;
Lootdown = OrderLots () * 0.34;
OrderClose(OrderTicket(), Lootdown, Ask, 10, CLR_NONE)。
警告(GetLastError())。
Deal_bb = 1;
}

如果它发生在白天,我能够做到这一点。请教,如何检查开盘价+50P是否被每手的价格所控制,直到几天后关闭?

你为一个字符串计时,然后按字符串测量 - original!!!!
不需要发明任何东西:首先你检查时间分辨率,然后只需跟踪订单。在这里这里 可以找到两者的成熟的解决方案。

 
Boneshapper:

试过了,没有用。它确实有效,但问题是:我找不到它。但问题是,我得到以下情况。

例如,01.01我开了一笔交易,但条件只触发了02.01。也就是说,从负方的权证开仓价格来看,第二天的价格已经超过了50点。如果条件得到满足,该动作将被执行。而行动是减少交易的1/3,即减少交易量的3倍。 但行动将发挥作用,直到该手完全关闭。我们可以设置一些标志。 如果b=0,那么就有一个动作。而在行动结束时b=1。如果我们在一天结束时不使旗帜无效,交易将被执行一次,当我们通过历史测试时,就这样了。如果我们将标志归零,那么只要标志被归零,行动就会再次开始减少订单,直到完全关闭。我以为可以比较最初开仓的交易量和后来改变的交易量,但比较时它们总是一样的。如果我们减少手数,账户中的资金量也会减少,因此初始量将被重新计算。即也不是这样,我认为是第三天。我没有任何线索,你有什么其他想法吗?

日子和它有什么关系?你只要写下你想要的东西,就会有人告诉你算法。在我看来,你不应该检查天数,而应该检查订单的利润/亏损,然后从中选择。50(或任何)点对你来说很重要...

 
TarasBY:

你把时间放在弦上,然后用弦来测量它--这就是原创!
你不需要发明任何东西:首先你检查时间分辨率,然后你简单地跟踪订单。在这里这里 可以找到两者的成熟的解决方案。

非常感谢你的答复,你给了我一个链接,正是我需要的东西。我现在就去试试,但我认为会有效果。

对于这些错误我很抱歉,但我是编程新手,还不是很擅长。

 
artmedia70:

日子有什么关系呢?你只要写下你想要的东西,他们就会告诉你算法。在我看来,你不应该检查天数,而应该检查订单的利润/亏损,并依赖于它,因为50(或任何)点对你很重要...

是的,你是对的。我的利润/亏损是我所依赖的。TarasBY指出的正是我需要的东西。我现在就去看看。

谢谢您的关注!

 

请告诉我,是否有一个搜索分形的Kim功能?

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. 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);
}
我如何写出同样的函数来计算某一时期的分形数?
 
berezhnuy:

你能告诉我是否有一个寻找分形的Kim函数?

如何写出同样的函数来计算给定周期内的分形数?

情况是这样的。

void fGet_ExtremumsZZPrice (string fs_Symbol,           // инструмент
                            int fi_TF,                  // таймфрейм
                            datetime fdt_TimeControl,   // время, до которого ищем экстремумы
                            int fi_ExtDepth = 12,       // ExtDepth         
                            int fi_ExtDeviation = 5,    // ExtDeviation
                            int fi_ExtBackstep = 3)     // ExtBackstep
{
    double ld_Value, lda_Extremum[];
    int    li_size = iBarShift (fs_Symbol, fi_TF, fdt_TimeControl), li_IND = 0;
//---- 
    for (int li_Bar = 1; li_Bar < li_size; li_Bar++)
    {
        ld_Value = iCustom (fs_Symbol, fi_TF, "ZigZag", fi_ExtDepth, fi_ExtDeviation, fi_ExtBackstep, 0, li_Bar);
        if (ld_Value != 0.)
        {
            ArrayResize (lda_Extremum, li_IND + 1);
            lda_Extremum[li_IND] = ld_Value;
            li_IND++;
        }
    }
//---- 
}

当前时间 到Time_Control的ZigZag极值被收集在一个数组中。

 
你能不能建议一个函数来检查新分形或旧分形?
 
berezhnuy:
你能不能建议一个函数来检查新分形或旧分形?

在这里,我去了 "有用的功能 "这一主题,并给你带来了 "银盘子"。

//+----------------------------------------------------------------------------+
//| Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                    |
//+----------------------------------------------------------------------------+
//| Версия   : 07.10.2006                                                      |
//| Описание : Поиск ближайшего фрактала.                                      |
//+----------------------------------------------------------------------------+
//| Параметры:                                                                 |
//|   sy - наименование инструмента     (NULL - текущий символ)                |
//|   tf - таймфрейм                    (  0  - текущий ТФ)                    |
//|   mode - тип фрактала               (MODE_LOWER|MODE_UPPER)                |
//+----------------------------------------------------------------------------+
double FindNearFractal(string sy="0", int tf=0, int mode=MODE_LOWER) {
  if (sy=="" || sy=="0") sy=Symbol();
  double f=0;
  int d=MarketInfo(sy, MODE_DIGITS), s;
  if (d==0) if (StringFind(sy, "JPY")<0) d=4; else d=2;

  for (s=2; s<100; s++) {
    f=iFractals(sy, tf, mode, s);
    if (f!=0) return(NormalizeDouble(f, d));
  }
  Print("FindNearFractal(): Фрактал не найден");
  return(0);
}
健康地生活和使用它!有各种各样的人!你不必问,你不必等待,你只需拿着它并使用它!"。