Errori, bug, domande - pagina 1493

 
zaskok3:
In MQL4++ non posso fare a meno di extern quando ho bisogno di cambiare i parametri di input programmaticamente. Per esempio, quando converto un indicatore standard in uno interattivo devo sostituire input con extern. Il compilatore tratta le variabili di input come const e si lamenta al tentativo di cambiarle. Con extern non ci sono questi problemi.
Lo fanno per me. Ho anche letto nel manuale molto tempo fa che extern può essere cambiato programmaticamente. Glitch su glitch, cambia ogni tanto e poi no, sembra che vengano resettati all'ingresso. Mi sono arreso e ho fatto copie di extern a global. Leggo e copio solo una volta all'inizio del programma e uso global solo all'interno del programma. Immediatamente tutto ha funzionato come un orologio.
 
zaskok3:
È un peccato che l'architettura sia così rigida che non c'è alcuna possibilità di flessibilità anche semplice. Quindi, l'interattività in MQL5 richiederà una stampella. La domanda è dove sia allora il vantaggio, se la lingua limita le possibilità...

Tu non capisci. Abbiamo risparmiato molta memoria con la nostra architettura.

Chiedete a chi vi circonda cosa è più importante: la difficoltà di copiare e incollare 5 righe di codice o il guadagno di memoria? Noi, per esempio, non abbiamo pensato minimamente a

 
Slawa:

...

Qual è il suo consiglio ai proprietari di più monitor? Come si può organizzare un funzionamento efficiente del terminale?
 
Slawa:

Tu non capisci. Abbiamo risparmiato molta memoria con il nostro progetto architettonico.

È vero, non capisco. Ci sono pochissime informazioni da voi sull'architettura interna. Onestamente, non riesco a capire come aggiungere il modificatore const alle variabili di input permetta di creare un'architettura molto migliore con un enorme risparmio di memoria. Allo stesso tempo sembrerebbe che una stampella sotto forma di overruns sotto forma di allocazione di memoria crei ancora questo risparmio. È possibile inarchitettura creare il doppiaggio automaticamente e trattare l'input come const come è ora. Cercando molto difficilmente di immaginare che tipo di architettura sia quella che permette di "risparmiare molta memoria" in un caso così semplice. Sembra che tu stia facendo un confronto con l'architettura di MT4, che per molti versi era ridondante e tutt'altro che efficiente in termini di risorse (come nel ricalcolo dei timeframe). Ma stiamo parlando della ragionevolezza dell'architettura in generale, non in confronto con un prodotto di N decimi di secolo fa.


E per quanto riguarda l'architettura. Non capisco perché non c'è OnMarketwatch, come in quasi tutte le altre piattaforme di trading. Per qualche ragione ci sono soluzioni di stampella che usano il timer o il più perverso OnChartEvent. Questo compito è richiesto e sembra ovvio per tutti i trader che creano ATS. Ed è fatto apposta per rendere l'architettura interna molto efficace?


Questa non è una critica per il gusto di criticare. Voglio capire, e non essere un dilettante "non so, loro sanno meglio".

 
zaskok3:

Onestamente, non riesco a capire come aggiungere un modificatore const alle variabili di input crei un'architettura molto migliore con enormi risparmi di memoria.


Ben detto chiaramente due post sopra

Memorizzazione globale degli indicatori nella base storica di MT5. Per loro i parametri di ingresso sono fondamentali. Quando cambiate i parametri di input, l'indicatore con i vecchi parametri sarà distrutto e lo stesso indicatore con i parametri modificati sarà creato di nuovo.

Cosa non è chiaro? I parametri di input sono parametri chiave per la memorizzazione delle istanze dell'indicatore. Se si cambia il valore della chiave dall'interno, c'è una contraddizione con l'indice - l'indice dice una cosa, ma in realtà dice qualcos'altro. Beh, non si possono cambiare i parametri esterni internamente

Non ti sto accusando di aver frainteso - è un desiderio perfettamente naturale: "fallo bene per me - non mi importa degli altri".

 

Slawa:

è un desiderio perfettamente naturale: "fammi stare bene. sono io che non mi preoccupo degli altri".

Purtroppo, nella società di oggi questo desiderio è naturale. Tuttavia, non mettete tutto nello stesso modo.

Grazie per il ripetuto chiarimento:

I parametri di input sono la chiave per memorizzare le istanze dell'indicatore. Se si cambia il valore della chiave internamente, c'è una contraddizione con l'indice - l'indice dice una cosa, ma in realtà dice qualcos'altro.

Ora è chiaro quale architettura viene scelta e perché richiede l'immutabilità delle variabili di input. Non cambierei un'architettura già implementata per il bene di una scoreggia insoddisfatta del forum. La scoreggia in qualche modo si risolverà da sola... Voglio sapere come è organizzata la cucina interna degli indicatori in MT4.


A proposito, gli input sono costanti negli EA e negli script proprio per la caratteristica architettonica di memorizzare gli indicatori?


Apprezzerei anche una spiegazione dell'assenza di OnMarketwatch, che è richiesto da un po' più persone del punto precedente.

 
zaskok3:

Una spiegazione sulla mancanza di OnMarketwatch, che è richiesto da un numero leggermente superiore di persone rispetto al punto precedente, sarebbe anche grato.

Cos'è OnMarketWatch?
 
Slawa:
Cos'è OnMarketWatch?
L'evento dell'arrivo di un nuovo tick in Marketwatch. Simile a OnTick, ma reagisce solo ai nuovi tick non di un singolo simbolo, ma di tutti quelli firmati nel Market Watch.
 
Slawa:

...

Qual è il suo consiglio ai proprietari di più monitor? Come si può organizzare un funzionamento efficiente del terminale?

 
zaskok3:
L'evento di un nuovo tick che arriva in Marketwatch. Simile a OnTick, ma reagisce non ai nuovi tick di un simbolo, ma a tutti i tick che sono firmati nel "Market Watch".
Secondo me, potete usare OnTimer() per chiamare questo evento ogni X millisecondi.