Qual è la necessità pratica di tutti questi controlli?
Perché controllare, per esempio, se l'esperto è autorizzato a fare trading? Chi è l'obiettivo? Un utente down? La bandiera del permesso di commercio è impostata nel terminale una volta, tutto qui. Perché dovremmo controllarlo ad ogni spunta? O controllarlo ogni n secondi? L'Expert Advisor non ha altro da fare?
Perché controllare se il mercato è aperto? Il mercato apre quando vuole? O qualche strumento scambia alle 16 di oggi e alle 14 di domani e questo casino succede sempre? Se il programma di trading è noto e non cambia mai, perché dovresti controllare ogni tick o ogni n-secondo se il mercato è aperto?
E questo divertente consiglio sull'invio di una richiesta di trading per sapere se il mercato è aperto? Per chi ama farsi una risata? O per un utente soddisfatto?
Qual è la necessità pratica di tutti questi controlli?
Perché controllare, per esempio, se l'esperto è autorizzato a fare trading? Chi è l'obiettivo? Un utente down? La bandiera del permesso di commercio è impostata nel terminale una volta, tutto qui. Perché dovremmo controllarlo ad ogni spunta? O controllarlo ogni n secondi? L'Expert Advisor non ha altro da fare?
Perché controllare se il mercato è aperto? Il mercato apre quando vuole? O qualche strumento scambia alle 16 di oggi e alle 14 di domani e questo casino succede sempre? Perché, se il programma di trading è noto e non cambia mai, dovremmo controllare ogni tick o ogni n-secondo se il mercato è aperto?
I compiti sono diversi. Non posso parlare per tutti, ma il mio compito era quello di aprire ordini per diversi simboli da un EA e alcuni di essi avevano diverse sessioni di trading (intendo la possibilità di lavorare con qualsiasi set di simboli disponibili per il conto).
Pertanto, tutti i controlli sono stati fatti non in OnTick ma in OnTimer. Ho descritto la mia versione nella pagina precedente. Anche se, in linea di principio, è una specie di controllo "no tick - no trade".
... Il mercato si apre quando vuole? O qualche strumento scambia dalle 16 di oggi e dalle 14 di domani ed è sempre un casino?
...
Succede... Ci sono diverse feste... Diversi paesi. Il Forex ha funzionato, ma l'oro e l'argento no.
E se hai l'opportunità di usare i futures sopra il Forex, la chiusura anticipata delle sessioni, e i cut-off per aver superato un limite e altri trucchi accadono.
opzione sorprendente -- la cosa principale è eseguire l'advisor prima che i mercati aprano -- e se non lo spegni, non sovraccarichi, non cambi il timeframe -- allora l'advisor non funzionerà mai, perché la bandiera sarà sempre nello stato "no
p.s. thread di consigli divertenti
p.s.2. Particolarmente strano quando dicono che in un mercato chiuso
Controllare il ritardo tra i tick e dedurre un trade vicino su questa base è una cattiva decisione.
Tuttavia: 1) se la risposta non è "i trade sono chiusi", ma "è possibile aprire un trade a questo prezzo" (alle condizioni attuali); 2) sapendo in anticipo che se una quotazione è più vecchia di xx minuti, allora il server è garantito per restituire fuori quotazioni su un tentativo di aprire un ordine; allora sarebbe accettabile. IMHO, naturalmente.
Ho commutato l'Expert Advisor in modalità OnTimer() e ora quando il mercato è chiuso non lo capisce e cerca di fare trading, in generale contatta il server e ovviamente riceve errori e intasa i log. GetLastError() = Il mercato è chiuso. Quali altre condizioni possono essere usate per controllare se il mercato è chiuso o in un fine settimana?
Una volta ho sperimentato conSymbolInfoSessionTrade() e Quote e si è scoperto che i dati di queste funzioni corrispondono solo approssimativamente alla realtà, e in alcuni casi non lo fanno.
Forse una combinazione di diversi controlli darà una risposta inequivocabile alla domanda se lo scambio è finito?
Qual è la necessità pratica di tutti questi controlli?
Perché controllare, per esempio, se l'esperto è autorizzato a fare trading? Chi è l'obiettivo? Un utente down? La bandiera del permesso di commercio è impostata nel terminale una volta, tutto qui. Perché dovremmo controllarlo ad ogni spunta? O controllarlo ogni n secondi? L'Expert Advisor non ha altro da fare?
Perché controllare se il mercato è aperto? Il mercato apre quando vuole? O qualche strumento scambia alle 16 di oggi e alle 14 di domani e questo casino succede sempre? Se il programma di trading è noto e non cambia mai, perché dovresti controllare ogni tick o ogni n-secondo se il mercato è aperto?
E questo divertente consiglio sull'invio di una richiesta di trading per sapere se il mercato è aperto? Per chi ama farsi una risata? O per un utente soddisfatto?
Niente spunta, niente scambio.
Qual è la necessità pratica di tutti questi controlli?
Perché controllare, per esempio, se l'esperto è autorizzato a fare trading? Chi è l'obiettivo? Un utente down? La bandiera del permesso di commercio è impostata nel terminale una volta, tutto qui. Perché dovremmo controllarlo ad ogni spunta? O controllarlo ogni n secondi? L'Expert Advisor non ha altro da fare?
Perché controllare se il mercato è aperto? Il mercato apre quando vuole? O qualche strumento scambia alle 16 di oggi e alle 14 di domani e questo casino succede sempre? Perché, se il programma di trading è noto e non cambia mai, dovremmo controllare ogni tick o ogni n-secondo se il mercato è aperto?
E questo trucco di inviare una richiesta di trading per vedere se il mercato è aperto?
Nessuna spunta - nessuno scambio.
I compiti sono diversi. Non posso parlare per tutti, ma il mio compito era quello di aprire ordini per diversi simboli da un EA e alcuni di essi avevano diverse sessioni di trading (intendo la possibilità di lavorare con qualsiasi set di simboli disponibili per il conto).
Pertanto, tutti i controlli sono stati fatti non in OnTick ma in OnTimer. Ho descritto la mia versione nella pagina precedente. Anche se, in linea di principio, è una specie di controllo "no tick - no trade".
... Il mercato si apre quando vuole? O qualche strumento scambia dalle 16 di oggi e dalle 14 di domani ed è sempre un casino?
...
Succede... Ci sono diverse feste... Diversi paesi. Il Forex ha funzionato, ma l'oro e l'argento no.
E se hai l'opportunità di usare i futures sopra il Forex, la chiusura anticipata delle sessioni, e i cut-off per aver superato un limite e altri trucchi accadono.
Ecco un'altra opzione per i quattro:
opzione sorprendente -- la cosa principale è eseguire l'advisor prima che i mercati aprano -- e se non lo spegni, non sovraccarichi, non cambi il timeframe -- allora l'advisor non funzionerà mai, perché la bandiera sarà sempre nello stato "no
p.s. thread di consigli divertenti
p.s.2. Particolarmente strano quando dicono che in un mercato chiuso
MarketInfo(Symbol(), MODE_BID)dà ZERO.
Controllare il ritardo tra i tick e dedurre un trade vicino su questa base è una cattiva decisione.
Controllare il ritardo tra i tick e dedurre un trade vicino su questa base è una cattiva decisione.
1) se la risposta non è "i trade sono chiusi", ma "è possibile aprire un trade a questo prezzo" (alle condizioni attuali);
2) sapendo in anticipo che se una quotazione è più vecchia di xx minuti, allora il server è garantito per restituire fuori quotazioni su un tentativo di aprire un ordine;
allora sarebbe accettabile. IMHO, naturalmente.
C' è stata qualche discussione su questo problema per MT5.
L'opzione corretta per me è usare SymbolInfoSessionTrade() per determinare se le compravendite sono disponibili.
Ho commutato l'Expert Advisor in modalità OnTimer() e ora quando il mercato è chiuso non lo capisce e cerca di fare trading, in generale contatta il server e ovviamente riceve errori e intasa i log. GetLastError() = Il mercato è chiuso. Quali altre condizioni possono essere usate per controllare se il mercato è chiuso o in un fine settimana?
Durata = (valore impostato in millisecondi. es. 6 ore = 1000*60*60*6)
if(GetLastError()==132(il mercato è chiuso) ) Sleep (Durata);
Una volta ho sperimentato conSymbolInfoSessionTrade() e Quote e si è scoperto che i dati di queste funzioni corrispondono solo approssimativamente alla realtà, e in alcuni casi non lo fanno.
Forse una combinazione di diversi controlli darà una risposta inequivocabile alla domanda se lo scambio è finito?
Wow, è un sacco di testo.
MarketInfo(Symbol(),MODE_TRADEALLOWED)