Take profit à distance du dernier plus bas

Forums ProRealTime forum Français Support ProOrder Take profit à distance du dernier plus bas

Viewing 8 posts - 1 through 8 (of 8 total)
  • #134125

    Bonjour,

     

    Je cherche à définir un take profit à une distance en point égale au dernier plus bas pour un achat long.

    J’ai essayé les 2 codes suivants et à chaque fois le take profit est placé bien plus loin que la valeur attendue:

    Auriez-vous une idée de codage valide?

     

    Merci,

    #134143

    Je pense que ta deuxième version est meilleure, mais je modifierai le pprofit en profit pour être en version prix et non en points, si le pointsize n’est pas égal à 1, cela pourrait poser problème.

    Par ailleurs, il est possible que parfois cette soustraction donne une valeur négative ? à tester avec un GRAPH close-tp1

    #135340

    Bonjour,

    J’avais posté une réponse il y a quelques jours mais je vois qu’elle n’est pas parue. L’ayant fait depuis mon smartphone il y a du avoir un soucis.

    Juste pour dire que je suis effectivement arrivé à mes fin en utilisant la deuxième version et “profit” au lieu de “pprofit”.

    Merci encore Nicolas

    #135345

    Du coup pour aller plus loin, j’utilise ce code en semi-automatique, c’est-à-dire que je lance le code seulement quand je repère une potentielle opportunité et n’est pas destiné à tourner tout seul tout le temps.

    Dans l’idée je souhaite acheter quand le MACD passe 0, mais je ne souhaite pas forcément que la position soit prise au premier croisement mais à un croisement ultérieur.

    Par exemple sur l’image je lance le robot au niveau de la flèche rouge et je souhaite que l’ordre soit pris à la flèche verte, et non la bleue, soit au deuxième croisement du macd au dessus de 0.

    En utilisant le code suivant la position s’ouvre au premier croisement alors que j’ai ajouté la variable m comme déclencheur.

     

    Quelle modification puis-je apporter?

    #135376

    Logique puisque ta condition ‘if m = 1’ est juste en dessous de ‘m=1’ (ligne 15), donc le code fera ce que tu lui demandes, à la ligne 22 la variable m est bien égale à 1.

    Le code est lu de haut en bas.

    Soit tu fais un incrément de m :

    m = m+1

    et à la ligne 15 tu testes si m>1

    Soit tu inverses la position des lignes pour que ta ligne 15 soit lu aux bougies après celle ou tu donnes à m la valeur 1.

    #135520

    Merci pour ton retour mais j’ai du mal à saisir. Car je commence avec m = 0 et m est censé passer à 1 seulement si la consition i1 crosses under 0 est réalisée, or le trade est pris alors que la condition n’est pas réalisée.

    #135540

    La variable prend une valeur à 1 peut être avant le backtest lors de la lecture de l’historique, dans ce cas faire un

    en tête du code de la stratégie.

    Quand on veut tester la valeur d’une variable on peut utilise GRAPH, soit ici :

    ce qui pourrait t’aider à comprendre pourquoi “m” change d’état, et quand !

    #135547

    C’est bien ce que je me disais, que la valeur est prise à la lecture de l’historique.

    Je vais donc jongler avec la valeur du preloadbars et un incrément de m.

    Tres bonne journée

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

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