[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 470

 
hoz:

文档中说,SetIndexEmptyValue 函数是用来指定一个 "空 "值。也就是说,我们指定在哪个值上我们根本不需要画任何东西。在我们的案例中,这是非常方便的,因为信号并不是在每个柱子上都出现。它的工作原理如下。当你不需要在当前条形图上绘制箭头时,你可以给数据缓冲区的相应条目分配一个 "空 "值,在我们的例子中是0。

我不明白的事。如果某样东西被信号所吸引,那么没有信号就不会被吸引。那么一般来说,这个功能的目的是什么?


习惯上,计算机会明确表示没有价值。那么它似乎根本就不是零。想象一下,画一个缓冲区--这里有1.2903、1.2905、1.2904的数值......。然后突然变成了0。在这些迷雾中,指标线会 突然要潜入窗口以下!!。
 
hoz:

文档中说,SetIndexEmptyValue 函数是用来指定一个 "空 "值。也就是说,我们指定在哪个值上我们根本不需要画任何东西。在我们的案例中,这是非常方便的,因为信号并不是在每个柱子上都出现。它的工作原理如下。当你不需要在当前条形图上绘制箭头时,你可以给数据缓冲区的相应条目分配一个 "空 "值,在我们的例子中是0。

我不明白的事。如果某样东西被信号所吸引,那么没有信号就不会被吸引。那么一般来说,这个功能的目的是什么?

这个函数用一个空值EMPTY_VALUE= 0x7FFFFFFFF来填充数组(在本例中是指标缓冲区)。
 
drknn:


实际上,语言中有一种特殊类型的变量--颜色被称为。比如说。

双重维利奇纳。

MyLine。

维利奇纳=2.569。

MyLine=Red。


我是这样想的。
  OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),   NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, 00 FF33);  }
           
他应该怎么做,在里面写上颜色吗?
 
Dimka-novitsek:

我是这样想的 他应该在那里写什么,一种特殊的颜色,还是什么?

不,你可以简单地写红色,而不是00FF33,或者从网络颜色表中 的任何颜色--打开这个链接--有足够多的颜色,不需要使用十六进制代码。
 
机器人
//+------------------------------------------------------------------+
//|                                                     советник.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"


  extern double  lot=1;                          
  extern int taymfreym=0 ;                           
  extern double  stoplos=20 ;                          
  extern double  takeprofit=50 ; 
  extern double  magicnumber=350//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
            double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
            double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);
            int BUY=0,SELL=0;int ticket; 
            Print (  " strela1 " , strela1 , "   strela2  " , strela2  );
            
    
            
            for(int i=1; i<=OrdersTotal(); i++) {  
            if (OrderSelect(i-1,SELECT_BY_POS)==true) // Если есть следующий
        {                                       // Анализ ордеров:
         if (OrderSymbol()!=Symbol( ) )continue;      // Не наш фин. инструм
         if (OrderMagicNumber( ) !=magicnumber)continue;
         if (OrderType()==0){ BUY++; ticket=OrderTicket( );}
         if (OrderType()==1) {SELL++;ticket=OrderTicket( );}    } }
         
   if (strela1>strela2&&BUY==0&&SELL==0){               
            
           OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits), 
  NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }
           
           
   if (strela1<strela2&&BUY==0&&SELL==0){  
   
            OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits), 
  NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
            
            
  if (strela1>strela2&&BUY==0&&SELL!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_BUY, lot, Ask, 3, NormalizeDouble( Bid- (stoplos*Point),Digits),  
 NormalizeDouble( Ask+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE);  }         
      
  if (strela1<strela2&&SELL==0&&BUY!=0){ 
   OrderSelect(ticket, SELECT_BY_TICKET);
   OrderClose(  ticket , OrderLots( ) , OrderOpenPrice( ) , 3, CLR_NONE);                 
   OrderSend( NULL, OP_SELL, lot, Bid, 3, NormalizeDouble( Ask- (stoplos*Point),Digits),  
 NormalizeDouble( Bid+( takeprofit*Point),Digits), NULL, magicnumber, 0, CLR_NONE) ; }
      
            
            
//----
   return(0);
  }
//+------------------------------------------------------------------+
这是个地方
 double strela1 = iCustom(NULL, taymfreym, "индикатор", 0, 1);
 double strela2 = iCustom(NULL, taymfreym, "индикатор", 1, 1);

strela2不起作用,其值为-1。如果箭头是向上的,就执行任务,反之亦然。或者说我根本就没有写对!!。

我是第一次使用 这个iCustom。以这种方式比较 strela1和strela2是否正确?我得到什么样的价值--我的意思是,我得到它是

第一和第二缓冲区,但不会超过这个范围。

它是用什么来画箭头的?

 

指标

/*ДЕКОМПИЛ УДАЛЕН, ВАМ ПРЕДУПРЕЖДЕНИЕ*/

它到底是用什么来画箭头的?

 

"tralit "这个词是什么意思?

这句话的全文是这样的。

<Advisor>使用"Alligator"指标信号作为输入,将仓位移至Breakeven,并以设定的步骤进行拖曳

 
我不明白!我有一个人给我邮寄了一个指标。他是从哪里反编译出来的?是的,我不止一次看到过相当类似的指标。请把它们放回属于它们的地方!
 
是的,我看到里面有一条线。
 
Dimka-novitsek:
我不明白!我有一个人给我邮寄了一个指标。他是从哪里反编译出来的?是的,我不止一次看到过相当类似的指标。请把它们放回属于它们的地方!

反编译是盗窃程序代码的结果。你被送来了一件被盗物品。你不会再得到它了。你截图上的箭头是由指标绘制的,而不是你展示的专家顾问的代码。