Leo59: C'est étrange, je pense que les développeurs ont fait une erreur. En quoi les fonctions sont-elles différentes en dehors du nom ?
Permet d'obtenir l'heure de début et de fin d'une session de cotation spécifiée pour le symbole et le jour de la semaine spécifiés.
и
Permet d'obtenir l'heure de début et l'heure de fin de la session de trading spécifiée pour le symbole et le jour de la semaine spécifiés.
Il est possible d'en faire trop si l'on ne comprend pas)
Il y a des instruments qui sont cotés à un moment donné, mais qui ne peuvent être négociés qu'à certains moments, c'est pourquoi il y a deux fonctions.
Veuillez poster vos questions sur MQL4 MT4 MetaTrader 4 dans le fil de discussionQuestions pour les débutants de MQL4 MT4 MetaTrader 4. Surtout s'il s'agit d'opérations commerciales.
Renat Akhtyamov: Messieurs, comment puis-je savoir rapidement quelle est la position d'un signal dans le classement ?
Cela ne peut être découvert que pour votre signal - "Signaux" -> "Mes signaux" et au début du nom du signal seront des chiffres - c'est le numéro de la position dans le classement de la vitrine du signal.
Vladimir Karputov: Vous ne pouvez le découvrir que pour votre signal - "Signaux" -> "Mes signaux" et au début du nom du signal il y aura des chiffres - c'est le numéro de position dans le classement de la vitrine du signal.
Renat Akhtyamov: Messieurs, comment savoir rapidement où se situe le signal dans le classement ?
De manière programmée ? Comme ça.
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()); } }
Les gars, j'ose demander à nouveau, car ma question est perdue parmi les messages
Il y a une construction comme ça, qui passe en revue tous les graphiques ouverts dans le terminal :
for(long currChart = ChartFirst(); currChart != -1; currChart=ChartNext(currChart)) { if(currChart == график тестера) continue; // Что сюда написать? ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen); }
Comment puis-je savoir que le graphique n'est pas le principal, mais qu'il est ouvert en mode "Testeur" et le sauter ?
Merci !
Quelque chose n'est clairement pas dans les propriétés. Et si, en mode testeur, vous créez quelque chose sur le graphique, par exemple un bouton avec un nom délicat, puis vérifiez sa présence ?
C'est étrange, je pense que les développeurs ont fait une erreur. En quoi les fonctions sont-elles différentes en dehors du nom ?
Permet d'obtenir l'heure de début et de fin d'une session de cotation spécifiée pour le symbole et le jour de la semaine spécifiés.
и
Permet d'obtenir l'heure de début et l'heure de fin de la session de trading spécifiée pour le symbole et le jour de la semaine spécifiés.
Il est possible d'en faire trop si l'on ne comprend pas)
Il y a des instruments qui sont cotés à un moment donné, mais qui ne peuvent être négociés qu'à certains moments, c'est pourquoi il y a deux fonctions.
Les gars, j'ose demander à nouveau, car ma question est perdue parmi les messages
Il y a une construction comme ça, qui passe en revue tous les graphiques ouverts dans le terminal :
if(currChart == график тестера) continue; // Что сюда написать?
ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen);
}
Comment puis-je savoir que le graphique n'est pas le principal, mais qu'il est ouvert en mode "Testeur" et le sauter ?
Merci !
Bonjour chers collègues, pourriez-vous suggérer un gestionnaire pour une erreur de ce type ?
Merci.
Messieurs, comment puis-je savoir rapidement quelle est la position d'un signal dans le classement ?
Vous ne pouvez le découvrir que pour votre signal - "Signaux" -> "Mes signaux" et au début du nom du signal il y aura des chiffres - c'est le numéro de position dans le classement de la vitrine du signal.
Messieurs, comment savoir rapidement où se situe le signal dans le classement ?
De manière programmée ? Comme ça.
{
//--- запрашиваем общее количество сигналов в базе
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());
}
}
De manière programmée ? Comme ça.
{
//--- запрашиваем общее количество сигналов в базе
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());
}
}
Les gars, j'ose demander à nouveau, car ma question est perdue parmi les messages
Il y a une construction comme ça, qui passe en revue tous les graphiques ouverts dans le terminal :
if(currChart == график тестера) continue; // Что сюда написать?
ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen);
}
Comment puis-je savoir que le graphique n'est pas le principal, mais qu'il est ouvert en mode "Testeur" et le sauter ?
Merci !
Quelque chose n'est clairement pas dans les propriétés. Et si, en mode testeur, vous créez quelque chose sur le graphique, par exemple un bouton avec un nom délicat, puis vérifiez sa présence ?