Bonjour,
J’utilise une stratégie en backtest sur laquelle j’ai un défini un stop limit à 80 points et il n’y a pas de TP et aucune condition de sortie de position, uniquement un stop suiveur qui coupe la position.
Elle est basée sur du 1 minute pour les indicateurs et du 10 secondes pour une entrée en position.
J’ai une sortie de position à 10h47 déclenchée par le stop suiveur (cf ligne orange dans screen) puis une entrée en position à 10h47″10′.
Et la position est coupée à 10h49 avec une infime perte et je ne comprends pas pourquoi.
Est-ce que cela peut venir de mon stop suiveur (pris sur ce site) ou dois-je chercher une autre explication ?
// PARAMETRES STOP SUIVEUR
SSdebut = 0// début du stop suiveur
SSpas = 5 // pas du stop suiveur
minDistance = 15
ssdebut = ssdebut*pipsize
sspas = sspas*pipsize
mindistance = mindistance*pipsize
IF NOT ONMARKET THEN
newSL=0
ENDIF
// STOP SUIVEUR - LONGS
IF LONGONMARKET THEN
// passage au breakeven
IF newSL=0 AND close-tradeprice(1)>=SSdebut and close-(tradeprice(1)+sspas)>mindistance THEN
newSL = tradeprice(1)+SSpas
ENDIF
// ajustement du stop suiveur
IF newSL>0 AND close-newSL>SSpas and close-newsl>mindistance THEN
newSL = newSL+SSpas
ENDIF
ENDIF
// STOP SUIVEUR - SHORTS
IF SHORTONMARKET THEN
// passage au breakeven
IF newSL=0 AND tradeprice(1)-close>=SSdebut and (tradeprice(1)-sspas)-close>mindistance THEN
newSL = tradeprice(1)-SSpas
ENDIF
// ajustement du stop suiveur
IF newSL>0 AND newSL-close>SSpas and newsl-close>mindistance THEN
newSL = newSL-SSpas
ENDIF
ENDIF
// SORTIE SUR STOP SUIVEUR
IF newSL>0 THEN
SELL AT newSL STOP
EXITSHORT AT newSL STOP
ENDIF
Merci de votre attention
Bonjour
J’ai un souci avec mon stop suiveur qui se déclenche à chaque début de bougie en 1 minute (défini sur un time frame de 1 minute) mais il ne dure que l’espace de 10 secondes car ma prise de position est faite en 10 secondes.
Donc, pendant les 10 premières secondes de chaque minute, il est bon et ensuite il revient à son niveau initial pendant les 50 secondes suivantes.
// PARAMETRES STOP SUIVEUR
//SSdebut = 0// début du stop suiveur
//SSpas = 5 // pas du stop suiveur
//minDistance = 15
ssdebut = ssdebut*pipsize
sspas = sspas*pipsize
mindistance = mindistance*pipsize
IF NOT ONMARKET THEN
newSL=0
ENDIF
// STOP SUIVEUR - LONGS
IF LONGONMARKET THEN
// passage au breakeven
IF newSL=0 AND close-tradeprice(1)>=SSdebut and close-(tradeprice(1)+sspas)>mindistance THEN
newSL = tradeprice(1)+SSpas
ENDIF
// ajustement du stop suiveur
IF newSL>0 AND close-newSL>SSpas and close-newsl>mindistance THEN
newSL = newSL+SSpas
ENDIF
ENDIF
// STOP SUIVEUR - SHORTS
IF SHORTONMARKET THEN
// passage au breakeven
IF newSL=0 AND tradeprice(1)-close>=SSdebut and (tradeprice(1)-sspas)-close>mindistance THEN
newSL = tradeprice(1)-SSpas
ENDIF
// ajustement du stop suiveur
IF newSL>0 AND newSL-close>SSpas and newsl-close>mindistance THEN
newSL = newSL-SSpas
ENDIF
ENDIF
// SORTIE SUR STOP SUIVEUR
IF newSL>0 THEN
SELL AT newSL STOP
EXITSHORT AT newSL STOP
ENDIF
Merci de votre aide
graphonprice newsl
Rajoutée en fin de code, cette ligne te permettra de visualiser dans la fenêtre du prix l’évolution de newsl, pour voir si le stop est là où tu pensais qu’il serait, ou pas… S’il n’a la valeur que tu pensais au moment de la sortie, alors la piste à remonter est de vérifier à leur tour avec graph ou graphonprice les valeurs des variables à partir desquelles newsl est construit (ce qui permet d’enquêter sur l’intégralité du code si besoin), jusqu’à déboucher sur celle qui n’a pas réagi comme souhaité, et en déduire les éventuelles modifications à faire au code (ou, parfois mais plus rarement, débusquer un éventuel bug plateforme).