Arrêt et redémarrage automatique du code

Forums ProRealTime forum Français Support ProOrder Arrêt et redémarrage automatique du code

Viewing 2 posts - 1 through 2 (of 2 total)
  • #223101
    • Bonjour, petit nouveau, j’aurais besoin d’aide : je voudrais que mon code s’arrête automatiquement et clôture toutes les positions a partir d’un certain nombres de pertes (ici 200 euros) et redémarre à une période donnée (par exemple 1 journée après)

    Bien merci, à celui qui saura me         répondre

    Mon code :

    DEFPARAM CumulateOrders = False
    ONCE OrderSize = 1

    noEntryBeforeTime = 080000
    timeEnterBefore = time >= noEntryBeforeTime
    noEntryAfterTime = 183000
    timeEnterAfter = time < noEntryAfterTime
    daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0

    indicator1 = RSI[14](close)
    c1 = (indicator1 <= 30)
    IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry AND not longonmarket THEN
    EXITSHORT AT MARKET
    IF PositionPerf(1) < 0 THEN
    OrderSize = OrderSize * 2
    ELSIF PositionPerf(1) > 0 THEN
    OrderSize = 1
    ENDIF
    BUY ordersize CONTRACT AT MARKET
    ENDIF

    indicator2 = RSI[14](close)
    c2 = (indicator2 >= 70)
    IF c2 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry AND not shortonmarket THEN
    SELL AT MARKET
    IF PositionPerf(1) < 0 THEN
    OrderSize = OrderSize * 2
    ELSIF PositionPerf(1) > 0 THEN
    OrderSize = 1
    ENDIF
    SELLSHORT ordersize CONTRACT AT MARKET
    ENDIF

    IF strategyprofit<-200 THEN

    QUIT

    endi

    SET STOP pLOSS 5
    SET TARGET pPROFIT 10

    #223102

    Bonjour et bienvenue,

    pour commencer tu dois te clarifier ce que signifie précisément pour toi “perte 200 euros”, car ça peut être perte par rapport au capital initial (tel que tu l’as fait avec strategyprofit), mais aussi perte par rapport au point haut de ta courbe P&L (le highwatermark) et là ça se programmerait différemment, ou bien perte sur la journée quel que soit le résultat de la session précédente tant qu’elle gagnait ou perdait moins de 200 (possible découpage par jour étant une possibilité sous-entendue par la possibilité de reprendre la journée suivante), ou bien pertes consécutives soit que sur positions clôturées soit tenant compte aussi du latent de positions en cours… bref autant de cas précis qui se programment tous différemment mais qui correspondent tous à un plus vaste “perte de 200 euros”.

    Ensuite, quit est définitif, or tu souhaites pouvoir reprendre automatiquement, il faut donc faire autrement.

    Tu peux utiliser ce qu’on appelle un flag, une variable booléenne qui vaudra 0 ou 1 selon que tu interdis le trade ou l’autorise, et au lieu de “quit” on va se servir de ce flag, appelons-le fairepause par exemple, pour filtrer les ouvertures de positions, avec les modifications suivantes respectivement en fin, début et milieu du code.

    1) En fin de code, là où tu faisais le quit, à la place on va faire:

     

    2) En début de code, tu mets

     

    3) Enfin, au milieu du code, tu rajoutes à tes conditions long:

    pareil pour les conditions short:

     

Viewing 2 posts - 1 through 2 (of 2 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login