Utilisez le dernier swing low comme stopLoss (BackTest)
Forums › ProRealTime forum Français › Support ProOrder › Utilisez le dernier swing low comme stopLoss (BackTest)
- This topic has 21 replies, 5 voices, and was last updated 3 years ago by Vinco67.
-
-
09/27/2021 at 8:07 PM #178598
Bonjour,
comme le titre l’indique j’essaie de configurer le dernier swing low comme stoploss lors de mes backtests.
Pour le moment j’utilise ceci:
123456IF NOT LongOnMarket AND LongConditions THENPosSize = round((capital+STRATEGYPROFIT)*(risk/100))BUY PosSize SHARES AT MARKETset stop loss lowest[5](low)set target profit 4*stopfactor*averagetruerange[10]ENDIFMais je me retrouve avec le point bas des 5 dernières barres mais recalculée à chaque barre j’ai l’impression et pas calculée une unique fois au moment de l’entrée (et donc le plus bas sur les 5 barres précédent l’entrée). Comment je peux faire ?
Merci
09/27/2021 at 8:25 PM #17860209/27/2021 at 9:11 PM #17860909/28/2021 at 7:51 AM #178623Ton code pour placer le stoploss n’est pas correct, tu tentes de le placer à un niveau de prix, hors l’instruction SET STOP LOSS attends une distance.
Il faut calculer la distance donc, soit le Close actuel auquel on retranche la valeur du plus bas :1set stop loss (close-lowest[5](low))09/30/2021 at 9:34 PM #17883010/01/2021 at 8:19 AM #17883810/02/2021 at 6:10 PM #178947Ok donc si j’ai perdu X dollar/euro c’est ça ?
J’imagine que ce sont les mêmes règles pour les trailing stop, est-ce qu’il est possible de mettre à la fois un trailing stop et un stop classique ?
Par exemple dans mon cas je veux que le stop soit sur le dernier plus bas sur x bougies, mais ensuite dès que le prix a bougé de x% depuis mon prix d’entrée je passe sur un trailing stop ?
Merci !
11/09/2021 at 7:36 PM #181333Bonsoir !
Je reviens sur ce post dont la question avait été réglé pour reposer une petite question sur un truc qui m’échappe.
Dans l’image png liée on voit une opération “aller-retour” sur Apple alors que j’ai un stop comme décrit dans les posts au dessus (avec un stop loss sur le lowest des 5 derniers low).
Je ne comprends pas pourquoi il déclenche une vente avant un achat ou pourquoi il revend tout de suite alors que le stop est pas touché…
Merci d’avance
11/16/2021 at 9:45 PM #18170211/17/2021 at 8:56 AM #181713En effet il y a deux cas de figure, soit il ferme une position qui existe déjà pour en créer une autre, soit il achète et revend immédiatement pour une raison que tu as codé. Tu ne donnes pas le détail des ordres de cette flèche, difficile de répondre.
Quand on regarde ton image on constate le même phénomène sur le précédent croisement de moyennes mobiles, c’est sans doute une condition liée ? Merci pour le code pour analyse 😉
11/17/2021 at 7:19 PM #181752Je mets en pj la capture d’un des cas d’achat/vente sur le même jour, en réalité ça se passe sur 2 jours, c’est la clôture d’un ordre précédent puis une nouvelle entrée… par contre je remarque qu’il y a plusieurs ventes d’affilé souvent 2 ventes dont une correspond à un achat mais pas l’autre du coup puis qu’entre temps y a peu de rachat… Vous verrez sur le graph une croix jaune tout à gauche puis une opération avec double flèche jaune/bleu.
Je mets également la liste des ordres pour que vous puissiez voir..
Voilà le code de la stratégie:
1234567891011121314151617181920212223242526272829`DEFPARAM CUMULATEORDERS = False//Variablescapital = 15000risk = 5tpfactor = 10lookback = 10//Indicatorsema5 = ExponentialAverage[5](close)ema20 = ExponentialAverage[20](close)Dp = DIplus[14](close)Dm = DIminus[14](close)myZeroLagMACD, mySignalMACD, myHistogram = CALL "MACDZeroLag"[26, 12, 9]sl = lowemaConditions = ema5 CROSSES OVER ema20 OR ema5>ema20dmiConditions = ((Dp > Dm) OR (Dp CROSSES OVER Dm))MacdConditions = myHistogram > 0//LongConditions = MacdConditions and StochConditionsLongConditions = emaConditions AND dmiConditions AND MacdConditionsSellConditions = (ema5 CROSSES OVER ema20)// Conditions pour ouvrir une position acheteuseIF NOT LongOnMarket AND LongConditions THENPosSize = round((capital+STRATEGYPROFIT)*(risk/100))BUY PosSize CASH ROUNDEDDOWN AT MARKET//set stop loss stopfactor*averagetruerange[10]set stop loss (close-lowest[5](low))-averagetruerange[10]ENDIFIF LongOnMarket AND SellConditions THENSELL PosSize CASH AT MARKETENDIF`Merci ! (désolé pour le code a priori il supporte pas les interlignes, faut tout mettre à la suite)
11/18/2021 at 8:08 AM #181765Bonjour, code ci-dessus reformaté via CTRL+F5 pour faire réapparaitre le bouton “insert PRT code”, cf https://www.youtube.com/watch?v=jBuqwWPW3H4
11/18/2021 at 8:33 AM #18176811/18/2021 at 9:49 AM #18178111/18/2021 at 5:53 PM #181804 -
AuthorPosts
Find exclusive trading pro-tools on