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

 
artmedia70:
Guarda attentamente il prezzo dell'ordine di stop nella posizione aperta e a quale prezzo esattamente è stato chiuso. La funzione di Igor confronta questi prezzi ma non tiene conto dello slippage.


Le fermate funzionano chiaramente.

Il problema con il takei...per esempio, aprendo l'eu in buy a ...1.33942, chiudendo a take 1.33962... net 20 pips !

 
Zhunko:

Incubo! :-))


È una tale protezione contro la decompilazione)))) La minima distrazione da casa, dimenticare dov'è qualcosa - ecco, la protezione ha funzionato))))
 
lottamer:


le fermate stanno lavorando in modo chiaro.

il problema con i tee, ...ad esempio aprendo l'eu in buy a ...1.33942, chiudendo a 1.33962... 20 pips netti!

La presa non è un ordine di arresto? Guarda i prezzi e confrontali. Poi si può parlare in modo costruttivo.
 

Ripeto la mia domanda, deve essermi sfuggita.

Di nuovo ho guardato nell'aiuto e di nuovo ho letto le righe qui:

https://docs.mql4.com/ru/basis/preprosessor/import

Для импорта функций во время выполнения mql4-программы используется так называемое позднее связывание. Это значит, что пока не вызвана импортируемая функция, соответствующий модуль (ex4 или dll) не загружается.

1. significa che affinché la libreria sia caricata, dovrebbe essere chiamata nel codice dopo le linee di importazione, giusto?

Per esempio, ho fatto così:

#import "hoz_Base@Library.ex4"
   double ND(double A);
   double Get_TradePrice(int fi_priceId,       // Цена: 0 - Ask; 1 - Bid
                      string fs_symbol);

2. Si scopre che noi dichiarare le funzioni utilizzare nell'Expert Advisor all'inizio del suo codice?

3. e non dichiararli molto nel codice di Expert Advisor stesso e usare file di intestazione? Cioè solo per le dichiarazioni?

Questa domanda è venuta fuori perché ho visto tali Expert Advisor che sono stati scritti da programmatori abbastanza seri, ma i loro file di intestazione contengono tutte le funzioni principali e non principali. Sono rimasto sorpreso da questo... Infatti, la velocità delle librerie compilate è molto più veloce, inoltre, il codice delle funzioni di libreria è "isolato", che è anche molto conveniente.

Perché l'ho chiesto, è solo che se importo una libreria di funzioni come mostrato sopra e la uso nel mio codice, appare un errore:

'Get_TradePrice' - function is not defined      D:\Insall'd soft's\Forex\MetaTraderForProgramming\experts\Grider.mq4 (360, 18)

e appena lo dichiaro come mostrato sopra, si compila subito... Oppure, non lo dichiaro in Expert Advisor stesso, ma collego l'inclusione (file di intestazione) con nomi di funzioni e parametri elencati, anche questo si compila e funziona bene.

Pertanto, ho una domanda. Perché alcuni programmatori usano tutte le loro funzioni in inclusioni invece che in librerie?

 
artmedia70:
La presa non è un ordine di arresto? Guarda i prezzi e confrontali. Poi si può parlare in modo costruttivo.

i prezzi sono gli stessi.

 
hoz:

Ripeto la mia domanda, deve essermi sfuggita.

Di nuovo ho guardato nell'aiuto e di nuovo ho letto le righe qui:

https://docs.mql4.com/ru/basis/preprosessor/import

Perciò è sorta una domanda. Perché alcuni programmatori usano tutte le loro funzioni in inlude invece che in librerie?

Dal contagio...

Raccomando di pianificare l'uso della memoria per qualche sciocchezza una volta (molto, molto grande).

 
hoz:
Pertanto, è sorta una domanda. Perché esattamente alcuni programmatori usano tutte le loro funzioni negli inlude invece che nelle librerie?
È scomodo usare i libs in alcuni posti. Anche se la pratica di usarli è buona.
 
lottamer:

i prezzi sono gli stessi.


Sono il prezzo del set take e il prezzo di chiusura della posizione?


Se sì, allora stampate i dati richiesti (OrderTakeProfit() e OrderClosePrice()) per l'ordine selezionato nella storia direttamente nel ciclo della funzione di Igor e vedete il motivo della mancata corrispondenza.

 
tara:

Dall'infestazione...

Vi consiglio di pianificare l'uso della memoria una volta per qualche sciocchezza (molto, molto grande).


Per pianificarlo, bisogna sapere a cosa serve. È solo un po' di confusione. Un modo, un modo, un altro modo... un altro modo ancora. Non ho visto nessuna informazione in cui tutto sia ben disposto. Mi riferisco all'uso congiunto della biblioteca e alle inclusioni con gli esperti. Neanche io voglio indovinare. Ecco perché ho chiesto. Qual è il modo giusto?
 
TheXpert:
È scomodo usare i libs in alcuni posti. Anche se la pratica da usare è buona.


Per esempio?