Fonctionnement du code étonnant
Forums › ProRealTime forum Français › Support plateforme ProRealTime › Fonctionnement du code étonnant
- This topic has 2 replies, 2 voices, and was last updated 1 day ago by
robertogozzi.
-
-
11/28/2025 at 1:56 PM #254040cet exemple est exécuté sur Future EURUSDXXX 1minute entre 20/01/2025 et Now par exemple :dans le code, j’ai ajouté les lignes suivantes dont la présence ne devrait pas impacter l’exécution des ordres :
if time = 081500 then b // jaune
pOrderTime = 0 // jaune
endif // jaune
123456789101112131415161718192021222324252627282930313233DEFPARAM CumulateOrders = FalseDEFPARAM FLATBEFORE = 092000DEFPARAM FLATAFTER = 181500daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0once pCandleRange = 0.001once pOrderTime = 0if time = 081500 then // jaunepOrderTime = 0 // jauneendif // jaunecMarketCondition = (not daysForbiddenEntry and not OnMarket)if cMarketCondition and ABS(range) > pCandleRange and pOrderTime = 0 thenif close > close[1] and close > open thenBUY 1 SHARES AT MARKETpOrderTime = barindexelsif close < close[1] and close < open thenSELLSHORT 1 SHARES AT MARKETpOrderTime = barindexEndifendifif pOrderTime > 0 and onMarket and pOrderTime < barindex thenpOrderTime = 0SELL AT MARKETEXITSHORT AT MARKETendifsi les lignes suivantes sont présent dans le code, j’ai tous les ordres qui s’exécutent,sans ces lignes, aucun ordre n’est exécuté.pourquoi ? j’essaie de comprendre non pour l’exemple en particulier, mais surtout pour éviter de faire des erreurs par ailleurs.Merci d’avance,Cdt,11/28/2025 at 2:16 PM #254041Cet exemple de code permet de déclencher un ordre quand un range d’une période est > à une valeur. L’autre chose étonnante avec cet exemple est que si l’on enlève ces lignes de code, et que l’on fait des test avec des valeurs de pCandleRange particulières on obtient les résultats suivant alors que plus le paramètre est faible et plus on devrait avoir d’ordre :
pCandleRange = 0.006 => 0 ordre
pCandleRange = 0.005 => 2 ordres
pCandleRange = 0.004 => 3 ordres
pCandleRange = 0.003 => 9 ordres
pCandleRange = 0.002 => 4 ordres
pCandleRange = 0.001 => 0 ordre
11/28/2025 at 5:18 PM #254057Ajoutez cette ligne à la fin pour vérifier si les conditions sont remplies :
1graph (cMarketCondition and ABS(range) > pCandleRange and pOrderTime = 0) AND ((close > close[1] and close > open) or (close < close[1] and close < open)) -
AuthorPosts
