Chiunque volesse vedere i grafici senza barre mancanti - qui =) - pagina 6

 
solandr:
Vorrei anche sapere del seguente errore occasionale che appare quando si accende il terminale:

Questi sono errori di spegnimento, non di accensione)

Se il computer si spegne normalmente, chiude i file e poi si apre normalmente al prossimo avvio.

È possibile aprire un massimo di 32 file.
Se MT mute, allora i file precedenti non vengono chiusi, e insieme ai nuovi file se ne ottengono troppi.
Anche se forse anche altri script/esperti aprono i file?

Cosa sono gli errori in HistoryBase - non lo so.
Se riuscite a riprodurre il problema e a capire di cosa si tratta, fatemelo sapere. Cercheremo di risolvere il problema ;)
 
komposter писал (а):

È possibile aprire un massimo di 32 file.
Se MT si accoppia, significa che i file precedenti non sono chiusi, e insieme a quelli nuovi ce ne sono troppi.
Anche se forse anche altri script/esperti stanno aprendo i file?

I miei Expert Advisor non lavorano con i file. Lavorano attivamente solo con le variabili globali del terminale. Ma non hanno mai avuto problemi prima. È da un mese che non li vedo lavorare sul serio.

Beh, se riesco ad analizzare le condizioni di errore, vi farò sapere. L'unica cosa che posso dire in anticipo è che al momento dell'avvio iniziale del terminale vengono inizializzati gli Expert Advisors e gli indicatori necessari, l'inizializzazione dura circa 20 secondi. A causa del gran numero di calcoli eseguiti per 12 coppie di valute in una volta, il terminale si blocca semplicemente. Ma poi, dopo l'inizializzazione, i calcoli vengono eseguiti con molta parsimonia con una distribuzione temporale utilizzando un generatore di numeri casuali. In altre parole, viene scelto un intervallo a caso (da 10 a 30 minuti), dopo il quale verrà eseguito il prossimo calcolo del canale per la coppia di valute. Il valore viene scritto in una variabile globale del terminale e poi confrontato nell'Expert Advisor. Così, calcoli voluminosi per 12 coppie di valute possono funzionare perfettamente con il controller basato su processore VIA C3 800MHz senza strapparlo. Il senso consiste nell'usabilità di questo controller - dimensioni compatte, peso 1 kg, Win2000 funziona normalmente su di esso e la cosa più importante è che è senza ventola - puoi metterlo anche vicino alla testa e dormire facilmente - non produce alcun rumore come fanno i soliti PC con i loro raffreddatori. http://www.compactpc.com.tw/ebox-3851.htm
È vero, fa un po' caldo. Ma ho risolto questo problema appendendo radiatori di rame da P4 su ogni lato del case. Ora fa più fresco.
Vi accedo tramite l'utilità RawAdmin da qualsiasi luogo con internet. Cioè, ho bisogno del monitor solo per l'installazione iniziale del sistema operativo su questo minicomputer.
 
solandr:
Così i calcoli voluminosi per 12 coppie di valute funzionano perfettamente sul controller basato sul processore VIA C3 800MHz senza strappi. L'intero senso consiste nell'usabilità di questo controller in funzione - dimensioni compatte, peso 1 kg, Win2000 funziona normalmente su di esso e il più importante è che è senza ventola - puoi metterlo anche vicino alla testa e dormire bene - non fa rumore come fanno i soliti PC con i loro refrigeratori. http://www.compactpc.com.tw/ebox-3851.htm
È vero, fa un po' caldo. Ma ho risolto questo problema appendendo radiatori di rame da P4 su ogni lato del case. Ora fa più fresco.
Vi accedo tramite l'utilità RawAdmin da qualsiasi luogo con internet. Cioè, ho bisogno del monitor solo per l'installazione iniziale del sistema operativo su questo minicomputer.
Quanto costa? Non sono riuscito a trovare subito un prezzo.
 
Rosh:
Quanto costa un giocattolo come questo? Non sono riuscito a trovare subito un prezzo.

L'ho comprato per 185USD per il prodotto stesso + 70USD per un 2.5HD 40GB. Ma in Russia probabilmente costerebbe il doppio.
 

Qui ho visto di nuovo l'errore descritto. Penso che si verifichi più spesso in un mercato inattivo. Quando il mercato è molto inattivo, l'errore appare molto regolarmente. Quando il mercato è attivo, l'errore potrebbe non verificarsi per molto tempo. Quando il mercato è attivo, l'errore può rimanere per molto tempo. Ecco la descrizione dell'errore.
All'inizio, quando si apre il terminale, l'asse del prezzo normale scompare verticalmente a destra. Può accadere, per esempio, su 8 grafici su 12. Può essere diverso ogni volta. Screenshot qui sotto. Allo stesso tempo non vediamo nessun messaggio di errore nel log!
Spegniamo il terminale e lo riaccendiamo. I grafici tornano allo stato normale, ma nel log del terminale appare il seguente record di errore:
2006.10.31 12:20:30 HistoryBase: 48 errori in 'WS_AUDJPYm1440'
2006.10.31 12:20:30 HistoryBase: 42 errori in 'WS_NZDUSDm1440'
2006.10.31 12:20:30 HistoryBase: 272 errori in 'WS_EURJPYm1440'
2006.10.31 12:20:30 HistoryBase: 272 errori in 'WS_EURCHFm1440'
2006.10.31 12:20:30 HistoryBase: 272 errori in 'WS_AUDUSDm1440'
2006.10.31 12:20:30 HistoryBase: 272 errori in 'WS_EURGBPm1440'
2006.10.31 12:20:30 HistoryBase: 273 errori in 'WS_USDJPYm1440'
2006.10.3131 12:20:30 HistoryBase: 272 errori in 'WS_USDCADm1440'
2006.10.31 12:20:30 HistoryBase: 273 errori in 'WS_GBPUSDm1440'
2006.10.31 12:20:30 HistoryBase: 78 errori in 'WS_CHFJPYm1440'
2006.10.31 12:20:29 HistoryBase: 273 errori in 'WS_USDCHFm1440'
2006.10.3131 12:20:29 HistoryBase: 273 errori in 'WS_EURUSDm1440'
2006.10.31 12:19:59 HistoryBase: 48 errori in 'WS_AUDJPYm1440'
2006.10.31 12:19:59 HistoryBase: 42 errori in 'WS_NZDUSDm1440'
2006.10.31 12:19:59 HistoryBase: 272 errori in 'WS_EURJPYm1440'
2006.10.10.31 12:19:59 HistoryBase: 272 errori in 'WS_EURCHFm1440'
2006.10.31 12:19:59 HistoryBase: 272 errori in 'WS_AUDUSDm1440'
2006.10.31 12:19:59 HistoryBase: 272 errori in 'WS_EURGBPm1440'
2006.10.3131 12:19:59 HistoryBase: 273 errori in 'WS_USDJPYm1440'
2006.10.31 12:19:59 HistoryBase: 272 errori in 'WS_USDCADm1440'
2006.10.31 12:19:59 HistoryBase: 273 errori in 'WS_GBPUSDm1440'
2006.10.31 12:19:59 HistoryBase: 78 errori in 'WS_CHFJPYm1440'
2006.10.31 12:19:59 HistoryBase: 273 errori in 'WS_USDCHFm1440'
2006.10.31 12:19:59 HistoryBase: 273 errori in 'WS_EURUSDm1440'

Perché questa registrazione ripetuta per 12 coppie di valute? Forse il log contiene informazioni sugli errori che si sono verificati prima che il terminale fosse spento, ma che non sono stati emessi in tempo? Suppongo che un errore non possa essere escluso da qualche parte nella logica di apertura-chiusura dei file sia da Expert Advisor che dal terminale stesso. Altrimenti, come potrebbe apparire questo registro ogni secondo avvio del terminale quando si verifica questo errore?

A volte, quando il terminale si avvia senza errori visivi, il log sopra descritto può anche apparire, anche se i grafici sembrano normali.












 

Ho già iniziato a testare nuovamente l'Expert Advisor su una valuta.
Ho scoperto una particolarità. L'errore
HistoryBase: 273 errori in 'WS_EURUSDm1440'.
appare nel momento in cui si apre il grafico delle quotazioni modificate.
Se non apriamo il grafico, l'errore non apparirà.

Cosa potrebbe essere? Chiusura non valida del file di quotazione modificato (errori di formato del file) o è un difetto del terminale?
Gli sviluppatori potrebbero provare a riprodurre questo problema e dare la loro opinione?

Broker InterBankFX, periodo D1, limitare il numero di barre nella finestra è 2000.
Impostazioni di Expert Advisor:
//---- Elenco di grafici da elaborare, separati da virgola (",")
extern string ChartList = "EURUSD1440m";
extern bool SundayToMonday = true;
//---- Frequenza alla quale i grafici saranno aggiornati in millisecondi
//---- Più alto è il valore, meno risorse utilizzerà lo script.
extern int RefreshLuft = 30000;

È anche permesso importare funzioni dalla DLL.

2006.10.31 14:55:53 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:55:21 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:54:49 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:54:18 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:53:46 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:53:14 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:52:43 PM HistoryBase: 273 errori in 'WS_EURUSDm1440'
2006.10.31 14:52:13 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:51:42 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:51:11 HistoryBase: 273 errori in 'WS_EURUSDm1440'.
2006.10.31 14:50:40 HistoryBase: 273 errori in 'WS_EURUSDm1440'.


 
Imessaggi di errore appaiono quando si controllano i grafici letti dal file generato.
Questi indicano la presenza degli errori più primitivi:
  • OHLC errato (per esempio, alto sotto l'apertura, ecc.)
  • volumi sbagliati o nulli
  • errore di striping delle barre del tempo, quando le barre sono interfogliate
Queste barre errate vengono automaticamente tagliate dalla storia. Controlla il tuo script in dettaglio.
 
Renat:
Controlla il tuo script in dettaglio.

Mi assicurerò di controllarlo oggi...
 
Renat:
I messaggi di errore appaiono quando si controllano i grafici letti dal file generato.
Ciò significa che sono presenti gli errori più elementari:
O, nel nostro caso, un valore Digits non valido nell'intestazione del file. ...

Indagato.
- nel codice, cambiare #define DELETE_DAY 0 a #define DELETE_DAY 1 (in modo da cancellare i lunedì, non le domeniche =)
- eseguire l'Expert Advisor con ChartList = "EURUSD1440"
- aprire il grafico autogenerato (WS_EURUSD, D1)
- andare nella directory che memorizza la storia del broker corrente
- copiare da lì file WS_EURUSD1440.file hst in qualsiasi altra directory
- chiudere MT (prima di poter cancellare l'EA - non importa)
- aprire MT

E ora la cosa più interessante =)
Prendiamo quel file, che abbiamo salvato, e lo confrontiamo con quello lasciato nella directory MT.
I diritti d'autore non sono miei (scusa, cosa? ;), e Cifre = 0. Non ha controllato ulteriormente. ...

Attenzione, non è l'EA che fa questo - può essere cancellato prima di chiudere il terminale.
Vuoi controllare?
 

komposter, il broker InterBankFX non è davvero un broker ordinario ;o). Ha alcune impostazioni specifiche, che ho già imparato durante il trading reale!
Per esempio, la funzione MarketInfo(symbol_for_work,MODE_SPREAD), che semplicemente funziona perfettamente sulla demo Alpari (dà un valore fisso in qualsiasi mercato, pari alla differenza tra Ask e Bid, espressa in punti) in InterBankFX reale può cambiare il suo valore di 1 punto. E succede molto spesso. L'ho notato per caso perché i miei ordini pendenti stanno cambiando di 1 punto qua e là ogni pochi minuti e succede di notte, cosa che non ho mai visto in Alpari.
Quindi, invece di discutere con il broker o con gli sviluppatori di MT4, ho semplicemente sostituito questa funzione con la mia, che ha risolto il problema "con poco sforzo":

int _MarketInfo(string symb_for_work)
{
if(symb_for_work=="USDCHFm") return(4);
if(symb_for_work=="CHFJPYm") return(5);
if(symb_for_work=="GBPUSDm") return(3);
if(symb_for_work=="USDCADm") return(5);
if(symb_for_work=="USDJPYm") return(3);
if(symb_for_work=="EURGBPm") return(4);
if(symb_for_work=="AUDUSDm") return(4);
if(symb_for_work=="EURCHFm") return(4);
if(symb_for_work=="EURJPYm") return(5);
if(symb_for_work=="EURUSDm") return(2);
if(symb_for_work=="NZDUSDm") return(6);
if(symb_for_work=="AUDJPYm") return(6);

return(0);
}

Spero che tu abbia capito l'antifona. ;o)))
Si potrebbe costruire qualcosa di simile in EA? Soprattutto perché tutto è molto più semplice con Digits! Per i corsi di yen è 2, e per tutti gli altri è 4.