雪崩 - 页 466

 
这是一个真正的insta中心,我不明白为什么我的地段在6.40后是102.40,在晚上我忘了关闭EA在早上被丢失。
 
baykanur:
这是一个真正的insta-center,我不明白为什么我的手在6.40后是102.40,在晚上我忘了关闭EA在早上耗尽
你必须看一下代码来找出原因。
 
baykanur:
而这是一个真正的insta中心,我不明白为什么我有很多6.40后是102.40过夜忘记关闭EA在早上的李子。

我有一种不好的感觉。你可以在代码中为交易设置一个时间限制。你可以对交易时间进行限制,这样就不会出现这种崩溃。在我看来,这是最简单的。一行条件+extern int,如果只是按小时来做限制。
 
Cmu4:

这是一种耻辱。你可以在代码中为交易设置一个时间限制。 你可以在代码中设置一个时间限制,这样就不会出现这种裂缝。 在我看来,这是最简单的。一行的条件+extern int,如果只按小时计算,我们做了限制。


在计算下一手的算法中(代码中)有一个错误。时间限制与它有什么关系 - 它可以在任何时候出现...我不知道这是怎么回事 - 在我的版本雪崩 - 优化参数后 - 通过时间,它变成了 "开始" - 在0点,"结束" - 在23小时,即,围绕时钟工作...而事实上,在夜里,欧罗巴克上有一些有趣的动作......。并可能在白天发生平...需要一个不同的方法...(见上面的帖子)...我认为用时间来限制(在这种情况下(与雪崩))猫头鹰的工作是不合适的......当然,是IMHO。

P.S. 在上面的截图中,6.4之后的交易量应该是12.8,而不是102.4手...- 这是程序中的一个错误。

 
Cmu4:

这是一种耻辱。你可以在你的代码中设置一个交易时间限制。这将不允许出现这种问题。在我看来,这是最简单的。一行条件+extern int,如果只是按小时来做限制。

对我来说,使用雪崩7效果最好,但不同的经纪公司则完全不同,如果他们有执行延迟,如Insta开始出现故障,即使有相同的走廊,结果也不同。

我在诺德有一个很好的工作日,它像时钟一样工作。

 
baykanur:

我不知道为什么我应该做一些限制性的事情,否则我的存款就会 被毁掉......

"雪崩7是我使用雪崩的最佳方式,我不明白为什么我在6.40后损失了很多,但我忘了 在早上关闭EA..." 如果你使用的是 "初始 "数据,这种下单量的增加和按时间限制的工作- 是彼此没有任何关系的事情...

Avalanche 7 - 这是你心中的选择吗?

//+------------------------------------------------------------------+
//|                                                  avalanche 7.mq4 |
//|                                                 George Tischenko |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "George Tischenko"

extern bool Monitor=true; //в тестере при выключенной визуализации отключать (тормозит)
extern int Distance=25,   //расстояние в пунктах от цены до первого открытия позиции
           MinProfit=5,   //минимальный профит в пунктах, если открытых ордеров более 1
           Slippage=3;
extern double Lot=0.1;

int Trade=0;
double BLot,StartPrice;              
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
  StartPrice=Bid;
  BLot=MarketInfo(Symbol(),15);      // MODE_LOTSIZE размер контракта в базовой валюте инструмента
//----
  if(Monitor==true)
    {
    int a,y;
    for(a=0,y=5;a<=3;a++)
      {
      string N=DoubleToStr(a,0);
  
      ObjectCreate(N,OBJ_LABEL,0,0,0,0,0);
      ObjectSet(N,OBJPROP_CORNER,3);
      ObjectSet(N,OBJPROP_XDISTANCE,5);
      ObjectSet(N,OBJPROP_YDISTANCE,y);
      y+=20;
      }  
    }
//----
  return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
  if(Monitor==true)
    {
    for(int a=0;a<=3;a++)
      {
      string N=DoubleToStr(a,0);
      ObjectDelete(N);
      } 
    }
//----
  return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
  int i;
//---- 
  if(OrdersTotal()==0)
    {
    RefreshRates();
    if((Ask-StartPrice>=Distance*Point && Trade==0) || Trade==1) 
      {
      OrderSend(Symbol(),OP_BUY,Lot,Ask,Slippage,0,0,"",1307,0,Blue);
      }
    if((StartPrice-Bid>=Distance*Point && Trade==0) || Trade==-1)  
      {
      OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippage,0,0,"",1307,0,Red);
      }
    }
  else //OrdersTotal()>0
    {//узнаем размер максимального лота, тип и цену открытия последнего активного ордера
    double lots=0, Type=-1, OpenPrice=0;
    for(i=0;i<OrdersTotal();i++)
      {//самый последний ордер имеет самый большой объем
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
        {
        if(OrderSymbol()==Symbol())
          {
          if(lots<OrderLots())
            {
            lots=OrderLots();
            Type=OrderType();
            OpenPrice=OrderOpenPrice();
            }
          }
        }
      }
      
     //возможно, ордера надо закрыть - проверим это:
    int C=0; //флаг закрытия всех позиций
    if(OrdersTotal()==1) //ЭТО ДЛЯ ПАР ТИПА XXX/USD
      {
      if(AccountProfit()>=BLot*Lot*Point*Distance) 
        {
        switch(Type)
          {
          case 0 : Trade=1; break;
          case 1 : Trade=-1;
          }
        C=1;
        }
      }
    else //OrdersTotal()>1
      {//лишь бы без убытка...
      if(AccountProfit()>=BLot*Lot*Point*MinProfit)
        {
        switch(Type)
          {
          case 0 : Trade=1; break;
          case 1 : Trade=-1;
          }
        C=1;
        }
      }
     
    switch(C)
      {
      case 0 : //закрываться рановато...
        {
        lots*=2; //опять Мартин :-(
        RefreshRates();
        switch(Type)
          {
          case 0 :
            {
            if(OpenPrice-Bid>=Point*Distance*2) 
              {if(OrderSend(Symbol(),OP_SELL,lots,Bid,Slippage,0,0,"",1307,0,Red)>0) return(0);}
            break;
            }
          case 1 :
            {
            if(Ask-OpenPrice>=Point*Distance*2)
              {if(OrderSend(Symbol(),OP_BUY,lots,Ask,Slippage,0,0,"",1307,0,Blue)>0) return(0);}
            }
          }
        break;
        }
      case 1 : //закрываем все позиции
        {
        while(OrdersTotal()>0)
          {
          int ticket_buy=0,  //тикет ордера BUY (не может быть=0)
              ticket_sell=0; //тикет ордера SELL (не может быть=0)
          for(i=0;i<OrdersTotal();i++)
            {
            if(OrderSelect(i,SELECT_BY_POS)==true)
              {
              if(OrderSymbol()==Symbol())
                {
                switch(OrderType())
                  {
                  case 0 : ticket_buy=OrderTicket(); break;
                  case 1 : ticket_sell=OrderTicket();
                  }
                }
              }
            }
          //проверка тикетов на некорректность:  
          bool OCB=ticket_buy>0 && ticket_sell>0;
          if(OCB) OrderCloseBy(ticket_buy,ticket_sell,White); // Цикл закрытия
          else
            {//закрываем оставшиеся одиночные ордера
            for(i=0;i<OrdersTotal();i++) //если total==0, цикл просто не сработает
              {//закрываем оставшиеся ордера
              if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
                {
                if(OrderSymbol()==Symbol())
                  {
                  RefreshRates();
                  switch(OrderType())
                    {
                    case 0 : 
                      {
                      while(!OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,White)) 
                        {
                        Sleep(10000);
                        RefreshRates();
                        } 
                      break;
                      }
                    case 1 : 
                      {
                      while(!OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,White)) 
                        {
                        Sleep(10000);
                        RefreshRates();
                        } 
                      }
                    }
                  }
                }
              }
            }
          }//end while 
        }
      }
    } 
//==== БЛОК МОНИТОРИНГА
  if(Monitor==true)
    {
    string str="Balance: "+DoubleToStr(AccountBalance(),2)+" $";
    ObjectSetText("0",str,10,"Arial Black",White);
    
    str="Profit: "+DoubleToStr(AccountProfit(),2)+" $";
    ObjectSetText("1",str,10,"Arial Black",Silver);
    
    str="Free Margine: "+DoubleToStr(AccountFreeMargin(),2)+" $";
    ObjectSetText("2",str,10,"Arial Black",Yellow);
    
    str="OrdersTotal: "+DoubleToStr(OrdersTotal(),0);
    ObjectSetText("3",str,10,"Arial Black",Aqua);
    }
//----
  return(0);
  }
//+------------------------------------------------------------------+

 
baykanur:

我的Avalanche 7的效果最好...

这个选项?

 
Roman.:

"而这是一个真正的insta cent我不明白为什么我的手在6.40后是102.40在晚上我忘了关闭专家顾问 在早上浪费了" - 基于 "初始 "你的数据"这样 "增加另一个订单的量和限制猫头鹰的工作时间- 是事情没有任何关系,彼此...

Avalanche 7--你指的是这个变体吗?

对我来说,它是5,时间框架是m1。

可以肯定的是,这与时间限制无关--它应该是通过抽签找到的,尽管我不确定DT是否与此无关,因为这种雪崩效应在其他账户上也有作用。

帐户,他们在一个星期内翻了一番

以下是当晚的报告

 

好一个主题。洗脑。

大家好。

 
baykanur:

是的,这个变体是唯一的区别,在我的距离现在是5和时期的M1和错误出现在延迟执行的DT和费用的时间限制

我认为这与时限无关--是时候在这批货中找到一个错误了,尽管我不确定这是否与经销商无关。

帐户,他们在一个星期内翻了一番

以下是当晚的报告


我也有过类似的情况。经纪公司开业时的规模比最大限度要大得多。我不再在那家经纪公司进行交易了。

我不认为我们找到了方案中的错误,尽管我知道是什么问题(由于延迟,订单被重新计算了好几次,批量变得非常大)--经纪公司贪图钱财。