Lettura dei buffer degli indicatori impostati sul grafico - pagina 6

 
Andrey Khatimlianskii:

Mostratemi un esempio in cui un modello event-driven sarebbe necessario insieme alla fornitura di dati a un EA.

Ho una funzione di probabilità che mostra il livello di rimbalzo del prezzo più possibile. L'approccio che ho preso nell'HFT è che quando il prezzo è saltato bruscamente verso l'alto di 10 pip, c'è un'alta probabilità a breve termine che rimbalzi. Più lontano è il tempo, più bassa è la probabilità. Bene, questo è sulle dita per far capire che l'esempio è più o meno reale e non di un luogo.

Quindi, l'indicatore mostra questo livello. Mostra una visualizzazione che posso vedere con i miei occhi sul grafico. Controllo i parametri della funzione di probabilità con oggetti grafici e con la tastiera. Si scopre che oltre al fatto che l'indicatore vive del timer (come ho detto sopra, la funzione di probabilità è fortemente dipendente dal tempo (barre di minuti - troppo rozzo)) C'è anche una dipendenza da EventChart. Risulta essere uno strumento di ricerca dove posso regolare i valori dell'indicatore con il mouse e la tastiera secondo la mia visione della curva e la mia idea del mercato attuale, come mi sembra la più corretta.

L'Expert Advisor dovrebbe percepire questo indicatore regolato come è sul grafico. So perfettamente che possiamo scrivere i valori sul disco RAM come file, usare la DLL per accedere al puntatore al buffer appropriato. Ma è tutta una stampella, come potete immaginare. Non è chiaro perché non posso ottenere programmaticamente ciò che già vedo sul grafico.

E ho un bel po' di questi strumenti di ricerca dell'indicatore, che sono completamente su OOP e sul modello degli eventi.

 
pako:

mostra i dati dal buffer 0

Ciò che è scritto è ciò che viene mostrato

Si prega di modificare l'indicatore e l'EA in modo che non vengano stampati nel registro. E l'EA mostra il valore del buffer dell'indicatore, dove il mouse è passato. Ho dato un esempio di un tale EA.

Non mostri il codice sorgente, quindi devi capire un po' di scetticismo nei confronti di ex4, dove ci sono vari modi per creare l'apparenza che tutto sia come lo vuoi mostrare.

Se si rifiuta, allora non resta che ringraziarmi per il mio tempo, ma invano.

 
comp:

Ho una funzione di probabilità che mostra il livello di rimbalzo del prezzo più probabile. Questo è un approccio che ho imparato nell'HFT, che quando il prezzo è salito bruscamente di 10 pip, c'è un'alta probabilità a breve termine che rimbalzi. Più lontano è il tempo, più bassa è la probabilità. Beh, questo è sulle dita per far capire che l'esempio è più o meno reale e non di un luogo.

Quindi, l'indicatore mostra questo livello. Mostra una visualizzazione che posso vedere con i miei occhi sul grafico. Controllo i parametri della funzione di probabilità con oggetti grafici e con la tastiera. Si scopre che oltre al fatto che l'indicatore vive del timer (come ho detto sopra, la funzione di probabilità è fortemente dipendente dal tempo (barre di minuti - troppo rozzo)) C'è anche una dipendenza da EventChart. Risulta essere uno strumento di ricerca in cui posso regolare i valori dell'indicatore con il mio mouse e la tastiera secondo la mia visione della curva e la mia idea del mercato attuale, il modo che vedo più corretto.

L'Expert Advisor dovrebbe percepire questo indicatore regolato come è sul grafico. So perfettamente che possiamo scrivere i valori sul disco RAM come file, usare la DLL per accedere al puntatore al buffer appropriato. Ma è tutta una stampella, come potete immaginare. Non è chiaro perché non posso ottenere programmaticamente ciò che già vedo sul grafico.

E ho un bel po' di questi strumenti di ricerca dell'indicatore, che sono completamente su OOP e sul modello degli eventi.

Spostare la parte di calcolo nell'EA.
Lasciatelo funzionare con un timer e reagite agli eventi.

E lasciare che l'indicatore disegni curve pronte con i parametri selezionati. Reagirà più velocemente, e non reagirà sui tick, ma sugli eventi del grafico.
I parametri sono più facili da passare perché non ce ne sono molti (non è un buffer di valori). Per esempio, attraverso le variabili principali o attraverso gli stessi eventi personalizzati.

C'era un esempio sul forum su come passare grandi array di dati tra l'indicatore e l'Expert Advisor, ha funzionato velocemente. Ma non è necessario se stiamo parlando di pochi parametri.

Questo è esattamente quello che volevo dire - l'Expert Advisor dovrebbe regolare, l'indicatore dovrebbe disegnare.

 
Andrey Khatimlianskii:

Spostare la parte di calcolo nell'EA.
Fallo funzionare con un timer e reagisci agli eventi.

E lasciare che l'indicatore disegni curve pronte con i parametri selezionati. Reagirà più velocemente, e non reagirà sui tick, ma sugli eventi del grafico.
I parametri sono più facili da passare perché non ce ne sono molti (non è un buffer di valori). Per esempio, attraverso le variabili principali o attraverso gli stessi eventi personalizzati.

C'era un esempio qui sul forum di come far correre grandi set di dati tra l'indicatore e l'EA, è stato veloce. Ma non è necessario se stiamo parlando di diversi parametri.

Questo è esattamente quello che volevo dire - l'EA dovrebbe regolare, l'indicatore dovrebbe disegnare.

Naturalmente, so come bypassare e creare l'N-esima stampella che funzionerà. E ne ho parlato. Si prega di notare quanto segue.

Per qualche ragione è ancora impossibile fare una lettura umana dei dati dell'indicatore dal grafico!

Semplicemente non si può fare (e non ci sono grandi trasferimenti di dati, se è per questo). GetPtr lo ha dimostrato)! E non posso "preoccuparmi degli utenti" che non "martellano i chiodi con un microscopio". Architettonicamente, è proprio lei che suggerisce un disegno storto con la sua logica.

Perché dovrete diventare sofisticati per ogni opzione.

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

Lettura dei buffer degli indicatori impostati sul grafico

comp, 2016.03.14 09:19

Questo è il problema. Ci sono due di questi indicatori dal vivo. Ho dovuto determinare il momento in cui la differenza media tra loro raggiunge una certa soglia (questo è il punto in cui è necessario essere in grado di fare il lavoro secondario nello stesso Expert Advisor). E in quel momento per scaricare i loro valori in un file per ulteriori analisi. O se non per resettare, almeno per inviare un segnale all'indicatore, in modo che si bloccasse in questo stato.
 
comp:

Dovresti provare a contattare il Service Desk. Spiegate tutto in dettaglio e mostrateglielo. Potrebbero essere in grado di suggerire qualcosa. Ma non è sicuro che sarà veloce.

Sì, se rispondono, per favore pubblicate la risposta qui.

 
comp:

Naturalmente, so come aggirare e creare una stampella N-esimo che funzionerà. E ne ha parlato.

Non un workaround, ma un approccio dal lato giusto.
Non ho detto che gli sviluppatori si preoccupano che noi non otteniamo questi dati. È solo che se usate gli strumenti come previsto, non sarà necessario.
Non si cerca di far bollire l'acqua infilando una busta d'acqua in un tostapane, vero?

Ancora una volta - non mi dispiace che i dati del grafico siano disponibili. In alcuni casi, quando gli indicatori sono pronti e funzionanti, sarà più conveniente.
Ma questa non è una necessità per l'utente di massa, ma una soluzione ad un singolo problema.

IMHO.

 
Andrey Khatimlianskii:

Non si cerca di far bollire l'acqua infilando una busta d'acqua in un tostapane, vero?

Il suo suggerimento mi sembra esattamente questo: assurdo.

Molto probabilmente, non avete incontrato compiti così "strani", ed è per questo che avete un tale IMHO.

Il modello event-driven è esattamente nell'indicatore che disegna - è molto conveniente. Inoltre, ho impostato una dozzina di buffer ma ne disegno solo uno/due. Il resto sono informazioni ausiliarie su ogni barra, viste da CTRL+D. Aiuta molto a capire quando si esplora.

Ma a giudicare dalle dichiarazioni in questo thread, quasi nessuno lo capisce. Anche l'OOP negli indicatori pone la domanda "Perché? Bisogna provarlo per capirlo.

Ho un indicatore di canale OOP che calcola immediatamente l'equità (su ogni barra e altri criteri personalizzati) quando viene scambiato su di esso. Allo stesso tempo, quando si cambiano i parametri al volo, vedo (proprio sul grafico) come vengono cambiati i trade. Nessun tester è necessario e tutto è interattivo. Ma per cambiare la logica di costruzione di un canale, basta usare l'ereditarietà e registrare alcune stringhe responsabili solo dell'algoritmo del canale. Tutto il resto sarà fatto automaticamente a causa di OOP.

In generale, ci sono compiti, dove negli indicatori tutto sembra buono solo attraverso OOP. Lo stesso vale per il modello degli eventi negli indicatori. Ma per essere onesti, non ho visto tali soluzioni nel dominio pubblico. Forse questo è un prodotto molto di nicchia per i geek e solo per voi stessi.

 
Alexey Kozitsyn:

Dovresti provare a contattare il Service Desk. Spiegate loro tutto in dettaglio e mostrateglielo. Potrebbero essere in grado di suggerire qualcosa. Ma non è sicuro che sarà veloce.

Sì, se rispondono, postate la risposta qui, per favore.

Spedizione #1428577.

 
comp:
È impossibile scrivere un Expert Advisor che riceva i valori del buffer degli indicatori in esecuzione su un grafico con parametri di input non predefiniti. Perché iCustom è implementato in modo tale che richiede la scrittura di una propria chiamata nel SOURCE per ogni indicatore.
Possibile. Codificare gli indicatori in modo sano.
 
comp:

L'aggressività è inversamente proporzionale all'argomentazione! Quale link è quello in questione - non capisco.

Sono stati dati i codici degli indicatori e degli EA. È dimostrato che non si possono ottenere buffer in alcuni casi attraverso iCustom. Quindi il titolo non è solo corretto, è anche provato.

Con le restrizioni iCustom di un tipo diverso, è simile. Che senso hanno i vostri "si può" e "non vedo il problema" se non si dice altro? Resta fuori dal thread allora, visto che non puoi contribuire con nulla di costruttivo.

L'unica cosa di cui avete bisogno è un link a un primer per imparare a leggere.