Stop loss qui ne se place pas

Forums ProRealTime forum Français Support ProOrder Stop loss qui ne se place pas

Viewing 3 posts - 1 through 3 (of 3 total)
  • #244681

    Bonjour,

    Je souhaite placer un SL fixe sur le plus bas de la dernière bougie et un TP à distance égale au stop mais force est de constater qu’il ne se place pas.

    Ca me fait un ratio de winrate de 99% (pas mal mais pas raisonnable haha)

     

    Voici mon code :

    DEFPARAM CumulateOrders = False

    //Variables
    BollingerPeriod = 20
    BollingerDeviation = 2.5
    BollingerMiddle = Average[BollingerPeriod](Close)
    BollingerUpper = BollingerMiddle + BollingerDeviation * Std[BollingerPeriod](Close)
    BollingerLower = BollingerMiddle – BollingerDeviation * Std[BollingerPeriod](Close)
    DistanceBollinger = (BollingerUpper-BollingerLower)

    Bas = low[1]
    DistanceStop = tradeprice – low[1]

    if close > average[7] and low < average[7] and DistanceBollinger > 0.01 then
    buy 1 share at market
    set stop ploss Bas
    set target profit DistanceStop
    endif

    #244692

    set stop ploss  : il faut un nombre de Point

    il faut ecrire

    set stop ploss close-Bas

    ou remplacer par distancestop

    et le TP il est au dessus du close a revoir

    1 user thanked author for this post.
    #244722

    En examinant votre code, je constate quelques erreurs dans le calcul du Stop Loss (SL) et du Take Profit (TP), ce qui empêche l'exécution correcte des ordres.

    Problèmes avec Bas = low[1]

    • Vous définissez le Stop Loss à une distance = Bas donc le stop sera rarement déclenché.
    • Au lieu de cela, vous pouvez définir un prix d'arrêt Bas. Mais cela a un problème et c'est que nous ne connaissons pas le prix d'entrée (il sera dans le prochain bar à l'ouverture).

    Calcul DistanceStop incorrect

    • Vous utilisez DistanceStop = tradeprice - low[1] , mais tradeprice est le prix de la dernière transaction effectuée.
    • Au moment de l'entrée, aucune transaction n'a encore été exécutée, donc cette valeur n'a pas de sens car il s'agit du prix de sortie de la dernière transaction.
    • De plus, il se pourrait que la distance soit négative…

    Voici une proposition avec les conditions suivantes :

    • Condition not onmarket → Empêche le SL et le TP d'être constamment recalculés une fois qu'une position est déjà ouverte.
    • Nouveau calcul stoploss → Il est désormais calculé comme le minimum entre la bougie actuelle et la bougie précédente, garantissant qu'il est toujours à un niveau valide.
    • Calcul de la distance du Stop Loss ( distanceStop ) → Elle est désormais basée sur le prix de clôture de la bougie sur laquelle se produit la condition d'entrée ( entryprice = close ).
    • Utilisation set stop price et set target price → Les arrêts sont désormais définis sur des prix exacts au lieu d'une distance relative, évitant ainsi les erreurs d'exécution.
Viewing 3 posts - 1 through 3 (of 3 total)

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