Be-nParticipant
Average
Bonjour,
Est-il possible de connaître le nombre de positions clôturé depuis le début d’une stratégie par exemple ? Est-ce qu’une fonction en particulier permet cela ?
Ou dois-je réaliser une boucle que j’incrémente … dans ce cas i=0 to (jusqu’où ??)
Merci d’avance pour vos réponses ! 😉
Be-nParticipant
Average
Après quelques recherches et tests, la meilleure piste que j’ai pour l’instant est cette boucle conditionnée :
NombreDePositions = 0
WHILE ONMARKET = 1 DO
IF SHORTONMARKET = 1 THEN
NombreDePositions = NombreDePositions+1
ENDIF
NombreDePositions = NombreDePositions
IF SHORTONMARKET = 1 THEN
NombreDePositions = NombreDePositions+1
ENDIF
break
WEND
GRAPH NombreDePositions
Sans le BREAK, ce code me génère une boucle infinie …
Sinon, il me renvoie seulement 2 sur 39 positions prises réellement à partir de mon exemple.
J’attends vos précieux retours ! 😀
Ta boucle est inopérante car tu ne t’en sers pas du tout au final 🙂 Pour bien comprendre les boucles, je vais suggérer la formation sur la programmation avancée (gratuite si client PRT).
Si tes ordres sont des ordres au marché, tu peux simplement incrémenter une variable à chaque nouvelle prise de position (variable count dans cette exemple) :
if macondition then
buy at market
count=count+1
endif
Bonjour !
En voilà une question qui m’intéresse.
Dans la stratégie que je code actuellement, j’utilise des ordres BUY x AT y STOP (ordre conditionnel pour une cassure de fractale). Je pourrais incrémenter un compteur à la bougie suivante en testant si le bot est en position.
Or, il se peut que la position soit clôturée au sein de la même bougie (sur une longue mèche par exemple). Le test de présence sur le marché serait alors faux à la bougie suivante, le compteur ne serait pas incrémenté.
Avez-vous une idée ?
Merci et bonne journée !
Ce petit snippet pourrait t’aider à savoir si une position a été ouverte et fermé durant la même bougie :
if ( (not onmarket and onmarket[1] and not onmarket[2]) or (tradeindex(1)=tradeindex(2) and tradeindex(1)=barindex[1] and tradeindex(1)>0) ) and lastcheck<>barindex then
lastcheck = barindex
wasonmarket=1
else
wasonmarket=0
endif