Arrêt du système par manque d’historique
Forums › ProRealTime forum Français › Support ProOrder › Arrêt du système par manque d’historique
- This topic has 3 replies, 2 voices, and was last updated 2 years ago by
Zarcan89.
-
-
07/27/2023 at 9:14 AM #218194
Bonjour,
J’ai un soucis d’arrêt de code la nuit à 1h30 très précisément. En fouillant dans le forum j’ai essayé de retirer les fonctions “call” de mes deux indicateurs, j’ai ajouté également un “defparam preloadbars”.
Au début je pensais que c’était en rapport avec les “trous” dans la cotation (je l’utilise sur FR40 au comptant de chez IG en 15min et la nuit certaines bougies sont nulles, inexistantes), mais ce n’est pas le cas ni à 1h30 ni dans la 30aine de bougie qui précède.
Je me demande donc si cela n’a pas un rapport avec le passage de 0h00à 0h15 mais je ne vois pas pourquoi … Cela représente 6 bougies de 15 minutes jusqu’à 1h30 et aucuns de mes indicateurs n’est paramétré sur 6 ou moins de 6.
Voila le code en espérant que vous ayez une super idée à me soumettre ^^
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273// Définition des paramètres du codeDEFPARAM CumulateOrders = False // Cumul des positions désactivéDEFPARAM Preloadbars = 100000//Alphatrendap = 14Coeff = 1.5if (MoneyFlowIndex[ap]>=50) thenmagic=Low[0]-AverageTrueRange[ap](close)*coeffendifif (MoneyFlowIndex[ap]<=50) thenmagic=High[0]+AverageTrueRange[ap](close)*coeffendifif (MoneyFlowIndex[ap]>=50 and magic<magic[1]) thenmagic=magic[1]endifif (MoneyFlowIndex[ap]<=50 and magic>magic[1]) thenmagic=magic[1]endifif magic>magic[1] thencouleur=1elsif magic<magic[1]thencouleur=-1endif//PGOSMA = Average[22](close)ATR = TR(close)MMe = ExponentialAverage[22](ATR)PGO=(close-SMA)/(MMe)indicator1 = PGOindicator2 = couleur// Conditions pour ouvrir une position acheteusec1 = (indicator1 CROSSES OVER(-2))c2 = (indicator2 = 1)IF c1 and c2 THENBUY 0.5 CONTRACT AT MARKETSet Stop ploss 100Set Target profit 45ENDIF// Conditions pour fermer une position acheteusec4 = (indicator1 CROSSES UNDER 2)IF longonmarket and c4 THENSELL AT MARKETENDIF// Conditions pour ouvrir une position vendeusec5 = (indicator1 CROSSES UNDER 2)c6 = (indicator2 = -1)IF c5 and c6 THENSELLSHORT 0.5 CONTRACT AT MARKETSet Stop ploss 87Set Target profit 97ENDIF// Conditions pour fermer une position vendeusec7 = (indicator1 CROSSES OVER(-2))IF shortonmarket and c7 THENEXITSHORT AT MARKETENDIFMerci
PS: Vous remarquerez la présence du code “Alpha trend”, je l’utilise avec plaisir et vous remercie vivement du partage.
07/27/2023 at 9:44 AM #218198L’indicateur MoneyFlowIndex, nécessite du volume pour se calculer, alors si il est à 0, je pense que cela peut créer ce type de comportement.
On peut essayer en vérifiant la présence de volume pour lancer son calcul, sinon lui donner la valeur précédente, comme ceci:
12345678910111213141516171819if volume>0 thenif (MoneyFlowIndex[ap]>=50) thenmagic=Low[0]-AverageTrueRange[ap](close)*coeffendifif (MoneyFlowIndex[ap]<=50) thenmagic=High[0]+AverageTrueRange[ap](close)*coeffendifif (MoneyFlowIndex[ap]>=50 and magic<magic[1]) thenmagic=magic[1]endifif (MoneyFlowIndex[ap]<=50 and magic>magic[1]) thenmagic=magic[1]endifelsemagic=magic[1]endif07/27/2023 at 10:59 AM #218203Merci Nicolas.
En premier lieu cela change beaucoup les résultats du backtest mais pas forcément en mal. Disons que c’était équilibré achat/vente et que maintenant ça penche beaucoup coté achat en terme de résultats.
Je lance le programme et vous tiens au courant demain.
Encore merci!
07/28/2023 at 8:09 AM #218239 -
AuthorPosts
Find exclusive trading pro-tools on