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
Se questo tuo orologio è un esperto (non un indicatore), allora con tutta probabilità è semplicemente in loop, quindi non ha problemi a ricevere informazioni su più simboli. Questo è quello che ho scritto prima, che non c'è davvero un grande problema con i tick in Expert Advisor, perché può essere messo in loop. Ma con un indicatore questo numero non funziona.
Per quanto riguarda i diversi sistemi operativi, è ancora un mistero per me. Come ho scritto sopra, funziona bene per me su 7, ma altre persone non ce l'hanno per qualche motivo. Probabilmente qualcosa a che fare con i diritti di accesso...
A proposito, per quanto riguarda le "librerie di sostituzione", provate a prendere i file user32 e kernel32 da WinXP(2003) e a metterli nella cartella Experts\libraries sul computer dove è installato Vista(2008). E se funzionasse? :) ...anche se ne dubito...
Lo dirò direttamente sui ticchettii, sono dalla "tua parte" ma per quanto riguarda l'orologio, a giudicare dalla tua risposta, non hai capito il mio pensiero che proverò con il codice:
int init()
{
ObjectCreate("ServerTime", OBJ_LABEL, 0,0,0,0,0;)
ObjectSet("ServerTime", OBJPROP_CORNER, 3);
ObjectSet("ServerTime", OBJPROP_XDISTANCE, 10);
ObjectSet("ServerTime", OBJPROP_YDISTANCE, 37);
ObjectSetText("ServerTime", "", 20, "Arial", Green);
ritorno;
}
int start()
{
...
ritorno;
}
Non voglio mettere in loop le risorse ... Cioè, per combinare tutti i tick di tutte le quotazioni in un grafico?
Cosa vi fa pensare, signori, che questa sia un'aggressione? È solo un richiamo ai principi della cortesia. Prima di offrire qualcosa, devi mettere qualcosa in cambio. Se non hai niente puoi solo chiedere e questa è la verità.
Non sono molto esperto di sistemi a 64 bit ma sono molto interessato a questo argomento, ma siccome non posso fare nulla per aiutare qui, devo chiedere alle persone che sanno. Non ci vedo nulla di vergognoso.
Cosa vi fa pensare, signori, che questa sia un'aggressione? È solo un richiamo ai principi della cortesia. Prima di offrire qualcosa, devi mettere qualcosa in cambio. Se non hai niente puoi solo chiedere e questa è la verità.
Non sono molto esperto di sistemi a 64 bit ma sono molto interessato a questo argomento, ma siccome non posso fare nulla per aiutare qui, devo chiedere alle persone che sanno. Non ci vedo niente di male.
Credo di essermi fatto prendere dalle mie emozioni, ma lei è un moderatore e si guarda la bocca, grazie per l'osservazione e cercherò di raffreddare il mio ardore.
Addio. Alexander.
Ecco il pensiero """" se tutti questi tick possono essere sommati e applicati al mio Expert Advisor o alla finestra dove lavora l'Expert Advisor"" e finire con molte più zecche di un preventivo per una sola coppia.
Non voglio mettere in loop le risorse ... Cioè, volete combinare tutti i tick di tutte le quotazioni in un grafico?
Un EA reagisce solo ai propri tick, quindi non si può "aggiungere" nulla. Ci sono solo due opzioni: o si imposta un timer (come ho suggerito), o si esegue in parallelo un EA in loop su un altro grafico, che "spunta" il tuo EA. E in questo EA in loop, è possibile specificare le condizioni in cui "spunterà". Per esempio, se il valore di TimeCurrent() è cambiato, come nel vostro caso. Anche se, di nuovo, non vedo il punto di avere un EA aggiuntivo, se l'EA iniziale (cioè il tuo orologio) può fare lo stesso.
Comunque, ecco la versione finale della funzione:
// push ebp; move ebp,esp; push 01; push 02; push MT4InternMsg; push hWnd; mov eax,PostMsgAddr; call eax; pop ebp; ret 0010;
Per quanto ho capito, usate il comando PostMessageA(hwnd, RegisterWindowMessageA("MetaTrader4_Internal_Message"), 2, 1). Questo comando emula i tick per l'Expert Advisor (secondo la descrizione in WinUser32.h). Per gli indicatori i tick non vengono emulati, e di conseguenza l'indicatore non viene aggiornato. Sfortunatamente, non ho WinXP per i test, ma se i tick dell'indicatore sono emulati in XP, sono sorpreso.
Ho anche controllato il tuo algoritmo
sotto il debugger VisualStudio e il risultato che ho ottenuto nell'array TimerCode non corrispondeva affatto ai risultati attesi. Sei sicuro che questo algoritmo non contenga errori? Posso darvi il codice e uno screenshot del risultato. Se volete, possiamo discuterne più in dettaglio.
Anche se questo argomento non è molto attuale ora, ma penso che ci siano ancora quelli che non hanno fretta di passare alle nuove costruzioni :) Quindi, se qualcuno non ha il tick timer in Win7/Win8, è necessario disabilitare lo strumento DEP o aggiungere questa funzione:
E alla fine questa variante: