[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 361

 
come ottimizzare un parametro se è all'interno di una funzione utente?
 

Cosa significa ottimizzare? Insieme al robot nel tester, ottimizzare.

Potresti dirmi cosa '(' - tipi incompatibili C:\Documents and Settings\User\My Documents\FxClub\TeleTRADE\experts\Constructor.mq4 (68, 39)
relativo return(errorcomment);?

 
lottamer:
come ottimizzare un parametro se è all'interno di una funzione utente?

Mettilo in extern
 

Sto cercando di compilare il codice, che è stato gentilmente suggerito da FAQ.

Ma il compilatore resiste e chiede un punto e virgola dopo l'operatore di assegnazione (evidenziato in giallo).

'bool' - punto e virgola previsto C:\File di programma\Alpari NZ MT4\expertsGRA\AL-1.mq4 (5, 3)

Ma li ho lì .... e continua a chiedere, chiedere, chiedere...... e chiedere....

Mi dica cosa intende?

GRAZIE.

  int start()
  
  bool have = true ;
        
  for(int i=0;i<10;i++)
  {

   if(Low[i]<=Low[i+1])
   {have=false; 
   break;} 

} 

if(have == true )
{

OrderSend(Symbol(),OP_SELL,0.1,Bid,1,Ask+1500*Point,Ask-1510*Point,"jfh",123 );// действия если условие соблюдено 

}
else
{

 return(0);
}
 

Mi sono imbattuto in questo in uno dei codici:

if (StringSubstr(AccountCurrency(), 0, 3) == "JPY") 
    {
      ld_24 = MarketInfo("USDJPY" + StringSubstr(Symb, 6), MODE_BID);
      if (ld_24 > 0.1) ld_16 = ld_24;
      else ld_16 = 82;
    }

Potete dirmi a cosa serve questo? - Suppongo che dal momento che menziona la valuta del conto, ci dovrebbe essere un fattore di conversione nell'altra valuta. Ma... perché è fisso? - Da cosa dipende questo coefficiente? - In questo caso il numero è 82.

E questa linea sembra interessante - il suo significato non lo capisco affatto:

MarketInfo("USDJPY" + StringSubstr(Symb, 6), MODE_BID)

perché se si aggiunge "EURUSD" a "USDJPY", per esempio, ma per la sesta lettera, si ottiene zero - allora perché aggiungerla del tutto? Hmmm...

Questo è un po' incomprensibile per me, ma per esperienza vorrei capire il principio della conversione da una valuta all'altra. E penso che se la gente lo usa (nel mio studio non ho conti non in dollari), non è per stupidità. Significa che ha senso.

Grazie per il chiarimento! Penso che sarà interessante non solo per me. : ))

 

Salve. Ho scritto un semplice EA (cercando di impararlo da solo). Il robot apre solo scambi per vendere, ma non vuole comprare. Capisco di non aver scritto correttamente le condizioni di acquisto o di non averle divise correttamente. Sto chiedendo aiuto. Ecco qui:

extern int tp=100;

extern int sl=100;

extern int H=14;

extern int M=00;

doppio ma1, ma2;

int start()

{

ma1=iMA (NULL,0,18,0,MODE_SMA,PRICE_CLOSE,0);

ma2=iMA (NULL,0,36,0,MODE_SMA,PRICE_CLOSE,0);

if (OrdersTotal ()==0 && iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)<iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) && ma1<ma2)

OrderSend ("EURUSD", OP_SELL,0.1,Bid,0,Ask+sl*Point,Ask-tp*Point,",123,Red);

if (OrdersTotal ()==0 && iStochastic (NULL,0,50,30,3,0,1,MODE_MAIN,4)>iStochastic (NULL,0,50,30,3,0,1,MODE_SIGNAL,4) && ma1>ma2)

OrderSend ("EURUSD", OP_BUY,0.1,Ask,0,Bid+sl*Point,Bid-tp*Point,",123,Red);

}

ritorno (0);

 
r772ra:

Mettilo in extern


Come fare?

La funzione modifica l'ordine impostando stop e takei. qui devono essere ottimizzati.

 
solnce600:

Sto cercando di compilare il codice, che mi è stato gentilmente suggerito da FAQ.

Ma il compilatore resiste e chiede un punto e virgola dopo l'operatore di assegnazione (evidenziato in giallo).

'bool' - punto e virgola previsto C:\File di programma\Alpari NZ MT4\expertsGRA\AL-1.mq4 (5, 3)

Ma li ho lì .... e continua a chiedere, chiedere, chiedere...... e chiedere....

Mi dica cosa intende?

GRAZIE.

In alternativa, il punto e virgola appena sopra il codice da qualche altra parte non è stato messo. Il compilatore dice solo che manca da qualche parte fino a questo punto.

E questo codice sembra avere tutta la punteggiatura corretta.

 
Chiripaha:

In alternativa, manca un punto e virgola da qualche parte nel codice. Il compilatore dice solo che manca un punto e virgola da qualche parte fino a questo punto.

Ma questo codice sembra avere tutta la punteggiatura corretta.


E sopra c'è solo START e nient'altro.
  int start()
  
  bool have = true;
  {
  for(int i=0;i<10;i++)
  {

   if(Low[i]<=Low[i+1])
   {
   have=false; 
   break;
   } 

} 

if(have )
{

OrderSend(Symbol(),OP_SELL,0.1,Bid,1,Ask+1500*Point,Ask-1510*Point,"jfh",123 );// действия если условие соблюдено 

}
else
{

 return(0);
}
 
lottamer:


Come si può fare?

la funzione modifica l'ordine impostando gli stop e i takeover. quindi devono essere ottimizzati.


Beh, esattamente nel codice di Pr0t0tip (beh, e nickname - mi sono stancato di riscrivere : )) ) Queste variabili extern int sl=100; (ecc.) sono mappate. Quindi è necessario dichiarare una variabile, poi apparirà nelle impostazioni del gufo, quindi il suo valore può essere cambiato e ottimizzato.
Motivazione: