Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 541

 

Bon après-midi.

Y a-t-il un sens physique à diviser l'ATR rapide par l'ATR lent ?

ou qu'obtenons-nous comme résultat ?

Pourquoi je demande cela ? J'ai déjà vu un tel indicateur.

 
rusa:

Peut-être que quelqu'un a un tel conseiller.

1. ouvre simultanément deux ordres d'achat et de vente différents

2. lorsque l'un d'entre eux clôture sur un bénéfice, il ouvre à nouveau deux ordres d'achat et de vente différents, etc.

Si vous ne devez rien faire pour perdre des commandes, cela semble être assez simple. peut-être que quelqu'un pourra l'écrire pour vous ? je vous en serais très reconnaissant!

Comment ça ?
 

Bonjour, je suis en train de maîtriser mql4, j'avais l'habitude de coder des choses simples, puis j'ai abandonné pendant longtemps, maintenant je m'y remets en partant de zéro.

1) Je vois que le langage a été un peu mis à jour, mais le tutoriel est toujours vieux, y a-t-il un tutoriel pour le langage mis à jour ?

2) Est-ce une langue avec mql5 ?

3) Cela vaut-il la peine d'apprendre le tutoriel mt5 ?

4) MT5 existe depuis très longtemps et tout le monde écrit à quel point il est génial, mais pourquoi, les docs ne l'utilisent pas pratiquement, quelle est la raison ?

5) Je veux trader un portefeuille de robots, est-il possible d'obtenir des statistiques séparément pour chacun d'eux dans mt4 ?

6) Est-il réaliste d'obtenir un outil synthétique en temps réel et de trader dessus ?

7) Dites-moi s'il y a des avantages avec le cinquième signe ? (je n'ai pas fait de commerce depuis très longtemps). Si je comprends bien, aucun, parce que la volatilité est plus faible, par conséquent le niveau de spread reste le même ?

8) Veuillez me donner le code pour obtenir la volatilité moyenne d'un instrument. Je remplis mon tableau avec l'expression High[i] - Low[i], mais ensuite la valeur moyenne ne peut pas être calculée. Peut-être que je complique trop les choses, qu'il existe une fonction standard ou un code plus élégant ?

9) Est-il possible de calculer le spread moyen pour chaque barre sur l'ensemble de l'historique ? Je suppose que oui, cela semble très simple, je ne l'ai pas encore fait, à l'avance pour ainsi dire, peut-être existe-t-il un code tout fait, pour ne pas réinventer la roue ?

10) Je veux avoir différents tf, 10 sec, 30 sec... Je sais que c'est réel mais je pense que cela peut être fait très facilement dans le nouveau langage maintenant, je veux dire qu'il y a une sorte de fonction straddle pour cela ?

11) Est-ce que je pourrai tester les exps sur mon historique tf ?

12) Est-ce que mt dispose d'un ensemble de fonctionnalités pour travailler avec des fichiers texte, écrire les calculs dont j'ai besoin et ainsi de suite ?

C'est à peu près tout ce dont je me souviens pour l'instant, votre aide serait précieuse ! Merci d'avance !

 
pako:
Comment c'est ?


J'essaie ce système sur le réel. Je dois garder un œil sur le commerce tout le temps.

Je dois suivre mes transactions en permanence.

L'EA doit ouvrir des ordres d'achat et de vente en même temps, c'est-à-dire sans indicateurs.

Lorsque deux ordres sont ouverts dans le terminal, un ordre se ferme sur un Take Profit!

Deux ordres d'achat et de vente doivent être réouverts et cela arrive tout le temps .

. la commande avec un moins reste dans le commerce .

tous ! J'envisage de commander de l'argent mais j'ai un problème avec le dépôt de WebMoney.

Je pense que je vais commander de l'argent mais j'ai un problème avec le rechargement avec webmoney.

 
rusa:


J'essaie ce système sur le réel. Je dois garder un œil sur le commerce tout le temps.

Je dois suivre mes transactions en permanence.

L'EA doit ouvrir des ordres d'achat et de vente en même temps, c'est-à-dire sans indicateurs.

Lorsque deux ordres sont ouverts dans le terminal, un ordre se ferme sur un Take Profit !

Deux ordres d'achat et de vente doivent être réouverts et cela arrive tout le temps .

. la commande avec un moins reste dans le commerce .

tous ! Je pense commander de l'argent mais j'ai un problème avec le dépôt via WebMoney.

Je travaille sur ce sujet depuis plus de dix ans maintenant, et je ne suis toujours pas convaincu par les résultats.


Vous venez de décrire l'économie américaine... toutes les dettes s'accumulent et les recettes sont utilisées pour acheter de nouvelles dettes...

J'ai essayé de cette façon... ça ne marche pas.


extern int Profit=1 ;

extern double Lot=0.1 ;

extern int Stop=98 ;

extern inttern Take=70 ;

extern int Slip=10 ;

extern int Magic=0 ;

int n ;


int start() {

//compteur de commandes

for(int m=1 ; m<=OrdersTotal() ; m++)

{

OrderSelect(m-1,SELECT_BY_POS) ;

int mn=OrderMagicNumber() ;

int openselllim,openbuylim, opensell,openbuy, openbuystop, opensellstop ;


si (mn==Magic && OrderType()==OP_BUY) openbuy=openbuy+1 ;

si (mn==Magic && OrderType()==OP_SELL)opensell=opensell+1 ;

si (mn==Magic && OrderType()==OP_BUYLIMIT) openbuylim=openbuylim+1 ;

si (mn==Magic && OrderType()==OP_SELLLIMIT) openselllim=openselllim+1 ;

si (mn==Magic && OrderType()==OP_BUYSTOP)openbuystop=openbuystop+1 ;

si (mn==Magic && OrderType()==OP_SELLSTOP) opensellstop=opensellstop+1 ;

}

si (openbuy+opensell<n||OrdersTotal()==0)

{n=openbuy+opensell ;

OrderSend(Symbol(), OP_SELL, Lot, Bid, Slip, 0, 0, "SELL", Magic, 0,Red) ;

OrderSend(Symbol(), OP_BUY, Lot, Ask, Slip, 0, 0, "BUY", Magic, 0,Blue) ;

}

si (openbuy+opensell>n){n=openbuy+opensell;}

clospoint() ;

return(0);}


void clospoint ()

{int ask, bid, open ;

double point ;

for (int i=OrdersTotal()-1 ; i>=0 ; i--)

{

if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) break ;

si (OrderType()==OP_BUY)

{

point=MarketInfo(OrderSymbol(),MODE_POINT) ;

si (point==0) pause ;

bid=MathRound(MarketInfo(OrderSymbol(),MODE_BID)/point) ;

open=MathRound(OrderOpenPrice()/point) ;

si (bid-open<Profit) continuer ;

OrderClose(OrderTicket(),OrderLots(),bid*point,Slip) ;

}

si (OrderType()==OP_SELL)

{

point=MarketInfo(OrderSymbol(),MODE_POINT) ;

si (point==0) pause ;

ask=MathRound(MarketInfo(OrderSymbol(),MODE_ASK)/point) ;

open=MathRound(OrderOpenPrice()/point) ;

si (open-ask<Profit) continuer ;

OrderClose(OrderTicket(),OrderLots(),ask*point,Slip) ;

}

}}

c vous chocolat

 

Bonjour à tous, pourriez-vous me dire comment la fonction Coment() compte les paramètres ???

Voici un extrait du manuel : "Toute valeur séparée par une virgule. Le caractère de saut de ligne "\n" ou "\r\n" peut être utilisé pour diviser la sortie en plusieurs lignes. Le nombre de paramètres ne peut pas dépasser 64..." quels paramètres ?????

 
tench72:

Bonjour à tous, pouvez-vous me dire comment la fonction Coment() compte les paramètres ???

Voici un extrait du manuel : "Toutes les valeurs séparées par des virgules. Un caractère de saut de ligne "\n" ou "\r\n" peut être utilisé pour diviser la sortie en plusieurs lignes. Le nombre de paramètres ne peut dépasser 64..." quels paramètres ?????

ceux qui sont séparés par des virgules.
 
evillive:
de ceux qui sont séparés par des virgules.

Je ne me suis pas posé la question, je ne sais pas. Que pensez-vous de ça ?

string com = "тра-та-та";

Comment(com);
Combien de caractères seraient comptés dans le commentaire ?
 
AlexeyVik:

Je ne me suis pas posé la question, je ne sais pas. Et si c'est le cas ?

Combien de caractères sont comptés dans un commentaire ?

Eh bien, c'est écrit dans l'aide...
 

Bonjour, voici le code :

#import "kernel32.dll"
   int GlobalAlloc(int Flags, int Size);
   int GlobalLock(int hMem);
   int GlobalUnlock(int hMem);
   int GlobalFree(int hMem);
   int lstrcpyA(int ptrhMem, string Text);
#import


#import "user32.dll"
   int OpenClipboard(int hOwnerWindow);
   int EmptyClipboard();
   int CloseClipboard();
   int SetClipboardData(int Format, int hMem);
#import

#define GMEM_MOVEABLE   2
#define CF_TEXT         1

// Copies the specified text to the clipboard, returning true if successful
bool CopyTextToClipboard(string Text)
{
   bool bReturnvalue = false;
   
   // Try grabbing ownership of the clipboard 
   if (OpenClipboard(0) != 0) {
      // Try emptying the clipboard
      if (EmptyClipboard() != 0) {
         // Try allocating a block of global memory to hold the text 
         int lnString = StringLen(Text);
         int hMem = GlobalAlloc(GMEM_MOVEABLE, lnString + 1);
         if (hMem != 0) {
            // Try locking the memory, so that we can copy into it
            int ptrMem = GlobalLock(hMem);
            if (ptrMem != 0) {
               // Copy the string into the global memory
               lstrcpyA(ptrMem, Text);            
               // Release ownership of the global memory (but don't discard it)
               GlobalUnlock(hMem);            

               // Try setting the clipboard contents using the global memory
               if (SetClipboardData(CF_TEXT, hMem) != 0) {
                  // Okay
                  bReturnvalue = true;   
               } else {
                  // Failed to set the clipboard using the global memory
                  GlobalFree(hMem);
               }
            } else {
               // Meemory allocated but not locked
               GlobalFree(hMem);
            }      
         } else {
            // Failed to allocate memory to hold string 
         }
      } else {
         // Failed to empty clipboard
      }
      // Always release the clipboard, even if the copy failed
      CloseClipboard();
   } else {
      // Failed to open clipboard
   }

   return (bReturnvalue); 

}

La fonction fonctionne en principe, mais elle n'écrit qu'un seul caractère de la chaîne Texte dans le tampon. Que dois-je ajuster pour écrire la chaîne entière ?

Merci !

Raison: