Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 152

 
Ciao, sto scrivendoi prezzi di chiusura di altrevalute (in diversi colori) e l'ultima barranel buffer dell'indicatore.Di conseguenza, avvio l'indicatore - tutto è corretto. Poi comincio a scrivere nuove barre. Se cambio timeframes avanti e indietro, il grafico è bello, ma ottengo barre orribili. Come posso rimediare? L'EA impazzisce :)
prezzo[i] = ((iClose(nome, 0, i))/MarketInfo(nome, MODE_POINT))/(1/MarketInfo(nome, MODE_TICKVALUE))
 
Potete dirmi cos'è questo errore? 2017.03.17 05:32:09.929 FxMath_DayTrader_USDJPY USDJPY,Daily: impossibile scaricare l'immagine dal file \Images\rfx1.com\image\fxmath.bmp. Codice di errore 5020

 
MONTE_CRISTO:
Potete dirmi cos'è questo errore? 2017.03.17 05:32:09.929 FxMath_DayTrader_USDJPY USDJPY,Daily: impossibile scaricare l'immagine dal file \Images\rfx1.com\image\fxmath.bmp. Codice di errore 5020

Impossibile scaricare l'immagine all'indirizzo specificato.
 
Aleksandr Hudilainen:
Impossibile caricare l'immagine all'indirizzo specificato.

2017.03.17 05:56:02.237 FxMath_DayTrader_USDJPY USDJPY,Daily: Alert: UrlLinkLabel : Could not open URL link. hResult = 2 Error 4202 - object does not exist. che è cosa?

 
MONTE_CRISTO:

2017.03.17 05:56:02.237 FxMath_DayTrader_USDJPY USDJPY,Daily: Alert: UrlLinkLabel : Could not open URL link. hResult = 2 Error 4202 - object does not exist. che è cosa?


Impossibile aprire il link dell'URL. HResult = 2 Errore 4202 - l'oggetto non esiste.
 
Nikolay Fedyay:

Grazie.

Che ne dite se volete conoscere il punto di incrocio quando non ci sono ancora barre, cioè una data nel futuro.

si può calcolare "tra quante barre ci sarà un'intersezione" (solo geometria scolastica)

Ma la data può essere solo approssimata da questo, poiché le barre si formano solo quando il mercato è aperto, cioè sono diverse per ogni strumento.

Semplificato, se si conosce il calendario in anticipo:

  • aggiunge 24 ore al giorno corrente, se risulta essere sabato/domenica lo si salta, se è un giorno festivo generale lo si salta, se è un giorno festivo lo si salta.
  • Per W1 e superiori bisogna tener conto che la barra settimanale inizia da sabato a domenica, M1 - come secondo il calendario
  • per meno di un giorno è necessario considerare l'orario di apertura/chiusura del mercato e l'orario di lavoro del vostro DC
  • ad un cambio di data (al mattino, ai primi ticks) bisogna ripetere tutti i calcoli precedenti

che è così disordinato, che MT ha un grosso problema con questo :-)

 
Sto imparando a scrivere MQL4 Expert Advisors da circa tre settimane! Ho scritto un EA compilato, nessun errore o avvertimento e tutto sembra a posto. Ho trovato un grande MA che non vuole funzionare. Forse posso chiedere qui dove ho sbagliato e cosa ho fatto di sbagliato. Se qualcuno mi dice cosa fare, fatemelo sapere. Temo che questa sia la mia prima volta qui e come farlo. Anche se capisco come.
 

Ciao!

Potete dirmi quali funzioni (funzioni utente, funzioni speciali, funzioni standard) sono utilizzate per comunicare tra i terminali? Esempio:[nome del prodotto cancellato dal moderatore](copiatore di operazioni per il terminale MetaTrader 4, copia (sincronizza, duplica) le operazioni da qualsiasi conto) . E perché non dipende dalle zecche?

 
nickor29:

Ciao!

Potete dirmi quali funzioni (funzioni utente, funzioni speciali, funzioni standard) sono utilizzate per comunicare tra i terminali? Esempio:[nome del prodotto cancellato dal moderatore](copiatore di operazioni per il terminale MetaTrader 4, copia (sincronizza, duplica) le operazioni da qualsiasi conto) . E perché non dipende dalle zecche?


Funzioni di lavoro con i file, standard. Non dipende dai tick, perché funziona in un timer.
 

C'è un'alternativa alla conversione da int a double per le operazioni matematiche?

int NOL_Sell=1; //по факту счетчик - поэтому в double сразу нельзя
int N_Sell=2;   //по факту счетчик - поэтому в double сразу нельзя

double ProcTotalSell=StrToDouble(IntegerToString(NOL_Sell))/StrToDouble(IntegerToString(N_Sell))*100.0;