[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 237

 
Dima.A.:

Tagliate il file, un paio di righe sono sufficienti per me...

Ho capito bene che per mql 4 è importante come viene inizializzato l'array. Quindi non si può fare come ho fatto io?

FILE STAMPATO

File:
vytxcfq.txt  61 kb
 

Cioè volete che la procedura di inizializzazione sia così: esportare i prezzi da MT, poi importare questi prezzi di nuovo in MT (diciamo EA) e inizializzare l'array?

È impossibile inizializzare immediatamente gli array secondo l'algoritmo specificato, senza inseguire i dati attraverso un file? O mi sono perso qualcosa?

 
solnce600:

Ho diviso una singola colonna con tutti i dati in colonne. Nella colonna con i prezzi di apertura metto una virgola dopo ogni valore - la traspongo in una riga - la ordino - e la incollo nell'editor, cioè nel file mqh incluso.


Un caso del tutto banale. Con una macro, ovviamente, poi assegnare un tasto di scelta rapida e il gioco è fatto.

DDE connect in service - settings - server - connect DDE server, poi cercate DDE-Sample.xls nella directory principale del terminale. Cercate bummer (IDLoader) nel museo del forex. Questo è un fornitore di dati locale (winros.exe), non ricordo, sembra essere Finama. Il formato è metastock, cerca su Google "descrizione del file F?.dat". Non ho Word non è installato, quindi vorrei guardare a lanciare una macro. Lì il senso di una macro il seguente, se improvvisamente è necessario: analizzare un file come linea uniforme su alcune linee contenenti blocchi su 4 byte, in blocchi nell'ordine contengono: data, ora, aperto, alto, basso, chiudere, volume e interesse aperto, e ulteriori codici ascii di simboli di trasferimento blocchi in decimale e formattazione sul senso dei dati in blocco. L'editor VBA (Visual Basic for Applications) è incluso sia in Word che in Excel, le azioni dell'utente sono scritte in VBA. Inoltre è lo stesso - aperto in Word, convertito in Excel. Bummer fornisce i dati in tempo reale.

Metastock è un terminale di una società vicina a Royters, ma il loro fornitore di dati è un abbonamento a pagamento, quindi la gente ne esce. Se per auto-educazione, suggerisco il vecchio settimo metastock, date un'occhiata sul forum KB Spider.

 
Dima.A.:

Cioè volete che la procedura di inizializzazione sia così: esportare i prezzi da MT, poi importare questi prezzi di nuovo in MT (diciamo EA) e inizializzare l'array?

È impossibile inizializzare immediatamente gli array secondo l'algoritmo specificato, senza inseguire i dati attraverso un file? O mi sono perso qualcosa...


Data e chiusura? In un programma, ovviamente, con un ciclo.

solnce600:

Cioè non puoi farlo come l'ho fatto io?

))) Questo è masochismo))))

 
Dima.A.:

Cioè volete che la procedura di inizializzazione sia così: esportare i prezzi da MT, poi importare questi prezzi di nuovo in MT (diciamo EA) e inizializzare l'array?

È impossibile inizializzare immediatamente gli array secondo l'algoritmo specificato, senza inseguire i dati attraverso un file? O mi sono perso qualcosa?

Finora ho selezionato questi prezzi manualmente, voglio solo controllare il modello che penso di aver trovato.

Più avanti dovremo creare un codice che metterà i prezzi + il tempo di apertura della barra di cuiho bisogno in array e poi li aggiungerà nell'array N 1 (prezzo di apertura della candela) e nell'array N 2 (tempo di apertura della stessa candela).

Ho solo bisogno che ogni prezzo (il prezzo aperto della barra) sia uguale al proprio valore del tempo di apertura della barra. Sono adiacenti l'uno all'altro nel file.

Cioè, se il primo elemento della matrice ha il valore 1.03745 - il primo elemento della seconda matrice dovrebbe avere il valore 06.01.2000 15:00.

dei due array.

 
alega:

Ciao, puoi dirmi in quale cartella sono memorizzate le variabili globali e con quale estensione?


MT4\profili\gvariabili.dat


Posso copiare la cartella Global Variables in un altro terminale?

Perché no, basta copiarlo.
 

solnce600, due opzioni: tramite scripting

per (i=0; i<3000; i++){

d = GlobalVariableSet(TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES), Close[0]);

Allora l'array sarà visibile in tutto il terminale, oppure basta impostareBars=3000 e Close[i], i=0..Bars-1. Ma naturalmente non sono entrato nel tuo compito.

 

Esiste un programma per trasferire le variabili globali da un termine all'altro? Grazie.

Ho bisogno di trasferire dal terminale demo al terminale reale il valore della variabile globale 0 o 1. È possibile e come?
 
gyfto:

solnce600, due opzioni: tramite scripting

per (i=0; i<3000; i++){

d = GlobalVariableSet(TimeToStr(TimeCurrent(),TIME_DATE|TIME_MINUTES), Close[0]);

Allora l'array sarà visibile in tutto il terminale, oppure basta impostareBars=3000 e Close[i], i=0..Bars-1. Ma naturalmente non sono entrato nel suo compito.

Grazie mille per il consiglio.A proposito di masochismo...... forse pensi che io metta tutte le virgole manualmente.....questo sarebbe davvero masochismo.

Le virgole sono state fatte da excel.

 
solnce600:

Finora ho scelto questi prezzi manualmente. Voglio solo controllare la regolarità, che ho trovato.

Dovrò inoltre inventare un codice che metterà i prezzi + il tempo di apertura della barra di cuiho bisogno in array e poi - aggiungere i valori dell'array N 1 (prezzo di apertura di una candela) e l'array N 2 (tempo di apertura della stessa candela) a quelli esistenti

Ho solo bisogno che ogni prezzo (il prezzo aperto della barra) sia uguale al proprio valore del tempo di apertura della barra. Sono adiacenti l'uno all'altro nel file.

Cioè se il primo elemento della matrice ha il valore 1.03745 - il primo elemento della seconda matrice dovrebbe avere il valore 06.01.2000 15:00. E questa corrispondenza dovrebbe essere su tutti gli elementi

deidue array.

Perché avete bisogno di due array? Faccia uno bidimensionale. È necessario memorizzare il prezzo e il tempo. Quindi memorizzateli in un unico array. Questo è ciò che farà combaciare il tutto. Non dovrete abbinare due array diversi. Semplice: la prima dimensione è il tempo, la seconda è il prezzo. Si può ordinare per tempo.
Motivazione: