Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 2
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
Ho la seguente domanda. C'è un blocco in init(), che blocca il terminale (è quello che voglio trasferire a dll). Naturalmente, il registro non può essere visualizzato - il terminale viene chiuso solo da Ctrl+Alt+Canc. Stabilire la stampa per tracciare (e misurare il tempo di transito dei cicli che entrano nel blocco) non aiuta - la stampante non scrive nulla, il logging non viene nemmeno creato. Provo a usare FileOpen/FileWrite con lo stesso scopo - il file è appena creato (0 Kb), e silenzio. Ho messo FileWrite dopo FileOpen, sulla linea successiva - nessun effetto. Da che parte devo scavare?
L'argomento è stato chiuso... Uomo cattivo.
Ho la seguente domanda. C'è un blocco in init(), che blocca il terminale (è quello che voglio trasferire a dll). Naturalmente, il registro non può essere visualizzato - il terminale viene chiuso solo da Ctrl+Alt+Canc. Stabilire la stampa per tracciare (e misurare il tempo di attesa dei cicli che entrano in blocco) non aiuta - la stampante non scrive nulla, il logging non viene nemmeno creato. Provo a usare FileOpen/FileWrite con lo stesso scopo - il file è appena creato (0 Kb), e silenzio. Ho messo FileWrite dopo FileOpen, sulla linea successiva - nessun effetto. Qual è la direzione per scavare?
Guarda, non c'è nessun nascosto negli attributi?
Non lo è.
Prova a usare questo. Se questo non aiuta, per cercare gli errori, puoi prendere temporaneamente il blocco di inizializzazione menzionato nell'avvio per un avvio una tantum tramite un flag e provare a "tirare" i log da esso.
Né l'avvio una tantum in start né ininit funziona - né Print né FileWrite. Allego questo pezzo di codice (non vedo un'altra via d'uscita), non ho intenzione di postarlo qui, perché è troppo lungo. Ho rimosso tutte le dichiarazioni di buffer e descritto tutte le chiamate di indicatori tecnici incorporati lì. Ho già pensato all'overflow di memoria con gli array, ho calcolato che l'array più grande più tutti gli altri array sono cinquanta metri e mezzo. Beh, se non si stampa nemmeno sulla prima riga, quando si entra nel blocco... - è questo che mi preoccupa. La versione allegata è vera con FileWrite.
Non funziona né il lancio una tantum all'avvio né ininit - né Print né FileWrite. Allego questo pezzo di codice (non vedo un'altra via d'uscita), non lo incollo qui perché è troppo lungo. Ho rimosso tutte le dichiarazioni di buffer e descritto tutte le chiamate di indicatori tecnici incorporati lì. Ho già pensato all'overflow di memoria con gli array, ho calcolato che l'array più grande più tutti gli altri array sono cinquanta metri e mezzo. Beh, se non si stampa nemmeno sulla prima riga, quando si entra nel blocco... - è questo che mi preoccupa. La versione allegata è vera con FileWrite.
Lo stile del codice non lo elimina. Niente spazi, parentesi a diversi livelli, diverse operazioni in fila, nessun commento... Incubo! :-))
Lei stesso ne sa qualcosa?
Ha chiuso l'argomento... Non è un uomo buono.
= :)
Né l'avvio una tantum né l'avvio iniziale funzionano - né Print, né FileWrite. Allego questo pezzo di codice (non vedo un'altra via d'uscita), non lo incollo qui perché è troppo lungo. Ho rimosso tutte le dichiarazioni di buffer e descritto tutte le chiamate di indicatori tecnici incorporati lì. Ho già pensato all'overflow di memoria con gli array, ho calcolato che l'array più grande più tutti gli altri array sono cinquanta metri e mezzo. Beh, se non si stampa nemmeno sulla prima riga, quando si entra nel blocco... - è questo che mi preoccupa. La versione allegata è vera con FileWrite.
Sono d'accordo con Vadim - il codice è difficile da leggere. Provate a decomporre questo codice in blocchi funzionali, in ogni blocco stampate o scrivete su file. Ed eseguirlo in una struttura che "rallenta" l'esecuzione del codice, per esempio, così:
Ritarda l'esecuzione del prossimo blocco di 1 sec. - Il terminale dovrebbe avere abbastanza tempo per stampare il registro.
Ci sono 2 funzioni molto simili in Kim "la bandiera di chiusura dell'ultima posizione per STOP" e l'altra per TAKE.
ecco il codice
Come potete vedere sono molto simili.
Ma per qualche ragione, solo la chiusura tramite STOP funziona per me.
Funziona, ma il mio Expert Advisor non stampa UNIT, ma continua a stampare NULL.
Ma la chiusura a STOP stampa correttamente: se stop = 1, se non stop =0....
aiutatemi per favore....
Ci sono 2 funzioni molto simili in Kim "la bandiera di chiusura dell'ultima posizione per STOP" e l'altra per TAKE.
Ecco il codice
Come potete vedere sono molto simili.
Ma per qualche ragione, solo la chiusura tramite STOP funziona per me.
Apro la posizione manualmente, metto short TAKE. funziona - ma EA non stampa UNIT, ma continua a stampare NULL.
Ma la chiusura a STOP stampa correttamente: se stop = 1, se non stop =0....
aiutatemi a capire questo per favore....