Errori, bug, domande - pagina 3126
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Si forma una struttura di dati o una matrice di strutture in un EA o in un indicatore e la si invia a una risorsa.
Kanvas stesso lavora con una risorsa grafica (OBJ_BITMAP_LABEL/ OBJ_BITMAP). Quindi tutto quello che resta da fare è comunicare il nome della risorsa a un'altra applicazione e questa accederà facilmente ai pixel. Dovrà anche passare il formato dei pixel. E puoi leggere i pixel o cambiarli con un altro CCanvas. Ha un metodo, CCanvas::Attach, per attaccarlo ad una risorsa esistente.
Qual è il problema, Andrei?
Formare una struttura di dati o un array di strutture
Nessun problema! Sono solo i passi in più, è di questo che sto parlando.
Qualsiasi indicatore bufferizzato può essere letto da qualsiasi altro indicatore o Expert Advisor.
Per esempio, ho un EA che ottiene una lista di indicatori in esecuzione e poi li crea su una lista specificata di strumenti/TF e poi raccoglie i segnali da essi (e li invia a telegram). Quindi, qualsiasi indicatore buffer può essere semplicemente eseguito su un grafico e sarà rilevato automaticamente. Ma l'indicatore kanvas dovrà essere collegato manualmente e poi il resto del lavoro dovrà essere fatto manualmente.
Dobbiamo unificare il lavoro con gli indicatori kanvas. Ho paura che questa unificazione si traduca in... indicatori del buffer))
Qual è il problema, Andrei?
Non ne ho trovato uno e non l'ho nemmeno cercato
Non c'è nessun problema! Sono solo gesti inutili, ecco di cosa parlo.
Qualsiasi indicatore buffer può essere letto da qualsiasi altro indicatore o EA, e un kanvas ha bisogno di un livello kastum.
Per esempio, ho un EA che ottiene una lista di indicatori in esecuzione e poi li crea su una lista specificata di strumenti/TF e poi raccoglie i segnali da essi (e li invia a telegram). Quindi, qualsiasi indicatore buffer può essere semplicemente eseguito su un grafico e sarà rilevato automaticamente. Ma l'indicatore kanvas dovrà essere collegato manualmente e poi il resto del lavoro dovrà essere fatto manualmente.
Dobbiamo unificare il lavoro con gli indicatori kanvas. Ho paura che questa unificazione si traduca in... indicatori del buffer)).
Kanvas stesso lavora con una risorsa grafica (OBJ_BITMAP_LABEL/ OBJ_BITMAP). Quindi rimane da comunicare il nome della risorsa ad un'altra applicazione e questa accederà facilmente ai pixel. Dovrà anche passare il formato dei pixel. E puoi leggere i pixel o cambiarli con un altro CCanvas. Ha un metodo chiamato CCanvas::Attach per attaccarlo a una risorsa esistente.
Non riuscivo a trovarlo e non lo stavo nemmeno cercando.
Mi chiedo in quali casi se un indicatore è in esecuzione e la sua finestra non esiste? E quando la finestra è inattiva (l'utente è passato a un altro grafico o l'ha minimizzato), quale risorsa viene scaricata dalla memoria, è semplicemente cancellata?
Credo di essere d'accordo con te. Ho dovuto creare un robot multitasking. La prima istanza dell'applicazione crea compiti e crea grafici per essi, poi applica un modello speciale con lo stesso robot. Poi il primo robot crea i compiti e i robot creati dall'automa li eseguono. Il trasferimento dei dati avviene attraverso le risorse. Le stringhe di numeri e le strutture sono trasferite lì. C'è un esempio di trasferimento di dati via http qui sul sito (se la memoria non mi inganna). Ma i dati sulle strutture, le loro dimensioni e tipi vanno prima lì, e poi i dati stessi. Ho deciso di rendere tutto più facile nel mio Expert Advisor passando le stringhe e i numeri attraverso un array di uchar-types sotto forma di stringhe che semplifica notevolmente il processo di lettura/scrittura. Ma non ho mai scritto byte nei buffer degli indicatori e li ho letti da lì. Ma vedo già uno svantaggio di questo metodo: il numero limitato di byte nelle barre dell'indicatore. Anche se ci sono 8 byte in ogni cella dell'array. Forse non è uno svantaggio così grande. Chi lo sa...
Mi chiedo in quali casi se un indicatore è in esecuzione ma la sua finestra non esiste?
Intendevo dire che usando iCustom
E quando la finestra è inattiva (l'utente è passato a un altro grafico o l'ha minimizzato), quale risorsa viene scaricata dalla memoria, è semplicemente cancellata?
questa era solo la mia supposizione, dato che non c'è un punto speciale nella formazione delle immagini quando la finestra è ridotta a icona. Come è implementato in MT - non ho controllato, ma ho trovato qualcosa di simile. Ho dimenticato tutte le sfumature.
Comunque è improbabile che la risorsa venga cancellata, ma non viene nemmeno aggiornata nel tempo. Cioè CCanvas::Update non funziona
Intendevo dire che usando iCustom
Si scopre che è possibile passare valori attraverso la risorsa e i buffer, ma non attraverso la risorsa Kanvas. È un compito interessante, chiamare un indicatore con output a Kanvas usandoiCustom. Non l'ho provato. Mi sembra che in questo caso ci possano essere degli errori. Forse, un tale indicatore caricato attraverso iCustom non funzionerà affatto?
Credo che ResourceCreate funzioni, ma il risultato non viene reso usando ChartRedraw. Le chiamate alla funzione vanno, ma il sistema capisce che il grafico non ha bisogno di essere aggiornato mentre è inattivo. Ma seResourceCreate non funziona,immaginate che l'indicatore abbia aggiornato i dati ad un tick casuale quando il grafico è inattivo, ma la risorsa di Kanvas non è stata aggiornata. E poi l'utente ha deciso di attivare questo grafico inattivo e guardare l'indicatore (Kanwa). E si scopre che c'è stato un tick, ma il Canva rimane lo stesso di prima che l'utente cambiasse il grafico. E se durante il periodo di inattività ci fossero molte zecche? Naturalmente, l'indicatore li elaborerebbe, ma nessuno dei risultati verrebbe mostrato sulla tela.
Credo che ResourceCreate funzioni, ma il risultato non viene visualizzato con ChartRedraw.
Sì, probabilmente hai ragione. È probabile che sia così.
E per risparmiare risorse, sarebbe giusto monitorare l'attività della finestra e non generare una bitmap se la finestra non è attiva.
Vale la pena controllare piuttosto che fare supposizioni.