Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1071

 
Igor Makanu:

Volevo distribuire le classi su 2 inludi, ma non riesco a sbarazzarmi del problema di usareenum in entrambi i file .mqh

c'è il file 1.mqh:

e il file 2.mqh:

Quando lo collego al codice principale, ottengo un errore

enumerazione già definita 2.mqh

vedere la dichiarazione precedente di'ENUM_DEAL_TYPE'.

Per quanto ho capito la direttiva "Compilazione condizionale (#ifdef, #ifndef, #else, #endif)" è necessaria - non ho mai avuto esperienza qui, va difficile ((.

Puoi mettere tutti gli enum in un .mqh separato e collegarlo a tutti gli inludi necessari e all'altro codice.

 
Alexey Viktorov:

Puoi mettere tutti gli enum in un .mqh separato e collegarlo a tutti gli inludi necessari e all'altro codice.

Lo so, non voglio includere l'intero file a causa di un enum, e nelle variabili di input uso lo stesso enum, in generale, non è ancora conveniente

Ci deve essere qualcosa di simile nella libreria standard - come usare la compilazione condizionale, non voglio guardare attraverso tutti i file, quindi spero in un aiuto

 
Igor Makanu:

Lo so, non voglio includere l'intero file a causa di un enum, e nelle variabili di input uso lo stesso enum, in generale, non è ancora conveniente

Molto probabilmente ci dovrebbe essere qualcosa di simile nella libreria standard - come usare la compilazione condizionale, non voglio guardare attraverso tutti i file, quindi spero in un aiuto

La logica è semplice: se non impostato - impostato. Ma dovrete scriverlo in ogni file.
 
Artyom Trishkin:
La logica è semplice: se non specificato - specificare. Ma dovremo prescriverlo in ogni dossier.

Funziona con #define, senza problemi:

#ifndef  EA_Slippage 
   #define  EA_Slippage  30 
#endif

ma con i tipi non vuole lavorare, come opzione per scrivere qualcosa con define - #ifndef nel corpo di cui qualcosa da definire ... Non so come, non l'ho mai usato, ecco perché sto chiedendo come

 
Igor Makanu:

Lo so, non voglio includere l'intero file a causa di un enum, e nelle variabili di input uso lo stesso enum, in generale, non è ancora conveniente

Probabilmente ci dovrebbe essere qualcosa di simile nella libreria standard - come usare la compilazione condizionale, non voglio guardare attraverso tutti i file, quindi spero in un aiuto

Non è che sto portando dei sacchi.

 
Alexey Viktorov:

Beh, non è come trasportare sacchi.

se tutto fosse misurato in borse....

L'ho fatto, ho bisogno di scrivere una tale espressione all'inizio di ogni inluder e nel programma principale:

#ifndef  ENUMDEALTYPE 
   #define  ENUMDEALTYPE
   enum        ENUM_DEALTYPE{NONE,BUY,SELL};
#endif

allora l'ordine dei file non ha importanza e tutto si compila senza problemi.

 
Igor Makanu:

se tutto fosse misurato in borse....

L'ho fatto, ho bisogno di scrivere una tale espressione all'inizio di ogni inluder e nel programma principale:

allora l'ordine dei file è irrilevante e tutto si compila senza problemi

Ecco di cosa sto parlando.
 

Ciao!

I 12 grafici in MT5 non riflettono (non visualizzano) gli oggetti dell'affare nel normale trading automatico,

Con scambi riflessi nella sezione "Trade". Vorrei capire la ragione di tali grafici, per favore illuminatemi?

LO APPREZZEREI MOLTO.

 
akarustam:

Ciao!

I 12 grafici in MT5 non riflettono (non visualizzano) gli oggetti dell'affare nel normale trading automatico,

Con scambi riflessi nella sezione "Trade". Vorrei capire la ragione di tali grafici, per favore illuminatemi?

GRAZIE.

Controlla le impostazioni nel terminale: Impostazioni - Trading
  • Mostra le operazioni sul grafico in tempo reale- se questa opzione è abilitata, tutte le operazioni effettuate dal trader saranno automaticamente segnate sul grafico con le icone corrispondentiAcquisto di(operazione di acquisto) ePer la vendita(operazione di vendita). Quando si posiziona il cursore del mouse su tale icona, viene visualizzato un tooltip con informazioni sull'affare: biglietto, tipo di affare, volume, simbolo, prezzo di apertura e prezzo al punto del cursore.

 
Vladimir Karputov:
Controllare le impostazioni nel terminale: Impostazioni - Commercio
  • Mostra le compravenditesul grafico in tempo reale- se questa opzione è abilitata, tutte le compravendite effettuate dal trader saranno automaticamente segnate sul grafico con un'icona appropriata (compravendita) e (vendita). Se metti il cursore del mouse sopra una tale icona, apparirà un tooltip che contiene le informazioni sull'affare: biglietto, tipo di affare, volume, simbolo, prezzo di apertura e il prezzo al punto del cursore.

GRAZIE.

Ho controllato e manipolato diversamente, ho visto tutti gli oggetti delle transazioni, ma su tutte le 12 coppie di valute, tranne EURUSD, le linee tratteggiate orizzontali delle transazioni con l'indicazione del tipo e del numero della transazione non appaiono ancora, mentre su EURUSD tutti gli oggetti e le linee sono chiaramente contrassegnati, compreso il piazzamento manuale degli ordini. Do la colpa all'aggiornamento di Windows 10 perché ho piazzato ordini sul grafico EURUSD prima dell'aggiornamento. Non so cosa fare ora, naturalmente posso cambiare la mia abitudine di visione di MT4, ma c'è un pulsante che mi permette di segnare le linee alla fine?