Si prega di dare più libertà per gestire le finestre del grafico

 

Al momento, non è possibile gestire finestre di grafici utilizzando strumenti MQL5, senza l'uso di WinAPI:

  • non si può cambiare la dimensione della finestra del grafico programmaticamente
  • non puoi rendere attiva nessuna finestra del grafico
  • Non è possibile posizionare le finestre dei grafici come cascate, mosaici, orizzontalmente, ecc.

Possiamo aspettarci in futuro di introdurre proprietà e metodi per lavorare con le dimensioni delle finestre del grafico?

Come esempio, la commutazione delle schede, ma implementata usando WinAPI:

Nel processo di realizzazione della "voglia" di gestione delle finestre, cominciarono ad apparire delle soluzioni:

  1. Applicare modelli a OBJ_CHART
  2. Impostazione della barra di stato (OHLC) in OBJ_CHART
 
Solo una domanda: perché?
 
TheXpert:
Una domanda è: perché?

Per esempio, cambiando le finestre del grafico per mostrare la situazione attuale dello strumento nel trading semi-automatico - l'Expert Advisor renderà attivo il grafico sul quale c'è un segnale per entrare nel mercato. Rimane un umano per analizzare e confermare o rifiutare l'operazione.

Ma l'accesso alla dimensione delle finestre dei grafici permetterà di mettere diversi (per esempio, due) grafici uno accanto all'altro:

Due grafici affiancati

Due grafici affiancati

Questa combinazione di grafici permetterà di implementare utility e analizzatori con un'interfaccia più comoda. Nell'immagine qui sopra, la finestra del grafico di destra non si sovrappone alla finestra di sinistra e nella finestra di sinistra è possibile visualizzare informazioni aggiuntive o un diverso timeframe.

 

Ecco un esempio di come possono essere posizionate due finestre:

 

C'è un oggetto OBJ_CHART per questo

Il grafico principale dovrebbe essere un contenitore e non dovrebbe essere cambiato programmaticamente.

Altrimenti, si arriverà al punto di trasferire la finestra MT su un altro monitor).

 
komposter:

C'è un oggetto OBJ_CHART per questo

Il grafico principale dovrebbe essere un contenitore e non dovrebbe essere cambiato programmaticamente.

Altrimenti, si arriverà al punto di trasferire la finestra MT su un altro monitor ).

Sarebbe bello. Sono stufo di rannicchiarmi su un monitor quando l'altro è libero.
 
komposter:

C'è un oggetto OBJ_CHART per questo

Il grafico principale dovrebbe essere un contenitore e non dovrebbe essere cambiato programmaticamente.

Altrimenti si arriverà al punto di trasferire la finestra МТТ a un altro monitor).

L'oggetto OBJ_CHART può essere perfettamente posizionato in una sottofinestra aggiuntiva - ma questa sottofinestra non può essere posizionata verticalmente.
Finora la sottofinestra non può essere posizionata verticalmente, dobbiamo aggirare il problema usando WinAPI per il posizionamento della finestra.
E se la sottofinestra potesse essere posizionata verticalmente, sarebbe molto più efficiente nell'uso dell'area principale del grafico.
 
La commutazione delle schede si è rivelata possibile conCHART_BRING_TO_TOP. Ma la commutazione è irregolare, con ritardi. Ho la sensazione che sia legato alle zecche in arrivo. Allego lo script di commutazione dei grafici.
File:
 
barabashkakvn:
Si scopre che la commutazione delle schede può essere implementata conCHART_BRING_TO_TOP. Ma la commutazione è irregolare, con ritardi. Ho la sensazione che sia legato al tick in arrivo

Per risolvere il problema della latenza, usate ChartRedraw();

bool ChartBringToTop(const long chart_ID=0)
  {
//--- сбросим значение ошибки
   ResetLastError();
//--- покажем график поверх всех других
   if(!ChartSetInteger(chart_ID,CHART_BRING_TO_TOP,0,true))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
      return(false);
     }
   ChartRedraw(chart_ID);
//--- успешное выполнение
   return(true);
  }
 
komposter:

Altrimenti si arriverà al punto di trasferire la finestra MT su un altro monitor).

È ora, non fanno strumenti su una macchina in una finestra per sfogliare al volo, e sei grafici su un monitor è troppo.

È stato notato da molto tempo che c'è una correlazione diretta tra il successo di un trader e la dimensione delle finestre degli strumenti

https://www.mql5.com/ru/forum/9156

LaCORRELAZIONE[correlazione] è una quantità che descrive la mutua dipendenza di due variabili casuali, X e Y, sia essa determinata da qualche relazione causale o semplicemente da una coincidenza casuale (falso C.).

slovari.yandex.ru

Non credo nelle coincidenze casuali

 
Kos:

Per risolvere il problema della latenza, usate ChartRedraw();

Grazie. Ora funziona.