Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1660

 
MakarFX #:

1) Oui, ce sont les valeurs du nombre de "bougies de confirmation" .

2) Non, il ne s'ouvre pas le premier, mais seulement après un certain nombre de "bougies de confirmation" .

3) Changer le magik et le mettre sur n'importe quelle paire

Il est préférable de faire du magik une variable externe.

1) Je l'ai ;

2) Je vais joindre une capture d'écran dans ce post, il ne s'ouvre pas sur la première, mais si l'entrée par 4 bougies est en conditions, il s'ouvrira sur la 4ème, comme dans la capture d'écran. Bien sûr, ce n'est pas le principal, je veux juste savoir comment le réparer. Mais même si on le laisse, à quoi sert "Init=true" ? Quelle est son essence ?

3) Et comment faire une variable externe magik ? Je n'ai pas touché à la magie et je ne sais pas comment faire :

#property copyright "Copyright 2021, DrMak."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//--- input parameters
#define MagicNumber  122122
extern string s1             = "Trading options";
extern double Lot            = 0.01;    // размер лота 0 - авт.расчет
extern double StopLoss       = 40;     // стоплосс
extern double TakeProfit     = 10;     // тейкпрофит
extern double TrailStop      = 21;     // уровень без убытка
extern int    Trailing       = 0;      // трейлинг стоп 1 вкл. 0 выкл.
extern int    Breakeven      = 0;      // перенос стоп лосса в без убыток
extern string s2             = "Day & Hour";
extern int    HrStart        = 0;      // время начала торговли
extern int    HrEnd          = 23;     // время окончания торговли
extern int    Monday         = 1;      // Понедельник 1 вкд. 0 выкл.
extern int    Tuesday        = 1;      // Вторник
extern int    Wednesday      = 1;      // Среда
extern int    Thursday       = 1;      // Четверг
extern int    Friday         = 1;      // Пятница
//+------------------------------------------------------------------+
// параметры индикаторов
int MovingPeriodLw        = 5;      
int MovingPeriodS1        = 75;
int MovingPeriodS2        = 85;
double StopLevel;
double TrailStep             = 3;      // шаг трейлинг стопа
bool OrderBuy = true, OrderSell = true, Order = false, Init = true;
int timeprev = 0, Slip = 3.0, Start, cnt=1;
datetime newbar=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if (Digits == 3 || Digits == 5) { // Пересчет для 5-ти знаков                                                    
      TakeProfit *= 10;
      TrailStop *= 10;
      TrailStep *= 10;
      StopLoss *=10;
      Slip *=10;
   } 
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   StopLevel = MarketInfo(Symbol(), MODE_STOPLEVEL); 
   //---
   if(newbar!=Time[0])
     {
      if(CheckForOpen()!=Start)
        {Start=CheckForOpen(); cnt=1;}
      else
        {cnt+=1;}
      //---
      if(cnt==8)
        {
         // Открытие ордера по методу Пуриа
         if(CheckForOpen()==0) // Если сигнал для покупок 
           {
            if(OrderSend(Symbol(),OP_BUY,Lots(),Ask,Slip,Bid-StopLoss*Point,Ask+TakeProfit*Point,"",MagicNumber,0,Blue))
              {Print("BUY OK");}
              else {Print(GetLastError());}
           } 
         if(CheckForOpen()==1) // Если сигнал для продаж 
           {
            if(OrderSend(Symbol(),OP_SELL,Lots(),Bid,Slip,Ask+StopLoss*Point,Bid-TakeProfit*Point,"",MagicNumber,0,Red))
              {Print("SELL OK");}
              else {Print(GetLastError());}
           }
        }   
      newbar=Time[0];
     }
  }
Dossiers :
 
MakarFX #:

Pas mal !

 
artem artem #:

1) Je l'ai ;

2) Je vais joindre une capture d'écran à ce message, il ne s'ouvre pas sur la première bougie, mais si l'entrée par 4 bougies est dans les conditions, il s'ouvrira sur la 4ème, comme dans la capture d'écran. Bien sûr, ce n'est pas le principal, je veux juste savoir comment le réparer. Mais même si on le laisse, à quoi sert "Init=true" ? Quelle est son essence ?

3) Et comment faire une variable externe magik ? C'est juste que je n'ai pas touché à la magie de près et que je ne sais pas comment faire :

#define MagicNumber  122122

remplacer par

extern string MagicNumber = 122122;

"Init=true" peut être supprimé.

Pour ce qui est de la première entrée, je vais y réfléchir, mais demain).

 

artem artem #:

J'aimerais savoir comment cela peut être supprimé.

Supprimé

Dossiers :
artem.mq4  11 kb
 
MakarFX #:
// Мертвая строка

Bonne idée, bien joué, Makar !

 

Dites-moi ce qu'il faut faire, j'ai un cas anormal :

Le passage dans le test montre 40 transactions dans les six derniers mois. Le solde est de plus de 1000 $ sur le compte.

J'ai utilisé le même ensemble pendant toute l'année - seulement 8 transactions. Reste environ 1000 dollars.

Je l'exécute depuis le début de 2020, 3 mois il négocie - encore 0 réaction.

Je ne comprends pas pourquoi il ne veut pas négocier sur une grande période. Il n'indique aucune erreur dans le journal de bord.

 
artem artem #:

celui-là est bon pour s'amuser dans le testeur.

et celui-ci est pour vous, comme un cadeau - pour faire de l'argent.

\\\\\\\\\\\\\\\\\\\\\\\\\\

Je l'ai testé et je verrai comment il fonctionne ce soir.

Capture d'écran 2021-10-10 054654

\\\\\\\\\\\\\\\\\\\\\\\\\\\

J'ai vérifié comment cela change le motif sur toutes les cartes - tout a fonctionné ! -comment le bénéfice total a atteint l'objectif.

Capture d'écran 2021-10-10 055232

Dossiers :
artem_artem.mq4  26 kb
 

il est bon de vérifier dans le testeur - lorsque vous enregistrez le modèle avec les indicateurs, si vous changez les paramètres des indicateurs - il suffit d'appuyer sur pause dans le testeur et d'ajuster les indicateurs .

Capture d'écran 2021-10-10 063557

\\\\\\

modèle de graphique - pour l'expert ci-dessus.

Dossiers :
 
SanAlex #:

celui-là est bon pour s'amuser dans le testeur.

et celui-ci est pour vous, comme cadeau, pour faire de l'argent.

Bonjour à tous et bonne humeur ! Je suis intriguée. Veuillez traduire le code d'artem.mq4 pour MT5 si vous n'avez pas de problèmes avec celui-ci. Je veux voir comment il va "gérer" les renouvellements sur un compte réel.

Sincèrement, Vladimir.

 
MrBrooklin #:

Bonjour à tous et bonne humeur ! Je suis intriguée. S'il vous plaît, si ce n'est pas difficile pour vous, traduisez le codeartem.mq4 pour MT5. Je veux voir comment il va "gérer" les renouvellements sur un compte réel.

Sincèrement, Vladimir.

Bonjour, je vais maintenant créer un indicateur de signal pour mt5 à partir de ces indicateurs.

\\\\\\\\\\\\\\\\\\\\\\\\\\\\

Ici je l'ai fait - le reste est très simple - dans Expert Advisor avec ses désirs et sa logique, le chalutage et tout le reste.

EURUSDH1

\\\\\\\\\\\\\\\\\\\\\\

Dans Expert Advisor, vous pouvez choisir d'ouvrir sur une barre zéro ou sur la première barre.

Capture d'écran 2021-10-10 085616

Dossiers :
Fx10_artem.mq5  20 kb
Raison: