Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 139
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Même sous Windows, les onglets ne peuvent pas être triés à l'aide de mql4.
Vous pouvez uniquement ouvrir les graphiques dans l'ordre que vous souhaitez et définir les modèles nécessaires sur ceux-ci.
Bien sûr, vous ne pouvez pas les trier, mais vous pouvez les déplacer un par un manuellement.
Quant au tri par mql, je pense que vous pouvez essayer l'option suivante :
1. Nous fermons toutes les fenêtres sauf celle où le code, le conseiller expert ou le script est en cours d'exécution.
2. ouvrir de nouvelles fenêtres dans un certain ordre, y compris celle avec le conseiller expert et les ajuster ou appliquer un modèle.
3. enfin, supprimez la fenêtre dans laquelle le code s'exécute.
Bien sûr, vous ne pouvez pas les trier, mais vous pouvez les déplacer manuellement un par un.
Quant au tri par mql, je pense que vous pouvez essayer l'option suivante :
1. Fermez toutes les fenêtres sauf celle où le code, l'Expert Advisor ou le script est en cours d'exécution.
2. ouvrir de nouvelles fenêtres dans un certain ordre, y compris celle avec le conseiller expert et les ajuster ou appliquer un modèle.
3) Enfin, supprimez la fenêtre dans laquelle le code s'exécute.
J'y ai déjà réfléchi - il y a un certain nombre de facteurs d'interférence, par exemple, un EA est en cours d'exécution sur certains des graphiques.
J'y ai déjà pensé - il y a un certain nombre de facteurs d'interférence, par exemple - un conseiller expert est en cours d'exécution sur l'un des graphiques.
ChartID
Renvoie l'ID du graphique actuel.
longChartID() ;
Valeur retournée
Valeur de type long.
ChartID
Renvoie l'ID du graphique actuel.
longChartID() ;
Valeur retournée
Valeur de type long.
И ? En quoi le fait de connaître votre ID aide-t-il à trier les graphiques ouverts sur lesquels les EA fonctionnent ? :)
Je veux dire le graphique sur lequel le conseiller expert travaille.
Artyom Trishkin:
J'y ai déjà réfléchi - il y a quelques facteurs de confusion, par exemple -sur l'un des graphiques le conseiller expert fonctionneJe parle du graphique sur lequel l'EA fonctionne.
Artyom Trishkin:
J'y ai déjà pensé - il y a un certain nombre de facteurs d'interférence, par exemple -sur certains des graphiques, le conseiller expert fonctionneJe parle du graphique sur lequel l'EA fonctionne.
Artyom Trishkin:
J'y ai déjà pensé - il y a un certain nombre de facteurs d'interférence, par exemple - l'EA fonctionne sur certains des graphiques.Je comprends que dans un dossier de profil, je dois renommer les caractères dans un certain ordre - le réenregistrement des caractères se produit lorsque je change de profil ou que je ferme le terminal - il est donc évident que je dois travailler avec des fichiers dont le profil est fermé. Mais, tout cela nécessite d'appeler des bibliothèques. C'est comme ça, je pense.
Chers utilisateurs du forum !
J'ai une idée pour ajouter une condition à la fonction de calcul duvolume de la position: si le dernier ordre s'est clôturé avec une perte, le suivant sera placé avec un ratio accru.
Je l'ai déjà écrit mais l'un des retours ne fonctionne pas, puis l'autre.
Veuillez me conseiller sur ce que je fais de mal.
double GetLot(int type)
{
if(CountOrdersType(type)==0 || LastOrderTypeLots(type)>Max_Lot)
{
si( !Auto_Lot)return(Start_Lot) ;
return(AccountBalance()*(Lot_Percents/100)*AccountLeverage()/MarketInfo(Symbol(),MODE_LOTSIZE)); }
{ if(!History)return(Start_Lot) ;
datetime time=0;double lastlot=0;int lastop=0;double prof=0 ;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)&&OrderSymbol()==Symbol()&&OrderMagicNumber()==Magic&&OrderType()<=1)
{
if(time<OrderCloseTime()){time=OrderCloseTime();lastlot=OrderLots();lastop=OrderType();prof=OrderProfit();}
}
si(prof < 0 && OrderMagicNumber() == Magic)lot=OrderLots() ;
retour (lot * multiplicateur historique); }
return(LastOrderTypeLots(type)*Lot_Multiplier) ;
}
Vous ne voyez aucun problème à supprimer les graphiques existants et à les rouvrir dans le bon ordre au cas où un EA ou des indicateurs sont en cours d'exécution sur l'un d'entre eux ?
Réflexion,
Concernant la suppression
int i=0,limit=100;
while(i<limit)
{
if(ChartNext(Chart_ID)<0) break;
ChartClose(ChartNext(Chart_ID));
i++;
}