[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 252

 

drknn,这是对订单数量的限制吗?

int SchBuy(int MAGIC){
  string SMB=Symbol();
  int SchBuy=0;
  int i;
  for ( i=OrdersTotal()-1; i>=0; i--) {
    if (!OrderSelect( i, SELECT_BY_POS, MODE_TRADES)) { WriteError( i);}
    else {
      if(OrderSymbol()!= SMB || OrderMagicNumber()!= MAGIC){ continue;}
      if(OrderType()==OP_BUY){ 
        SchBuy++;
      }  
    }
  }
  return( SchBuy);
}                  
//==================================================================================================


//=========== SchSell()  ===============================
//  Функция возвращает количество Sell-ордеров
//  SchSell  - счётчик Sell ордеров
//-----------------------------------------------------------
int SchSell(int MAGIC){
  string SMB=Symbol();
  int SchSell=0;
  int i;
  for ( i=OrdersTotal()-1; i>=0; i--){
    if (!OrderSelect( i, SELECT_BY_POS, MODE_TRADES)) { WriteError( i);}
    else {
      if(OrderSymbol()!= SMB || OrderMagicNumber()!= MAGIC){ continue;} 
      if(OrderType()==OP_SELL){
        SchSell++;
      }
    }
  }
 return( SchSell);     
}                  
 
IlyaA >> :


嘿,伙计,你能不能像这样说话,或者像这样说话 :)>> 我打破了我的眼睛。:)

:-))是的,我可以喜欢你,但我不认为每个人都可以喜欢我们,比...... ya dolgen pusat na translute, tak na rabote gde rabotayu vse klavu s Uspanskoj raskladkoj.兹事体大。

 
Ibiss >> :

drknn,这是对订单数量的限制吗?



好了,一个交易信号来了。比方说,有一个信号进来,要开一个买入订单。在我们打开它之前,我们重新计算我们的货币对的买单。如果没有,我们就开一个订单。如果至少有一个订单,那么第二个买入订单将不会在同一信号上打开。

这两个子程序只是订单计数器。

顺便说一下,使用计数器限制单个蜡烛图上的订单,并不是避免单个蜡烛图上订单成堆的唯一方法。

 

我在编译过程中得到一个错误。

WriteError' -函数 未被定义

也许'WriteError'应该在全局变量中声明,我还不明白)

谢谢)


 
昨天我读了 "Gap 1_500或如何甩掉一个DC",我也产生了类似的想法。简而言之。如果我们 在两个方向的相关度很高的工具(系数=>-1和1)上建仓,会怎么样?第一个工具的损失将由第二个工具的利润来弥补,可能还有一些面包和黄油。但有些东西告诉我,这个想法并不新鲜。请评论一下。
 

我写了一个指标,它以直方图B的形式显示高低值,如果该值高于前者--绿色,低于后者--红色。但该指标没有在热力中显示,错误在哪里?

该指标的代码。

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red

int BarsCount = 10000;

//---- buffers
double buf_1[], buf_2[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
    SetIndexStyle(0,DRAW_HISTOGRAM);
    SetIndexBuffer(0, buf_1);
    SetIndexStyle(1,DRAW_HISTOGRAM);
    SetIndexBuffer(1, buf_2);
    //----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
int i, HL_0, HL_1;
//----
   int limit = BarsCount;
    if ( limit > Bars)
        limit = Bars;
        
   for ( i = limit; 0 <= i; i--) {

        HL_0 = High[ i]-Low[ i];
        HL_1 = High[ i-1]-Low[ i-1];
        
        if( HL_0> HL_1) buf_1[ i] = HL_0;
        if( HL_0< HL_1) buf_2[ i] = HL_0;
        }
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
Ibiss >> :

我在编译过程中得到一个错误。

WriteError' - 函数未被定义

也许'WriteError'应该定义在全局变量中? 我还不明白)

谢谢)



这就对了,你没有WriteError(i)函数。这是我个人定制的错误处理函数
 
为什么?Sleep()函数 在测试器中不起作用?
 
AndBar писал(а)>>

:-))是的,我可以喜欢你,但我不认为每个人都可以喜欢我们,比...... ya dolgen pusat na translute, tak na rabote gde rabotayu vse klavu s Uspanskoj raskladkoj.兹事体大。

你是如何看待MQL5的?

>>这个主题将帮助你。 所有的变体都可以在这里找到。

 
RomanS >> :
为什么?Sleep()函数在测试器中不起作用?

如果我没记错的话,我在什么地方读到过,它不起作用。