Aiuto per la codifica - pagina 731

 

Caro mladen,

Allegato ea si blocca quando si salvano le impostazioni e devo riavviare mt4!

C'è un problema con i codici?

Grazie.

 
oguz:

Caro mladen,

Allegato ea si blocca quando si salvano le impostazioni e devo riavviare mt4!

C'è un problema con i codici?

Grazie.

Nessun problema apparente che potrebbe causare questo
 
mladen:
Nessun problema apparente che potrebbe causare questo

Grazie per il vostro interesse.

@mladen,

Allegato ea molto redditizio. Ma ha un sacco di errori sull'ultimo mt4.

Potresti per favore correggerli?

Grazie.

File:
 
oguz:

Grazie per il vostro interesse.

@mladen,

Allegato ea molto redditizio. Ma ha un sacco di errori sull'ultimo mt4.

Potresti per favore correggerli?

Grazie.

Provalo (lo stesso vale anche per questo: non so se funzionerà a causa di alcuni avvertimenti rimasti nel codice)
File:
 
mladen:
Provalo (lo stesso vale anche per questo: non so se funzionerà a causa di alcuni avvertimenti rimasti nel codice)

Lo testerò :)

Grazie per quello che avete fatto.

 

Ciao,

Sto cercando di ottenere il segnale da gann hilo ma non funziona.

per esempio:
Ho impostato l'hilo gan = 30 minuti e 4 smoothed , perché voglio vedere la direzione del commercio,

ma non sto ottenendo correttamente il segnale di acquisto o di vendita dall'indicatore all'EA.

il"Hilo_Handle" non ottiene il valore corretto ;-(

//+------------------------------------------------------------------+
//|                                                      ea-hilo.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//------- input -----------------------------------------------------+
input ushort                           Hilo_Periodo=4;
input ENUM_MA_METHOD                   Hilo_Metodo=MODE_SMA;

//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int    Shift=1;    //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
     {
      return(false);
     }

     //---- get Hilo Moving Average
     Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
     if(Hilo_Handle!=INVALID_HANDLE)
        ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);  
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
        if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
            CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
            //CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
            ) return;
            
         //Hilo Buy
         if (Hilo_cl[0]>Hilo_Handle) {
         Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
         return;
         }
         else
         //Hilo Sell
         if (Hilo_cl[0]<Hilo_Handle) {
         Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
         return;
         }
         Comment ("NO SIGNAL");
  }
//+------------------------------------------------------------------+
 

Carissimo MLADEN

Qui c'è un problema di errore, e può essere rimosso da tutti i 2 modi ..... aggiungendo "t" prima (tdelete) e aggiungendo "pendingorder" (deletependingorder) dopo la cancellazione ...... la mia domanda è, qual è il modo migliore?

La vostra guida e opinione è più autentica.

saluti


 
baraozemo:

Ciao,

Sto cercando di ottenere il segnale da gann hilo ma non funziona.

per esempio:
Ho impostato l'hilo gan = 30 minuti e 4 smoothed , perché voglio vedere la direzione del commercio,

ma non sto ottenendo correttamente il segnale di acquisto o di vendita dall'indicatore all'EA.

il"Hilo_Handle" non ottiene il valore corretto ;-(

//+------------------------------------------------------------------+
//|                                                      ea-hilo.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//------- input -----------------------------------------------------+
input ushort                           Hilo_Periodo=4;
input ENUM_MA_METHOD                   Hilo_Metodo=MODE_SMA;

//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int    Shift=1;    //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
     {
      return(false);
     }

     //---- get Hilo Moving Average
     Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
     if(Hilo_Handle!=INVALID_HANDLE)
        ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);  
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
        if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
            CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
            //CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
            ) return;
            
         //Hilo Buy
         if (Hilo_cl[0]>Hilo_Handle) {
         Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
         return;
         }
         else
         //Hilo Sell
         if (Hilo_cl[0]<Hilo_Handle) {
         Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
         return;
         }
         Comment ("NO SIGNAL");
  }
//+------------------------------------------------------------------+
Perché stai confrontando il valore con un handle? La maniglia è una maniglia - non può essere paragonata al valore
 
mntiwana:

Carissimo MLADEN

Qui c'è un problema di errore, e può essere rimosso da tutti i 2 modi ..... aggiungendo "t" prima (tdelete) e aggiungendo "pendingorder" (deletependingorder) dopo la cancellazione ...... la mia domanda è, qual è il modo migliore?

La vostra guida e opinione è più autentica.

saluti


delete è una parola riservata nella nuova metatrader 4. Se una funzione, una variabile o qualsiasi parte di codice, eccetto il normale operatore di cancellazione, usa quel nome, deve essere rinominato - aggiungere "t" è solo una soluzione rapida, ma qualsiasi nome eccetto "delete" andrà bene
 
mladen:
delete è una parola riservata nel nuovo metatrader 4. Se una funzione, una variabile o qualsiasi parte di codice, eccetto il normale operatore di cancellazione, usa quel nome, deve essere rinominato - aggiungere "t" è solo una soluzione rapida, ma qualsiasi nome tranne "delete" andrà bene

Carissimo MLADEN

Grazie per la guida help.it è chiaro ora, grazie.

e come rimuoviamo questo tipo di avvertimenti? ..... e se lasciamo questi avvertimenti così come sono, hanno effetto sulla funzionalità del codice.

"controlla la precedenza dell'operatore per possibili errori; usa le parentesi per chiarire la precedenza"

cosa aggiungere e o fare con ?

saluti


Motivazione: