Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 776

 
Alexey Viktorov:
Dalla documentazione



Questo codice verrà compilato,x=i; non otterrà un errore?

E qual è la differenza tra dichiarare queste x y z all'inizio, durante l'inizializzazione?

Sono così stupido... ...non capiscono un cazzo.

 
Aleksey Vyazmikin:

Forse le basi, nessuna discussione, solo che non riesco a entrare nel codice, dove inizia, dove finisce... Da qui le domande. Ok è un riferimento(?), ma a cosa?

Dove è apparsa originariamente la variabile"Str"?

Subito dopo la prima parentesi graffa di apertura.
 
Artyom Trishkin:
Subito dopo la prima parentesi graffa di apertura.

OK, abbiamo dichiarato tutte le variabili nelle parentesi, e abbiamo iniziato a riempirle nella funzione. Li abbiamo riempiti. Ma qual è lo scopo di queste azioni, perché non possiamo dichiarare le variabili prima della funzione e assegnare valori alle variabili nella funzione? C'è qualche trucco qui?

 
Aleksey Vyazmikin:

OK, abbiamo dichiarato tutte le variabili nelle parentesi, e abbiamo iniziato a riempirle nella funzione. Li abbiamo riempiti. Ma qual è lo scopo di queste azioni, perché non possiamo dichiarare le variabili prima della funzione e assegnare i valori alle variabili nella funzione? C'è qualche trucco qui?

Perché renderli globali, se sono necessari solo localmente - in questa funzione? Il loro compito è stato portato a termine e vengono distrutti quando la funzione esce.
 
Aleksey Vyazmikin:

Questo codice verrà compilato,x=i; non otterrà un errore?

E qual è la differenza tra dichiarare queste x y z all'inizio, durante l'inizializzazione?

Sono così stupido... ...non sanno un cazzo.

Forse sarà maledetto, ma questo viene dalla documentazione senza alcuna modifica.

 
Artyom Trishkin:
Ma perché renderli globali, se sono necessari solo localmente - in questa funzione? Hanno svolto il loro compito e vengono distrutti all'uscita dalla funzione.

Mi scuso, forse, per le domande ingenue, ma allora perché non inizializzarle nella funzione? Capisco che avrò 33 parametri invece di 3, quindi mi sto chiedendo come scriverlo in modo più compatto e non posso farlo senza capire il codice...

Ecco dove viene chiamata questa funzione:

double OnTester()
{
  string Str;
  MqlTick Ticks[];
  double Balance;
  
  GetData(Str, Ticks, Balance); // Подготовка данных для записи

  if (MQLInfoInteger(MQL_OPTIMIZATION)) // Оптимизация
  {
    CONTAINER<uchar> Container; // https://www.mql5.com/ru/forum/95447/page4#comment_5464205
    
    Container[0] = Str;
    Container[1] = Ticks;
    Container[2] = Balance;
  
    FrameAdd(NULL, 0, 0, Container.Data); // Отправили данные из Агента на Терминал
  }
  else // Одиночный прогон
  {    
    if (handle != INVALID_HANDLE)
      SaveData(Str, Ticks, Balance); // Данные будут записаны в MQL5\Files-папку Агента (не Терминала)
    
    FileClose(handle);
  }
  
  return(0);
}

Ed eccoci di nuovo all'inizializzazione dello stesso :

  string Str;
  MqlTick Ticks[];
  double Balance;
Poi viene chiamata la funzioneGetData(Str, Ticks, Balance).
 

Ciao. Ho un paio di domande su MQL5 Cloud Network:
- Per rendere possibile l'ottimizzazione in MQL5 Cloud Network, il codice dell'indicatore deve essere nell'EA o può essere chiamato tramite icustom?
- se un EA utilizza dati da un file esterno nei suoi calcoli, funzionerà durante l'ottimizzazione, tutti questi file saranno caricati negli agenti?
- Quanto è sicuro usare gli agenti, possiamo ottenere/estrarre EA e i dati elaborati dall'agente?

 
ax237b:

Ciao. Ho un paio di domande su MQL5 Cloud Network:
- per essere ottimizzato in MQL5 Cloud Network il codice dell'indicatore dovrebbe essere nell'Expert Advisor o può essere chiamato tramite icustom?
- se un EA utilizza dati da un file esterno nei suoi calcoli, funzionerà durante l'ottimizzazione, tutti questi file saranno caricati negli agenti?
- Quanto è sicuro usare gli agenti, possiamo ottenere/estrarre EA e i dati elaborati dall'agente?


- No - gli indicatori sono trasmessi

- No (i dati devono essere trasmessi/allegati separatamente)

- Non escluso.

 
Aleksey Vyazmikin:

- No - gli indicatori sono trasmessi

- No (i dati devono essere trasmessi/allegati separatamente)

- Non è escluso.

capito, grazie.


un'altra domanda alla comunità, ci sono degli esempi funzionanti di opencl? non grafici di disegni sferici e calcoli pi greco, ma per esempio abbiamo una fattoria di schede video con diverse centinaia di processori, come eseguire dei tester di ottimizzazione su ogni processore della scheda video? è possibile?

 
ax237b:

Capisco, grazie.


Ho un'altra domanda alla comunità, ci sono esempi funzionanti di opencl, non grafici di disegno sferico e calcolo del numero pi greco, ma per esempio abbiamo una fattoria di schede video con diverse centinaia di processori, come eseguire il tester di ottimizzazione su ogni processore della scheda video? è possibile?


Puoi scrivere un kernel per OpenCL? So di una sola persona qui che sostiene di usare OpenCL per ottimizzare al volo - mentre l'EA è in esecuzione. Non sono a conoscenza di altri esempi.

Vorrei dargli un'occhiata io stesso. Ho anche chiesto di pubblicare un articolo su questo argomento, ma l'amministrazione non sa come applicarlo al trading reale.