Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1934

 
EVGENII SHELIPOV #:

Buon pomeriggio!!!!

Per favore, aiutatemi a cambiare una funzione che calcola solo le perdite degli ordini non redditizi in una griglia di ordini

Abbiamo bisogno di cambiare la funzione che calcola solo la dimensione minima del lotto da ogni ordine nella rete di ordini. Lotto Min=0,01

Grazie!!!!

Descrivi più chiaramente ciò che vuoi
 
Potete dirmi come gestire l'ordine dei piani (primo piano, sfondo) degli oggetti grafici? Per esempio, ho un piccolo infofield quadrato con un grafico sotto e una linea di tendenza che si arrampica sul campo stesso, e un'etichetta nascosta sotto il campo.
 
Ivan Butko #:
Potete dirmi come gestire la sequenza dei piani (primo piano, sfondo) degli oggetti grafici? Per esempio, ho un piccolo infofield quadrato con un grafico sotto di esso, e una linea di tendenza sta salendo sul campo stesso, e un'etichetta si nasconde sotto il campo.
  1. Impostare OBJPROP_TIMEFRAMES su OBJ_NO_PERIODS
  2. Impostare il parametro dell'oggetto OBJPROP_TIMEFRAMES su OBJ_ALL_PERIODS
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Видимость объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Видимость объектов
  • www.mql5.com
Видимость объектов - Константы объектов - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin #:
  1. Impostare OBJPROP_TIMEFRAMES su OBJ_NO_PERIODS
  2. Impostare il parametro OBJPROP_TIMEFRAMES su OBJ_ALL_PERIODS

Artyom, probabilmente non ho capito bene, forse ho posto la domanda in modo sbagliato:

Ci sono tre (quattro, cinque...) oggetti artificiali (ObjectCreate). Il primo si nasconde dietro il terzo, il secondo è in primo piano,. Come impostare uno in primo piano, il secondo in secondo, il terzo in secondo piano. In modo che il primo oggetto sia sempre visibile, il secondo sia sempre visibile, ma non dietro il primo. Anche il terzo oggetto è sempre visibile, ma non dietro il primo e il secondo. È una specie di alternanza di piani.
Non ho capito bene il TF.

 
Ivan Butko #:

Artyom, probabilmente non ho capito bene, forse ho posto male la domanda:

Ci sono tre (quattro, cinque...) oggetti artificiali (ObjectCreate). Il primo si nasconde dietro il terzo, il secondo è in primo piano,. Come impostare uno in primo piano, il secondo in secondo, il terzo in secondo piano. In modo che il primo oggetto sia sempre visibile, il secondo sia sempre visibile ma non dietro il primo. Anche il terzo oggetto è sempre visibile, ma non dietro il primo e il secondo. Una specie di piano alternato.
Non ho capito bene la TF.

Fate a turno come descritto sopra per ciascuno dei vostri oggetti. L'alternanza influenzerà il layout. L'ultimo a cui sarà applicata questa azione sarà quello più in alto.

Una volta che avete determinato che qualsiasi oggetto grafico che dovrebbe essere sotto i vostri oggetti è apparso sul grafico, fate alternativamente un nascondiglio per ciascuno dei vostri oggetti (come ho scritto sopra). Questa azione porta l'oggetto in primo piano nel grafico. Il tuo primo oggetto a cui è stata applicata questa azione sarà in basso (ma sopra qualsiasi altro oggetto grafico disegnato sul grafico dopo che i tuoi oggetti sono stati creati), il secondo sarà sopra il primo, il terzo sarà sopra il primo e il secondo, e così via. Tutti gli oggetti che sono stati nascosti saranno sopra il resto degli oggetti grafici.

Cioè, l'ordine in cui gli oggetti nascosti sono applicati ai vostri oggetti stabilisce il loro ordine sopra l'altro. Ma appariranno tutti sopra ogni altra cosa sul grafico.

La logica è questa:

Se un qualsiasi oggetto grafico appare sul grafico che non dovrebbe sovrapporsi ai tuoi oggetti, fai una visualizzazione nascosta per ognuno dei tuoi oggetti nell'ordine in cui dovrebbero apparire visivamente (il primo in basso, l'ultimo in alto). Dopo aver nascosto-visualizzato tutti i tuoi oggetti fai ChartRedraw().
Questo è importante - ridisegna il grafico solo dopo che tutti i tuoi oggetti sono stati nascosti-visualizzati, in modo che visivamente non ci sia uno sfarfallio sul grafico.

 
Artyom Trishkin #:

Fate a turno per fare come descritto sopra per ciascuna delle vostre proprietà. La rotazione influenzerà il posizionamento. L'oggetto più recente a cui viene applicata questa azione sarà quello più in alto.

Una volta che avete determinato che qualsiasi oggetto grafico che dovrebbe essere sotto i vostri oggetti è apparso sul grafico, fate alternativamente un nascondiglio per ognuno dei vostri oggetti (come ho scritto sopra). Questa azione porta l'oggetto in primo piano nel grafico. Il tuo primo oggetto a cui è stata applicata questa azione sarà in basso (ma sopra qualsiasi altro oggetto grafico disegnato sul grafico dopo che i tuoi oggetti sono stati creati), il secondo sarà sopra il primo, il terzo sarà sopra il primo e il secondo, e così via. Tutti gli oggetti che sono stati nascosti saranno sopra il resto degli oggetti grafici.

Cioè, l'ordine in cui i nascondigli sono applicati ai tuoi oggetti determina il loro ordine sopra gli altri. Ma appariranno tutti sopra ogni altra cosa sul grafico.

La logica è questa:

Se sul grafico appare un qualsiasi oggetto grafico che non dovrebbe sovrapporsi ai tuoi oggetti, fai una visualizzazione nascosta per ognuno dei tuoi oggetti nell'ordine in cui dovrebbero apparire visivamente (il primo in basso, l'ultimo in alto). Dopo aver nascosto-visualizzato tutti i tuoi oggetti fai ChartRedraw().
Questo è importante - ridisegna il grafico solo dopo che tutti i tuoi oggetti sono stati nascosti-visualizzati, in modo che visivamente non ci sia uno sfarfallio sul grafico.

Ahhhh, grazie mille! Ora ho capito. Grande
 
Per favore, un'altra cosa: sono passato da un monitor 2k a un portatile 1080 e tutto il testo è diventato grande e si è sovrapposto. Potete per favore consigliarmi come risolvere questo problema?
 
Ivan Butko #:
Gentilmente, un'altra cosa: sono passato da un monitor 2k a un portatile 1080 e tutto il testo è diventato troppo grande e si è sovrapposto. Si prega di consigliare come risolvere questo problema

È più complicato di così. È necessario utilizzare risorse per l'output della grafica. Leggi TextSetFont() - questo riguarda la dimensione del carattere in pixel logici.

Di conseguenza TextOut() - sull'output di testo dalla risorsa. Potete trovare tutto su questo nei link della documentazione.

Документация по MQL5: Графические объекты / TextSetFont
Документация по MQL5: Графические объекты / TextSetFont
  • www.mql5.com
TextSetFont - Графические объекты - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin #:

È più complicato di così. È necessario utilizzare risorse per l'output della grafica. Leggi TextSetFont() - questo riguarda la dimensione del carattere in pixel logici.

Di conseguenza TextOut() - sull'output di testo dalla risorsa. E tutto su di esso - tramite link nella documentazione.

Capito! Grazie mille.

 
Ivan Butko #:
Per favore, un'altra cosa: sono passato da un monitor 2k a un portatile 1080 e tutto il testo è diventato grande e si è sovrapposto. Si prega di consigliare come risolvere questo problema
Strumenti per Windows. L'impostazione grafica grande carattere piccolo dovrebbe anche adattarsi.