Répondre

Différence entre le code MQL et le code EL !

3 réponses

paix à l'est

Client, bbp_participant, community, sq-ultimate, 305 réponses.

Visiter le profil

Il y a 7 ans #115293

Version:SQ 3.8.1 (Quelle période difficile ! SQ3 sans mise à jour fixe, et la sortie de SQ4 sans calendrier)

 

Pour en revenir à ce sujet, je trouve qu'il y a peu de différence entre le code traduit en mql et en el. Lequel est le plus exact ?

 

Pseudo-code de la SQ

====================================================================
== Conditions d'entrée
====================================================================
LongEntryCondition = ((WMA(145) Crosses Below SMA(3)) And (Low(10) > Lowest(53)))
ShortEntryCondition = ((WMA(145) Crosses Above SMA(3)) And (High(10) < Highest(53)))

Code EL

 if(MaxTradesPerDay = 0 ou EntriesToday(Date)  Average(Close,3)[1]) et (WAverage(Close,145)[0]  Lowest(Low, 53+0))) ;
        if(LongEntryCondition = true) then begin

Code MT4

 // RÈGLES D'ENTRÉE

      // LONG : ((WMA(145) Crosses Below SMA(3)) And (Low(10) > Lowest(53)))
      if(TradeLong) {
         bool LongEntryCondition = (((iMA(NULL, 0, 145, 0, MODE_LWMA, PRICE_CLOSE, 2) > iMA(NULL, 0, 3, 0, MODE_SMA, PRICE_CLOSE, 2)) && (iMA(NULL, 0, 145, 0, MODE_LWMA, PRICE_CLOSE, 1)  getLowest(53, 1))) ;
         if(LongEntryCondition == true) {
            openPosition(1) ;
         }
      }

Low[10] dans EL signifie :

 

 

 

 

Donc, le pseudo-code, le code el, le code mt4 : low(10), low[9], low[10]. Sont-ils égaux ?

0

paix à l'est

Client, bbp_participant, community, sq-ultimate, 305 réponses.

Visiter le profil

Il y a 7 ans #138035

Et la courbe de profit ou la ligne d'équité dans le backtest SQ et MC sont très différentes. 

 

J'ai téléchargé le fichier str, veuillez le vérifier. Merci de votre compréhension.

0

Mark Fric

Administrateur, sq-ultimate, 2 réponses.

Visiter le profil

Il y a 7 ans #138037

Les différences dans EasyLanguage sont correctes, car dans EL la condition est vérifiée à la fin de la barre, alors que dans MT4 elle est testée au début de la barre.

 

En ce qui concerne les différences entre SQ et MC, utilisez-vous les mêmes données ?

Marque
StratégieArchitecte de Quantités

0

paix à l'est

Client, bbp_participant, community, sq-ultimate, 305 réponses.

Visiter le profil

Il y a 7 ans #138048

NON, les données sont similaires, mais proviennent de sources différentes. Il s'agit peut-être d'un problème lié à mon logiciel de backtest.

 

Mais j'ai encore une autre question.

 

La condition de sortie courte est la suivante

-- Sortie de la position courte
if MarketPosition is Short {
   if (Bars Since Entry >= 42) {
      Clôture de la position au marché ;
   }
   
   if (Lowest(11) Crosses Below WMA(86)) {
      Fermer la position au marché ;
   }
}

code el :

 // Règle de sortie
    ShortExitCondition = ((Lowest(Low, 11+1) > WAverage(Close,86)[1]) et (Lowest(Low, 11+0) <= WAverage(Close,86)[0])) ;

Je pense que le code correct est :

 // Règle de sortie

 

    Valeur la plus basse = Valeur la plus basse(Basse, 11) ;

   
    ShortExitCondition = (( LowestValue[1] > WAverage(Close,86)[1]) et ( LowestValue <= WAverage(Close,86)[0]) ;)

0

Affichage de 3 réponses de 1 à 3 (sur un total de 3)