Bonjour,
Voilà l’idée de la stratégie:
Un achat est déclenché lorsque le sto est > 50, que le rsi est < 30 et qu’une bougie traverse à la hausse une MM au max 5 bougies après que le sto et rsi soient validés.
Une vente est déclenchée lorsque le sto est < 50, que le rsi est > 70 et qu’une bougie traverse à la baisse une MM au max 5 bougies après que le sto et rsi soient validés.
Rien de bien méchant donc, pourtant lorsque je backtest, le système ne fait pas les achats et les ventes au bon endroit.
Quelqu’un y verrait plus clair? Merci !
DEFPARAM CumulateOrders = TRUE
DEFPARAM FlatBefore = 090000
DEFPARAM FlatAfter = 173000
EndTime = 173000
Indicator1= Stochastic [a,b](Close)
Indicator2=ExponentialAverage[c](Close)
Indicator3=RSI[d](Close)
// Conditions pour ouvrir une position acheteuse
IF NOT LongOnMarket AND Indicator1 > 50 AND Indicator3 < 30 THEN
bar1=barindex
ENDIF
IF Close CROSSES OVER Indicator2 and barindex-bar1<5 THEN
Buy 1 CONTRACTS AT MARKET
ENDIF
// Conditions pour fermer une position acheteuse
If LongOnMarket AND time > EndTime THEN
SELL AT MARKET
ENDIF
// Conditions pour ouvrir une position en vente à découvert
IF NOT ShortOnMarket AND Indicator1 < 50 AND Indicator3 > 70THEN
bar1=barindex
ENDIF
IF Close CROSSES UNDER Indicator2 and barindex-bar1<5 THEN
SELLSHORT 1 CONTRACTS AT MARKET
ENDIF
// Conditions pour fermer une position en vente à découvert
IF ShortOnMarket AND time > EndTime THEN
EXITSHORT AT MARKET
ENDIF
// Stops et objectifs : entrez vos stops et vos objectifs ici
SET STOP LOSS 10
SET TARGET PROFIT 10
DEFPARAM CumulateOrders = TRUE
DEFPARAM FlatBefore = 090000
DEFPARAM FlatAfter = 173000
EndTime = 173000
Indicator1= Stochastic [a,b](Close)
Indicator2=ExponentialAverage[c](Close)
Indicator3=RSI[d](Close)
// Conditions pour ouvrir une position acheteuse
IF NOT LongOnMarket AND Indicator1 > 50 AND Indicator3 < 30 THEN
bar1=barindex
ENDIF
IF Close CROSSES OVER Indicator2 and barindex-bar1<5 THEN
Buy 1 CONTRACTS AT MARKET
ENDIF
// Conditions pour fermer une position acheteuse
If LongOnMarket AND time > EndTime THEN
SELL AT MARKET
ENDIF
// Conditions pour ouvrir une position en vente à découvert
IF NOT ShortOnMarket AND Indicator1 < 50 AND Indicator3 > 70THEN
bar1=barindex
ENDIF
IF Close CROSSES UNDER Indicator2 and barindex-bar1<5 THEN
SELLSHORT 1 CONTRACTS AT MARKET
ENDIF
// Conditions pour fermer une position en vente à découvert
IF ShortOnMarket AND time > EndTime THEN
EXITSHORT AT MARKET
ENDIF
// Stops et objectifs : entrez vos stops et vos objectifs ici
SET STOP LOSS 10
SET TARGET PROFIT 10
Bonjour MontiL
N’oubliez pas d’utiliser le bouton “Insert PRT code” afin d’avoir un formatage correct du code que vous voulez insérer et obtenir une meilleure lisibilité pour ceux qui veulent vous aider 😉
Est-ce que les variables a,b,c et d de tes indicateurs correspondent bien à celles utilisées sur ton graphique ?
“Insert PRT code” –> merci du rappel Swapping !
Nicolas:
Merci pour la réponse si rapide. Il me semble que oui. Le problème se posait plutôt au niveau de l’achat-vente. Le programme achetait quand je voulais vendre et inversement.