Questions des débutants MQL5 MT5 MetaTrader 5 - page 973

 
Sprut112:
Pouvez-vous utiliser cette variante de calcul des lots en pourcentages, en remplaçant MarketInfo bien sûr ?
C'est pratique car il prend en compte le symbole sur lequel il est calculé, car eurusd lot et eurnzd lot sont deux grandes différences. Je veux savoir comment l'écrire pour mt5 et si c'est possible.
OP_LOTS =NormalizeDouble(AccountInfoDouble(ACCOUNT_BALANCE)* _LosPercent / 100 /SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE)/(pp),dg);

Si vous voulez qu'il soit dépendant de l'outil, remplacezSymbol()

à une variable de type chaîne qui contient le symbole de l'outil désiré...

D'après votre code, c'est

symbol_name[ii]


 
xxz:

Si vous voulez qu'il soit dépendant de l'outil, remplacezSymbol()

à une variable de type chaîne qui contient le symbole de l'outil désiré...

Selon votre code, c'est


Oui, merci, c'est très similaire. Pour ma stratégie, il est important que les poids des devises coïncident.
 
J'ai du mal à redémarrer mon ordinateur Windows 8. Les terminaux fonctionnent. Une fois par jour, je redémarre l'ordinateur via le planificateur de tâches avec shutdown.exe -r -t 10 -f . L'autostart exécute les terminaux mais malheureusement les Expert Advisors exécutés dans les terminaux (avant le redémarrage) fonctionnent mais pas avec une probabilité de 100%. Comment fermer et redémarrer quelques terminaux pour que les EAs soient toujours chargés ?
 
pivomoe:
J'ai un problème avec le redémarrage de mon ordinateur sous Windows 8. Les terminaux fonctionnent. Une fois par jour, je redémarre l'ordinateur via le planificateur de tâches avec shutdown.exe -r -t 10 -f . L'autostart fonctionne mais malheureusement le démarrage des conseillers du terminal (avant le reboot) ne démarre pas avec une probabilité de 100%. Comment fermer et redémarrer plusieurs terminaux pour que les EAs soient toujours chargés ?

Corriger les blocs d'initialisation dans l'EA (OnInit() ).

 

Bon après-midi. S'il vous plaît, aidez-moi à trouver un EA qui donnera des signaux au courrier lors des croisements de niveaux basés sur la stochastique. Je n'ai moi-même aucune connaissance en programmation. Merci d'avance !

 
xxz:

Si vous voulez qu'il soit dépendant de l'outil, remplacezSymbol()

à une variable de type chaîne qui contient le symbole de l'outil désiré...

Selon votre code, c'est


Il me semble ici que le lot minimum est de 0,1, alors que nous avons besoin de 0,01. Peut-être que la deuxième ligne devrait avoir dg=2 ?

 if(SymbolInfoDouble(Symb,SYMBOL_VOLUME_STEP)<0.1) dg=2; else
      if(SymbolInfoDouble(Symb,SYMBOL_VOLUME_STEP)<1.0) dg=1;
   
 
JimmyJonce:

Bon après-midi. S'il vous plaît aidez-moi à trouver un EA qui donnera des signaux au courrier quand un niveau est franchi basé sur le stochastique. Sam dans la programmation : zéro. Merci d'avance !

Recherchez dans KodoBase les mots"Stochastique" ou"Stochastic".

 
Sprut112:

Ici, il me semble que le lot minimum est de 0,1, et j'ai besoin de 0,01. Peut-être que dans la deuxième ligne dg=2 ?

Vous n'avez pas besoin de comparer quoi que ce soit, il suffit de trouver Step et de l'utiliser, de préférence dans OnInit() c'est le même pour un compte particulier, en règle générale il ne change pas d'une paire à l'autre...

double Step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);
 
xxz:

vous n'avez pas besoin de comparer quoi que ce soit, il suffit de trouver Step et de l'utiliser, et de préférence dans OnInit() c'est le même pour un compte particulier, en règle générale il ne change pas d'une paire à l'autre...

Vous pouvez le faire de cette façon ?

 input_lots = NormalizeDouble(AccountInfoDouble(ACCOUNT_MARGIN_FREE)* MaximumRisk / 100 /SymbolInfoDouble(symbol_name[ir],SYMBOL_TRADE_TICK_VALUE)/1000,dg); 
 input_lots = MathRound(input_lots / SymbolInfoDouble(symbol_name[ir] , SYMBOL_VOLUME_STEP)) * SymbolInfoDouble(symbol_name[ir], SYMBOL_VOLUME_STEP);
      
 
Sprut112:

Je peux le faire ?

Vous pouvez...

Je pense que c'est mieux.

MathFloor
ça n'a pas de sens...
Raison: