Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1062

 

L'autore di questa sceneggiatura, da quanto ho capito, non è russo, temo che non ci sia risposta.

Quindi chiederò aiuto qui.

Come risolvere l'avvertimento :

possibile perdita di dati a causa della conversione del tipo

In questo script.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

 
erotin:

L'autore di questa sceneggiatura, da quanto ho capito, non è russo, temo che non ci sia risposta.

Quindi chiederò aiuto qui.

Come risolvere l'avvertimento :

possibile perdita di dati a causa della conversione del tipo

In questo script.

https://www.mql5.com/ru/articles/download/5204/scraperbot04.mq5

Prova questo

f_US=(float)StringToDouble(StringSubstr(CharArrayToString(ch_Buffer),i,8));
 


Ho capito bene che in mql5 non ci sono posizioni nella storia e ci sono solo accordi? A giudicare dalla presenza di HistoryDealsTotal() e dall'assenza di HistoryPositionsTotal().

Perché allora, nella scheda Storia del terminale, si può selezionare "Posizioni" e sono visibili nella storia?

Come ottenere il prezzo di chiusura delle posizioni in questa storia?


 
secret:

Ho capito bene che in mql5 non ci sono posizioni nella storia e ci sono solo accordi? A giudicare dalla presenza di HistoryDealsTotal() e dall'assenza di HistoryPositionsTotal().

Sì.

Perché allora, nella scheda Storia del terminale, si può selezionare "Posizioni" e sono visibili nella storia?

Questo è uno dei tentativi di interpretare la storia come posizioni. A mio parere, non è il più riuscito.

Come ottenere il prezzo di chiusura delle posizioni in questa storia?

Faccio quanto segue sulla siepe.

#property script_show_inputs

#include <MT4Orders.mqh> // https://www.mql5.com/en/code/16006

input TICKET_TYPE PositionTicket = 0;

void OnStart()
{
  if (OrderSelect(PositionTicket, SELECT_BY_TICKET))
    OrderPrint();
}
 
Alekseu Fedotov:

Prova questo

Grazie
 
fxsaber Sì.

Risulta che per stampare un profitto di un trade aperto, devi lavorare con una lista e un ticket, e per stampare un profitto dello stesso trade ma chiuso, devi lavorare con un'altra lista e un altro ticket?

 
secret:

Risulta che per stampare il profitto di un trade aperto, bisogna lavorare con una lista e un ticket, e per stampare il profitto dello stesso trade ma chiuso, bisogna lavorare con un'altra lista e un altro ticket?

Non capisco la domanda.

 
secret:

Risulta che per stampare un profitto di un trade aperto, devi lavorare con una lista e un ticket, e per stampare un profitto dello stesso trade ma chiuso, devi lavorare con un'altra lista e un altro ticket?

Ogni ordine e ogni trade ha il proprio ticket, ma ha anche ORDER_POSITION_ID e DEAL_POSITION_ID, rispettivamente. Questo è ciò che determina l'appartenenza o meno a una posizione.

 
secret:

Come si ottiene il prezzo di chiusura delle posizioni in questa storia?

Dovete anche essere ben consapevoli che questo prezzo di chiusura, anche su una copertura, può avere più cifre decimali di Digits.


E non deve essere nemmeno vicino al prezzo che era sul simbolo al momento della chiusura della posizione.

Gli sviluppatori volevano fare un'analogia con la storia di MT4, ma hanno fallito.

Quando voglio visualizzare la storia del trading nel terminale, uso l'estensione GUI. Visualizza le posizioni storiche come in MT4. I prezzi di chiusura corrispondono all'ora di chiusura, ecc.

Le posizioni storiche sono quindi una convenzione a cui si possono dare diverse interpretazioni.
 
fxsaber:

Non capisco la domanda.

Per calcolare il profitto di un trade, hai bisogno, tra le altre cose, del prezzo di apertura. Mentre il trade è aperto, il prezzo aperto deve essere preso dalla lista delle posizioni per il ticket di posizione. E quando l'affare è chiuso, allora lo stesso prezzo aperto deve essere preso da un'altra lista (affari, non posizioni) per un altro biglietto. Giusto?