Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 337

 
tara:

Stampelle, imho.
+
 

Buon pomeriggio!

Puoi dirci come funziona la libreria come insieme di funzioni usate?

Cioè quando si chiamano le funzioni di una libreria in due EA, appesi a coppie diverse - per ogni EA sarà caricata e inizializzata la propria istanza di libreria?

O aspettarsi che le stesse variabili (interne) della libreria siano usate in modo competitivo?

Semplicemente, ho costruito alcune funzioni in biblioteca (*.mqh non voglio), e queste funzioni usano variabili/array dichiarati in biblioteca per memorizzare i dati effettivi. Questi dati sono comuni a tutti i simboli, ma possono essere modificati in momenti casuali da uno qualsiasi degli EA attivi. Quando un EA è in esecuzione - tutto va bene, ma quando due EA sono in esecuzione - appaiono alcune crepe incomprensibili (dati disordinati), e ho il sospetto che l'accesso competitivo alle variabili sia storto.

 
Mr.Profit:

Buon pomeriggio!

Puoi dirci come funziona la libreria come insieme di funzioni usate?

Cioè quando si chiamano le funzioni di una libreria in due EA, appesi a coppie diverse - per ogni EA sarà caricata e inizializzata la propria istanza di libreria?

O aspettarsi che le stesse variabili (interne) della libreria siano usate in modo competitivo?

Semplicemente, ho costruito alcune funzioni in biblioteca (*.mqh non voglio), e queste funzioni usano variabili/array dichiarati in biblioteca per memorizzare i dati effettivi. Questi dati sono comuni a tutti i simboli, ma possono essere modificati in momenti casuali da uno qualsiasi degli EA attivi. Quando un EA è in esecuzione - tutto va bene, ma quando due EA sono in esecuzione - esce della roba strana (dati disordinati), e ho il sospetto che l'accesso competitivo alle variabili sia storto.

Qui.
 

Come sapete, la linea inferiore del terminale contiene le seguenti informazioni, ad esempio

Saldo: 211721.72 Fondi: 101193.75 Garanzia: 55595.98 Libero: 45481.77 Livello: 181.81% -110643, 34 (circa)

Tuttavia, su uno dei miei terminali, su un conto in centesimi reali, vengono visualizzate solo le seguenti informazioni, anche se ci sono posizioni aperte:

Saldo: 211721,72 Fondi: 101193,75 -110643,34

Quale può essere la ragione? Grazie per la vostra attenzione.

 
borilunad:

Nel tester MarketInfo() non funziona, e Bid e Ask sono lenti e distorti. Quindi, su consiglio di Xrust'a li prendo da iClose(NULL,0,0):


Ho già scritto così tanto, l'ho fatto girare nel tester per assicurarmi che non ci fossero errori di logica, e... Solo ora ho scoperto che MarketInfp() non funziona nel mio tester.

Cosa sto controllando così attentamente allora? Come funziona per me?

Shaitan!!!

 
TarasBY:
Tut.


Grazie.

Come funziona nel caso di un EA in bilico su due coppie? Cioè il modulo chiamante è uno (expert.ex4) o due (due istanze in esecuzione)?

 
Mr.Profit:


Grazie.

Come funziona nel caso di un EA in bilico su due coppie? Cioè il modulo chiamante è uno (expert.ex4) o due (due istanze in esecuzione)?

A differenza delle librerie di sistema, le librerie personalizzate (MQL4) sono caricate separatamente per ogni modulo chiamante, indipendentemente dal fatto che la libreria chiamata sia stata caricata da qualsiasi altro modulo. Per esempio, il modulo caller.ex4 chiama funzioni dalle librerie lib1.ex4 e lib2.ex4. A sua volta, la libreria lib1.ex4 chiama funzioni dalla libreria lib2.ex4. In questo caso, una copia della libreria lib1.ex4 e due copie della libreria lib2.ex4 saranno caricate, nonostante il fatto che tutte le chiamate provengano dal modulo caller.ex4.
Per ogni EA (non importa quanti di loro sono appesi sui grafici) il suo modulo chiamante (file EA).
 
Potete per favore dirmi se ho trovato l'indicatore MACD_Histogram.mq4 dal link https://www.mql5.com/ru/code dove trovare il manuale dell'indicatore? In pratica ho capito che posso fare trading con le frecce ma voglio sapere quali altri indicatori mostrano in esso. Se qualcuno ha qualche link dove si può leggere o guardare si prega di rispondere o inviare e-mail a Aleks-R-13@yandex.ru Grazie
 
TarasBY:
Per ogni EA (non importa quanti siano appesi ai grafici) ha il suo modulo chiamante (file EA).

Per chiarire definitivamente la confusione, ho scritto un test EA e una libreria.

L'Expert Advisor semplicemente invia a Comment il valore corrente della variabile dalla libreria, in più per EURUSD incrementa il valore della variabile. La ricezione della variabile e il suo incremento sono implementati attraverso funzioni di libreria.

Di conseguenza, il commento su EURUSD mostra il valore che cambia, mentre sull'altro simbolo non lo fa.

Quindi, è corretto dire che per ogni istanza (e non un file) dell'EA, viene caricata la propria istanza di EX4-library.

 
tara:

Stampelle, imho.
Una cattiva dentiera è peggio.