Un peu d'aide ? - page 4

 
deVries:

vous avez vu qu'il n'y a pas d'erreurs, vous n'avez pas besoin des printstatements ici.

dans strategytester votre programme pourrait bien fonctionner,

mais comment fonctionne-t-il sur votre compte de démonstration ?


Je l'ai fait fonctionner sur un cadre temporel quotidien - mais je viens de l'appliquer à des cadres temporels de 2 minutes et cela semble fonctionner (au moins les 2 ordres de départ sont dans la bonne direction et sont maintenant maintenus) évidemment je vais les surveiller de près.

J'ai toujours quelques problèmes avec les indicateurs, c'est pourquoi ils sont toujours là - en l'état actuel, les indicateurs ci-dessus fonctionnent bien - mais si j'ajoute, par exemple :

double SMA6=iMA(Symbol(),0,6,0,MODE_SMA,PRICE_CLOSE,0);
Print("SMA6 is ",SMA6);
double SMA21=iMA(Symbol(),0,21,0,MODE_SMA,PRICE_CLOSE,0);
Print("SMA21 is ",SMA21);                                    
//----Indicators on a higher timeframe--------------------------------+
double RSI=iRSI(Symbol(),1440,14,PRICE_CLOSE,0);
Print("RSI is ",RSI);                                                             
//----Indicators on a lower timeframe---------------------------------+
double SAR=iSAR(Symbol(),240,0.02,0.2,0);
Print("SAR is ",SAR);
sur un intervalle de temps quotidien, le SAR renvoie toujours 0 - je m'y attendais à moitié, puisque (dans l'exemple ci-dessus) il essaie de lire 6 valeurs différentes pour 1 valeur (n'est-ce pas ?) Y a-t-il un moyen de contourner cela ?
 

Ok, je suis de nouveau confus - j'essayais de voir ce qui se passait encore et.. :

double SMA21=iMA(Symbol(),0,21,0,MODE_SMA,PRICE_CLOSE,0);
Print("SMA21 is ",SMA21);                                    
//----Indicators on a higher timeframe--------------------------------+
double RSI=iRSI(Symbol(),1440,14,PRICE_CLOSE,0);
Print("RSI is ",RSI);                                                             
//----Indicators on a lower timeframe---------------------------------+
double SAR=iSAR(Symbol(),240,0.02,0.2,0);
Print("SAR is ",SAR);
double SMA6=iMA(Symbol(),240,6,0,MODE_SMA,PRICE_CLOSE,0);
Print("SMA6 is ",SMA6);
Le SAR a imprimé 0 comme précédemment - mais la SMA a imprimé une valeur ? Quoi ?
 
double SAR=iSAR(Symbol(),240,0.02,0.2,0);
  1. Ne codifiez pas les numéros en dur, utilisez les énumérations (PERIOD_H4).
  2. Avez-vous l'historique H4 pour la période que vous exécutez dans le testeur ?
 

1. Changé - mais par curiosité, pourquoi cela fait-il une différence ?

2. Oui, il fonctionne parfaitement bien à partir de la même date sur l'échelle de temps 4H et renvoie des valeurs comme prévu ?

J'ai réexécuté les indicateurs ci-dessus avec SMA6 dans le 4H ainsi que dans le cadre temporel quotidien et il a lu 0 au début avant de prendre une valeur à mi-chemin ? Mais il peut être exécuté dans l'échelle de temps 4H dès le début ?