Wenn Sie einen Berater schreiben, gibt es ein Problem. - Seite 3

 
KONDOR >> :

>> korrigiert auf Seite 2.

Es hat nicht geholfen((.

 
Run >> :

wie für sigzag, versuchen Sie den folgenden Code in der Tester mit Geschwindigkeit auf Minimum und werfen den Indikator auf dem Chart und verwenden Sie F12, um zu sehen, was passiert mit den Ziffern

in der oberen linken Ecke, ich hoffe, Sie verstehen, worauf ich hinaus will

Jepp... alle drei Puffer sind Null:

0

0

0


Obwohl Print("ZigZag = ", ZZ_1); gibt normale Preiswerte aus.

 

Noterday писал(а) >>

int start()
  {
//----
      int bar=-1;   
   for(int i=0; i<100; i++) {      
      if( zz( i)!=0){ bar= i;break;}
                          }
 double Lot=0.1;                      
 double  spred=MarketInfo(Symbol(),MODE_SPREAD)*Point;
    
 if( bar==1)   {      
   if( zz( bar)==High[ bar] && CalculateOrders(Symbol(),1)==0) 
   OrderSend(Symbol(),OP_SELL, Lot,Bid,10,High[ bar]+ spred +(10*Point),Ask-(10*Point),"SELL",0,0,Red ); else
   
   if( zz( bar)==Low [ bar] && CalculateOrders(Symbol(),0)==0) 
   OrderSend(Symbol(),OP_BUY, Lot,Ask,10,Low [ bar]       -(10*Point),Bid+(10*Point),"BUY", 0,0,Blue);                
              }
    
//----
   return(0);
  }

//+------------------------------------------------------------------+

 
int CalculateOrders(string simbol,int type) {   int count=0;

   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect( i, SELECT_BY_POS, MODE_TRADES)==false) break;
      if(OrderSymbol()== simbol )//&& OrderMagicNumber()==mn)
        {
         if(OrderType()== type)  count++;
        
        }
     }
     
 return( count);
  }
  
 //-------------------- фнкция зигизага --------------         
   double zz(int i){
   double res=0;
   res=iCustom(NULL, 0, "ZigZag", 12, 5, 3, 0, i);
   return( res);    }


Bei mir funktioniert alles! EURUSD


 

Was meinen Sie damit, dass es Null ist? Warum wird es dann bei mir angezeigt?

 
KONDOR писал(а) >>

Sie müssen also an Ihren Füßen arbeiten.

Fehler 130 - Falsche Haltestellen. Aus der Beispieldokumentation können wir ersehen:

ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-25*Point,Ask+25*Point, "Mein Auftrag #"+Zähler,16384,0,Green);

- Kaufstopps werden in Ask gesetzt. Sie:

OrderSend(Symbol(),OP_BUY, Lot(),Ask,10,Low [ bar] -(10*Point),B i d+(10*Point),"BUY", 0,0,Blue);

- hält für BUY in B i d.

 
hope >> :

Fehler 130 - Falsche Haltestellen. Aus der Beispieldokumentation können wir ersehen:

ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-25*Point,Ask+25*Point, "Meine Order #"+Zähler,16384,0,Green);

- Kaufstopps werden in Ask gesetzt. Sie:

OrderSend(Symbol(),OP_BUY, Lot(),Ask,10,Low [ bar] -(10*Point),B i d+(10*Point),"BUY", 0,0,Blue);

- Stopps für den Kauf in B i d.

aber bei 200 Pips Stop macht es keinen Unterschied :)

 
KONDOR >> :

Bei mir funktioniert alles! EURUSD


Und ich habe einen Ordersend-Fehler von 130 :))))))))))))))))))))))

 
Run >> :

>> Was meinen Sie damit, dass es Null ist? Warum funktioniert es dann bei mir?

Genau das sage ich auch! Kann es etwas mit meinen Anführungszeichen oder meinem Terminal zu tun haben?

 
Ja, das ist sehr seltsam. Wahrscheinlich stimmt etwas mit dem Terminal nicht.
 
Neuinstallation von MT :)
Grund der Beschwerde: