Si prega di postare le vostre domande MQL4 MT4 MetaTrader 4 nel threadMQL4 MT4 MetaTrader 4 Beginners Question. Soprattutto se si tratta di operazioni commerciali.
Renat Akhtyamov: Signori, come posso trovare rapidamente la posizione di un segnale nel rating?
Questo può essere scoperto solo per il tuo segnale - "Segnali" -> "I miei segnali" e all'inizio del nome del segnale saranno numeri - questo è il numero di posizione nella classifica della vetrina del segnale.
Vladimir Karputov: Puoi scoprirlo solo per il tuo segnale - "Segnali" -> "I miei segnali" e all'inizio del nome del segnale ci saranno dei numeri - questo è il numero di posizione nella classifica della vetrina dei segnali.
Renat Akhtyamov: Signori, come posso scoprire rapidamente dove si trova il segnale nella classifica?
In modo programmatico? Come questo.
voidOnStart() { //--- запрашиваем общее количество сигналов в базе int total=SignalBaseTotal(); //--- цикл по всем сигналам for(int i=0;i<total;i++) { //--- выбираем сигнал для дальнейшей работы if(SignalBaseSelect(i)) { //--- получение свойств сигнала long id =SignalBaseGetInteger(SIGNAL_BASE_ID); // id сигнала long pips =SignalBaseGetInteger(SIGNAL_BASE_PIPS); // результат торговли в пипсах long subscr=SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS); // количество подписчиков string name =SignalBaseGetString(SIGNAL_BASE_NAME); // имя сигнала double price =SignalBaseGetDouble(SIGNAL_BASE_PRICE); // цена подписки на сигнал string curr =SignalBaseGetString(SIGNAL_BASE_CURRENCY); // валюта сигнала long rating=SignalBaseGetInteger(SIGNAL_BASE_RATING); // рейтинг и есть //--- выводим все прибыльные бесплатные сигналы с ненулевым количеством подписчиков if(price==0.0 && pips>0 && subscr>0) PrintFormat("id=%d, name=\"%s\", currency=%s, pips=%d, subscribers=%d",id,name,curr,pips,subscr); } elsePrintFormat("Ошибка выбора сигнала. Код ошибки=%d",GetLastError()); } }
voidOnStart() { //--- запрашиваем общее количество сигналов в базе int total=SignalBaseTotal(); //--- цикл по всем сигналам for(int i=0;i<total;i++) { //--- выбираем сигнал для дальнейшей работы if(SignalBaseSelect(i)) { //--- получение свойств сигнала long id =SignalBaseGetInteger(SIGNAL_BASE_ID); // id сигнала long pips =SignalBaseGetInteger(SIGNAL_BASE_PIPS); // результат торговли в пипсах long subscr=SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS); // количество подписчиков string name =SignalBaseGetString(SIGNAL_BASE_NAME); // имя сигнала double price =SignalBaseGetDouble(SIGNAL_BASE_PRICE); // цена подписки на сигнал string curr =SignalBaseGetString(SIGNAL_BASE_CURRENCY); // валюта сигнала long rating=SignalBaseGetInteger(SIGNAL_BASE_RATING); // рейтинг и есть //--- выводим все прибыльные бесплатные сигналы с ненулевым количеством подписчиков if(price==0.0 && pips>0 && subscr>0) PrintFormat("id=%d, name=\"%s\", currency=%s, pips=%d, subscribers=%d",id,name,curr,pips,subscr); } elsePrintFormat("Ошибка выбора сигнала. Код ошибки=%d",GetLastError()); } }
Ragazzi, oso chiedere di nuovo, visto che la mia domanda si perde tra i messaggi
C'è una costruzione come questa, passa attraverso tutti i grafici aperti nel terminale:
for(long currChart = ChartFirst(); currChart != -1; currChart=ChartNext(currChart)) { if(currChart == график тестера) continue; // Что сюда написать? ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen); }
Come posso scoprire che il grafico non è quello principale, ma aperto in modalità tester e saltarlo?
Grazie!
È chiaro che qualcosa non c'è nelle proprietà. E se nella modalità tester si crea qualcosa sul grafico, per esempio un pulsante con un nome difficile e poi si controlla la sua presenza?
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Strano, penso che gli sviluppatori abbiano incasinato qualcosa. Come sono diverse le funzioni a parte il Nome?
Permette di ottenere l'ora di inizio e di fine di una sessione di quotazione per il simbolo e il giorno della settimana specificati.
и
Permette di ottenere l'ora di inizio e di fine della sessione di trading specificata per il simbolo e il giorno della settimana specificati.
È possibile esagerare se non lo si capisce)
Ci sono strumenti che sono quotati in un momento, ma possono essere scambiati solo in certi momenti, ecco perché ci sono due funzioni.
Ragazzi, oso chiedere di nuovo, visto che la mia domanda si perde tra i messaggi
C'è una costruzione come questa, passa attraverso tutti i grafici aperti nel terminale:
if(currChart == график тестера) continue; // Что сюда написать?
ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen);
}
Come posso scoprire che il grafico non è quello principale, ma aperto in modalità tester e saltarlo?
Grazie!
Ciao colleghi, potreste suggerire un gestore per un errore come questo?
Grazie.
Signori, come posso trovare rapidamente la posizione di un segnale nel rating?
Puoi scoprirlo solo per il tuo segnale - "Segnali" -> "I miei segnali" e all'inizio del nome del segnale ci saranno dei numeri - questo è il numero di posizione nella classifica della vetrina dei segnali.
Signori, come posso scoprire rapidamente dove si trova il segnale nella classifica?
In modo programmatico? Come questo.
{
//--- запрашиваем общее количество сигналов в базе
int total=SignalBaseTotal();
//--- цикл по всем сигналам
for(int i=0;i<total;i++)
{
//--- выбираем сигнал для дальнейшей работы
if(SignalBaseSelect(i))
{
//--- получение свойств сигнала
long id =SignalBaseGetInteger(SIGNAL_BASE_ID); // id сигнала
long pips =SignalBaseGetInteger(SIGNAL_BASE_PIPS); // результат торговли в пипсах
long subscr=SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS); // количество подписчиков
string name =SignalBaseGetString(SIGNAL_BASE_NAME); // имя сигнала
double price =SignalBaseGetDouble(SIGNAL_BASE_PRICE); // цена подписки на сигнал
string curr =SignalBaseGetString(SIGNAL_BASE_CURRENCY); // валюта сигнала
long rating=SignalBaseGetInteger(SIGNAL_BASE_RATING); // рейтинг и есть
//--- выводим все прибыльные бесплатные сигналы с ненулевым количеством подписчиков
if(price==0.0 && pips>0 && subscr>0)
PrintFormat("id=%d, name=\"%s\", currency=%s, pips=%d, subscribers=%d",id,name,curr,pips,subscr);
}
else PrintFormat("Ошибка выбора сигнала. Код ошибки=%d",GetLastError());
}
}
In modo programmatico? Come questo.
{
//--- запрашиваем общее количество сигналов в базе
int total=SignalBaseTotal();
//--- цикл по всем сигналам
for(int i=0;i<total;i++)
{
//--- выбираем сигнал для дальнейшей работы
if(SignalBaseSelect(i))
{
//--- получение свойств сигнала
long id =SignalBaseGetInteger(SIGNAL_BASE_ID); // id сигнала
long pips =SignalBaseGetInteger(SIGNAL_BASE_PIPS); // результат торговли в пипсах
long subscr=SignalBaseGetInteger(SIGNAL_BASE_SUBSCRIBERS); // количество подписчиков
string name =SignalBaseGetString(SIGNAL_BASE_NAME); // имя сигнала
double price =SignalBaseGetDouble(SIGNAL_BASE_PRICE); // цена подписки на сигнал
string curr =SignalBaseGetString(SIGNAL_BASE_CURRENCY); // валюта сигнала
long rating=SignalBaseGetInteger(SIGNAL_BASE_RATING); // рейтинг и есть
//--- выводим все прибыльные бесплатные сигналы с ненулевым количеством подписчиков
if(price==0.0 && pips>0 && subscr>0)
PrintFormat("id=%d, name=\"%s\", currency=%s, pips=%d, subscribers=%d",id,name,curr,pips,subscr);
}
else PrintFormat("Ошибка выбора сигнала. Код ошибки=%d",GetLastError());
}
}
Ragazzi, oso chiedere di nuovo, visto che la mia domanda si perde tra i messaggi
C'è una costruzione come questa, passa attraverso tutti i grafici aperti nel terminale:
if(currChart == график тестера) continue; // Что сюда написать?
ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen);
}
Come posso scoprire che il grafico non è quello principale, ma aperto in modalità tester e saltarlo?
Grazie!
È chiaro che qualcosa non c'è nelle proprietà. E se nella modalità tester si crea qualcosa sul grafico, per esempio un pulsante con un nome difficile e poi si controlla la sua presenza?