[ARCHIVE]Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 5. - page 138

 
supernyb:


si c'est comme ça.

ça ne marche pas, c'est la faute à '=' - types incompatibles C:/fortest\experts\sve.mq4 (34, 14)

Comment l'écrire correctement ?

Merci pour la réponse, je travaille dessus depuis une semaine déjà ;)


Essayez comme ça :

 extern int MA_Period = 50;                   //периуд Ма
extern int MA_Method =MODE_SMA;               //Метод усреднения скользящего среднего. Может быть любым из значений методов скользящего среднего (Moving Average):
                              //*MODE_SMA 
                              
 extern int Maximum_History = 0;              //Ограничение истории для расчетов, если 0 то расчет всей истории
 
   
    
                                               //начало кода советника
int start()
{      
    double MA4;                                // Значение МА на 4 баре     
    double Startprice;
  
   MA4=iMA(NULL,0,MA_Period,0,MA_Method,PRICE_CLOSE,4); 
 
   
 if  (Low[4]< MA4 && MA4 < High[4])            //условия если 4-я свеча лежит в скользящей  
     {      
   Startprice=Close[0];
     }
       
   Print (DoubleToStr(Startprice,5));          // распечатаем Startprice
     
      
   datetime TmR1=Time[0];                      // запоминаем время текущего бара? 
   
       ObjectCreate("Rep1"+TmR1,OBJ_ARROW, 0, TmR1, Startprice); // создаем обьект 
       ObjectSet("Rep1", OBJPROP_COLOR, White); // устанавливаем обьект на график
       ObjectSet("Rep1", OBJPROP_ARROWCODE,71); 
      
     return(0); 
 }    
 
supernyb:

mais pour la sortie, je comprends que l'imprimante n'imprime que 4 chiffres ou moins.

then if Print (DoubleToStr(Startprice,5)) ; // imprimer Startprice

il en distribue 5.

Mais quand on ajoute une heure de barre

Cette ligne n'ajoute pas le temps de la barre ?


 
Roger:
Montre comment tu as obtenu Bay_min.


 if (StochM < St_min && StochS < St_min) 
   bay_min = true;
 
r772ra:
if (bay_min == true)   datetime T=Time[0] //сработал сигнал на покупку запоминаем время  бара

if(iBarShift(NULL,0,T)==2) //по времени, сигнал был на 2 баре
   {   
  if (Open[1]<Close[1] && Open[2]<Close[2] )   //и эти бары бычьи 
     { 
    // что-то делаем
     }
   }
   
// я думаю, как-то так.

Merci, la logique est claire, mais l'ouverture d'une transaction a complètement cessé.
проблема в этой строчке
if(iBarShift(NULL,0,T)==2) //по времени, сигнал был на 2 баре
 
Veuillez me conseiller. Mon indicateur ZigZag est surchargé. Il dessine un certain objet sur le graphique. Lorsque le prix change et qu'il est nécessaire de supprimer l'objet, l'objet est supprimé, mais la valeur du tampon dans le graphique est toujours là. Comment supprimer l'ancienne valeur également, et pas seulement dans le graphique ? Si vous pouvez coder ou montrer où il est implémenté dans le zigzag ?
 
Dimka-novitsek:
Comment apprendre à l'ordinateur à effectuer cette tâche strictement professionnelle ? Sinon, le levier du testeur de vitesse ne répond que s'il le veut ! Le délai est souvent de 3 à 8 secondes. Mentionner toutes les mauvaises femmes !
Passez une bonne journée !
 
Dimka-novitsek:
Comment apprendre à l'ordinateur à effectuer cette tâche strictement professionnelle ? Sinon, le levier du testeur de vitesse ne répond que s'il le veut ! Le délai est souvent de 3 à 8 secondes. Mentionner toutes les mauvaises femmes !


Tirer le meilleur parti de la situation
 



Rapport du testeur de stratégie

subot11
(Build 438)

SymboleEURUSD (Euro contre Dollar US)
Période1 heure (H1) 2005.01.24 00:00 - 2012.09.26 23:00 (2005.01.24 - 2012.09.27)
ModèleTous les ticks (méthode la plus précise basée sur toutes les plus petites échéances disponibles)
ParamètresParamètres=" EA" ; lot=1 ; lot2=1 ; Magic_Number=68705 ; yroven=120 ; pr=50 ; sp=16 ; MA_Period=50 ; Maximum_History=0 ;

Les bars dans l'histoire48438Tiques modélisées62876826Qualité de la simulation90.00%
Erreurs de concordance des graphiques0




Dépôt initial10000.00



Bénéfice net7635.00Bénéfice total41380.00Perte totale-33745.00
Rentabilité1.23Gain attendu16.71

Dégradation absolue2271.00Abaissement maximal3769.00 (32.78%)Abattement relatif32.78% (3769.00)

Total des transactions457Positions courtes (% de gain)0 (0.00%)Positions longues (% de gain)457 (24.29%)

Transactions rentables (% de toutes)111 (24.29%)Transactions à perte (% de toutes)346 (75.71%)
Le plus grandcommerce profitable600.00accord perdant-150.00
Moyenneopération rentable372.79commerce perdant-97.53
Nombre maximalgains continus (profit)5 (2020.00)Pertes continues (perte)20 (-2114.00)
MaximumProfit continu (nombre de victoires)2098.00 (4)Perte continue (nombre de pertes)-2114.00 (20)
Moyennegains continus2perte continue5




J'ai réussi à créer ma propre EA. Je l'ai fait fonctionner avec un écart fixe de 19. Depuis 2005. Toujours faire un stop loss. Prenez toujours. Il n'utilise pas la moyenne et Martin. Les positions sont fermées dans la journée, c'est-à-dire qu'elles ne sont pas transférées au jour suivant.

Mon programmeur est nul, c'est un euphémisme.

 
artmedia70:

J'ai été absent pendant quelques jours... Je me demande - les assistants lancés sur le graphique ont-ils les mêmes paramètres que les assistants utilisés dans les calculs ? C'est peut-être là que réside le problème ?

Bien sûr, ils ont les mêmes paramètres. Ici, en mode test, j'ai ouvert les propriétés d'une MA donnée.

Paramètres MA

artmedia70:

(Je n'ai toujours pas eu le temps de me plonger dans le code et de le démonter).

Tout est écrit très simplement, de sorte que tout le monde peut le comprendre immédiatement :)

artmedia70:

Je ferais une fonction, par exemple :

//-----------------------------------------------------------------------------+
double ma(int MAperiod, int MAmethod, int MAshift) {return (iMA(Symbol(), Period(), MAperiod, 0, MAmethod, PRICE_OPEN,MAshift));}
//-----------------------------------------------------------------------------+
et l'a appelé pour obtenir les paramètres


J'y pensais initialement lorsque j'ai écrit l'ensemble du conseiller expert, pas celui-ci. MAIS. iMA est déjà une fonction. En appelant la fonction iMA, vous pouvez entrer n'importe quels paramètres, certains avec des variables déclarées globalement, et d'autres par défaut, par exemple. Le fait est que quel est l'intérêt d'appeler une fonction à partir d'une fonction si cela n'a aucun sens ?
 

Bon après-midi. Veuillez indiquer comment mettre en œuvre ce qui suit :

J'ai une position d' achat ouverte. La bougie suivante a fortement baissé et a déclenché un stop. Mais comme le mouvement a été fort et que les signaux montrent toujours Buy, une position longue sera ouverte à nouveau au prochain tick. Quelles lignes faut-il introduire dans le code pour retarder l'ouverture de la position jusqu'à la fermeture de la bougie suivante, par exemple ?

Et la deuxième question. Peut-on spécifier la direction ascendante des lignes stochastiques dans le code comme l'une des règles ?

Merci beaucoup.

Raison: