Errori, bug, domande - pagina 2854

 
Renat Fatkhullin:

Avete dato qualche dettaglio tecnico da capire o riprodurre?

Le domande senza dettagli rimangono quasi sempre senza la nostra attenzione.

Renat, posso farti una domanda sull'indicatore? Al primo passaggio (prev_calculate==0) l'indicatore è obbligato a caricare la storia senza spazi vuoti tra le barre?

Ora incontro spesso situazioni in cui durante il prossimo passaggio alla parte destra del grafico le barre vengono caricate in più. Più o meno - al primo passaggio dell'indicatore nell'array temporale da OnCalcvulate la data più recente è 2020.09.16, e al secondo tick è la data di oggi.

 
Vladimir Karputov:

Renat, posso farti una domanda sull'indicatore? Al primo passaggio (prev_calculate==0) l'indicatore è obbligato a caricare la storia senza spazi vuoti tra le barre?

Ora mi capita spesso di beccare situazioni in cui durante il successivo passaggio alla parte destra del grafico le barre vengono caricate in più. Più o meno, nel primo passaggio dell'indicatore nell'array temporale di OnCalcvulate, la data più recente è 2020.09.16, ma nel secondo tick è la data di oggi.

Cosa intende per "deve caricare"? Per avviare il processo di sincronizzazione dei dati su richiesta - sì, deve. Preparare i dati PRIMA del "primo passaggio" - no.

Leggi il riferimento:

https://www.mql5.com/ru/docs/series/timeseries_access

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
 
Alexey Viktorov:

Sostituisci questa assurdità

con queste sciocchezze.

Questo non ha niente a che vedere con la domanda. E se avete deciso di fare i furbi, ho due domande per voi Perché ho bisogno di zeri nel buffer dell'indicatore? Il mio modo è più affidabile, testato, perché dovrei usare il tuo con risultati non garantiti?

 

C'è un modo per rendere qualsiasi numero di parametri di input in un programma o qualsiasi numero di enum in un enum con le direttive #define, #ifndef e altre


tipo di

#define  TOTAL_PARAMS = 10;
#define MAKE_ENUM ( )   ABRAKADABRA


e a tempo di compilazione crea

enum E{

param1, //text 1
 
param2, //text 2

param3, //text 3

...

param9 //text 9

};
 
Konstantin Efremov:

Questo non ha niente a che vedere con la domanda. E se avete deciso di fare i furbi, ho due domande per voi Perché ho bisogno di zeri nel buffer dell'indicatore? Il mio modo è più affidabile, testato, perché dovrei usare il tuo con risultati non garantiti?

Allora sostituiscilo con questo.

  if(prev_calculated == 0)
    ArrayInitialize(Arrows, EMPTY_VALUE);

Pensavo che tu sapessi come sostituire gli zeri.

Questo è esattamente il punto della domanda. In primo luogo, il vostro ciclo è disastrosamente lento. In secondo luogo, la sua condizione non è sempre soddisfatta quando è necessario. Sostituiscilo e vedi il risultato. E poi diventerò più intelligente.

 

Non ci sono dati di prelievo/riempimento sul grafico della crescita nelle statistiche dei segnali (in ritardo di diverse ore). Tuttavia, i grafici Balance/Assets mostrano questi dati.

La sincronia sarebbe auspicabile.

 

Se c'è più di un'immagine in un post del forum, devi cliccare su ciascuna di esse per vedere le immagini a schermo intero.

Sarebbe meglio se si potesse passare da una parte all'altra a SINISTRA/DESTRA. Questo è particolarmente utile quando si desidera confrontare le immagini tra loro.

 

Due domande.



Dopo diverse ottimizzazioni, una scheda è bloccata.

Tutti hanno chiuso, ma questo non si chiude. Spero che dopo aver riavviato il terminale possa essere chiuso dopo tutto....

P.S. Questa scheda è sparita dopo aver riavviato il terminale.


Seconda domanda.

Perché durante l'ottimizzazione appare un errore

2020.09.24 13:43:15.115 Core 5  pass 19272 tested with error "critical runtime error 502 in OnInit function (array out of range, module Experts\NC_mZZ3\nc_MPL_mZZ3_1.05.ex5, file nc_MPL_mZZ3_1.05.mq5, line 167, col 65)" in 0:00:00.000

su questa linea di codice

for(int i = ArraySize(indicators); i >= 0; i--) delete netMLP[i];

mentre nessuno di questi errori si verifica durante un singolo test?

 

Forum sul trading, sistemi di trading automatico e test di strategia

Domande OOP in MQL5

A100, 2020.09.24 13:05

Rendere un metodo un modello e accedervi

class A {
template<typename T>
void f( T ) {}
};
void OnStart()
{
        A а;
        а.f(0); //нормально
}

 

Errore sul sito: inserire il codice e poi evidenziare immediatamente il frammento di codice a colori

Risultato: il codice scompare

Browser: Opera