Erreur de Probacktest

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #180714 quote
    Giltdd
    Participant
    New

    Bonjour,

    Je suis débutant sur PRT.

    J’ai créée l’indicateur suivant qui fonctionne comme je m’y attendais c’est à dire  : Renvoi 1 pour signal d’achat et -1 pour signal de vente

    // Description condition haussiere
    TIMEFRAME(1 hour)
    C1 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C2 = Close > Average[100](close)
    C3 = Close > Average[130](close)
    C4 = Close > Average[200](close)
    // Description condition baissiere
    C17 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C18 = Close < Average[100](close)
    C19 = Close < Average[130](close)
    C20 = Close < Average[200](close)
    
    TIMEFRAME(15 minutes)
    C5 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C6 = Close > Average[100](close)
    C7 = Close > Average[130](close)
    C8 = Close > Average[200](close)
    // Description condition baissiere
    C21 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C22 = Close < Average[100](close)
    C23 = Close < Average[130](close)
    C24 = Close < Average[200](close)
    
    TIMEFRAME(5 minutes)
    C9 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C10 = Close > Average[100](close)
    C11 = Close > Average[130](close)
    C12 = Close > Average[200](close)
    C13 = Average[100](close) > Average[200](close)
    C14 = Average[130](close) > Average[200](close)
    C33 = Average[100](close) > Average[130](close)
    // Description condition baissiere
    C25 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C26 = Close < Average[100](close)
    C27 = Close < Average[130](close)
    C28 = Close < Average[200](close)
    C29 = Average[100](close) < Average[200](close)
    C30 = Average[130](close) < Average[200](close)
    C35 = Average[100](close) < Average[130](close)
    //C31 = Stochastic[14,3](close[1]) > 80
    //C32 = Stochastic[14,3](close[1]) CROSSES UNDER Stochasticd[14,3,5](close [1])
    
    IF C1 AND C2 AND C3 AND C4 THEN
    IF C5 AND C6 AND C7 AND C8 THEN
    IF C9 AND C10 AND C11 AND C12 AND C13 AND C14 AND C33 THEN
    IF Stochasticd[11,3,5]<20 THEN
    IF Stochastic[11,3] CROSSES OVER Stochasticd[11,3,5] THEN
    R=1
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ENDIF
    
    IF C17 AND C18 AND C19 AND C20 THEN
    IF C21 AND C22 AND C23 AND C24 THEN
    IF C25 AND C26 AND C27 AND C28 AND C29 AND C30 AND C35 THEN
    IF Stochasticd[11,3,5]>80 THEN
    IF Stochastic[11,3] CROSSES UNDER Stochasticd[11,3,5] THEN
    R=-1
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ENDIF
    RETURN R
    

     

    J’ai voulu créer un Probacktest en m’appuyant sur cet indicateur mais cela ne fonctionne pas.

    L’outil me renvoie le message suivant :  “Le Backtest ne peut pas démarrer à cause d’une erreur d’analyse de code : ligne 2, colonne 0”.

    Je ne sais pas comment résoudre le problème.

    Pourriez-vous m’aider ?

    Cordialement

    #180747 quote
    JC_Bywan
    Moderator
    Master

    Bonjour, quel est le code du backtest précisément? Seul le code de l’indicateur est joint, donc on ne peut pas supposer que c’est “cette” ligne 2 ci-dessus qui est à regarder. A moins que l’indicateur ait été copié-collé tel quel dans une fenêtre de backtest, auquel cas il faut enlever la ligne return, ajouter les ordres d’achat, vente et/ou target et/ou stop avant de pouvoir considérer que la transformation de l’indicateur en backtest est exploitable sans erreur.

    #180748 quote
    Giltdd
    Participant
    New

    Bonjour,

    Merci pour votre retour

    Oui désolé… voici le code du Probacktest

    L’erreur apparait dès ce simple code associé à l’indicateur dont j’ai transmis le code.

    // Définition des paramètres du code
    DEFPARAM CumulateOrders = False // Cumul des positions désactivé
    
    // Conditions pour ouvrir une position acheteuse
    indicator1 = CALL "#IND_Mala_Debutant HB"(close)
    c1 = (indicator1 = 1)
    
    IF c1 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    #180797 quote
    JC_Bywan
    Moderator
    Master

    Fonctionne sans call:

    DEFPARAM CumulateOrders = False
    
    TIMEFRAME (1 hour)
    C1 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C2 = Close > Average[100](close)
    C3 = Close > Average[130](close)
    C4 = Close > Average[200](close)
    // Description condition baissiere
    C17 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C18 = Close < Average[100](close)
    C19 = Close < Average[130](close)
    C20 = Close < Average[200](close)
     
    TIMEFRAME(15 minutes)
    C5 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C6 = Close > Average[100](close)
    C7 = Close > Average[130](close)
    C8 = Close > Average[200](close)
    // Description condition baissiere
    C21 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C22 = Close < Average[100](close)
    C23 = Close < Average[130](close)
    C24 = Close < Average[200](close)
     
    TIMEFRAME(5 minutes)
    C9 = Close > (DHigh(1)+DLow(1)+DOpen(0))/3
    C10 = Close > Average[100](close)
    C11 = Close > Average[130](close)
    C12 = Close > Average[200](close)
    C13 = Average[100](close) > Average[200](close)
    C14 = Average[130](close) > Average[200](close)
    C33 = Average[100](close) > Average[130](close)
    // Description condition baissiere
    C25 = Close < (DHigh(1)+DLow(1)+DOpen(0))/3
    C26 = Close < Average[100](close)
    C27 = Close < Average[130](close)
    C28 = Close < Average[200](close)
    C29 = Average[100](close) < Average[200](close)
    C30 = Average[130](close) < Average[200](close)
    C35 = Average[100](close) < Average[130](close)
    //C31 = Stochastic[14,3](close[1]) > 80
    //C32 = Stochastic[14,3](close[1]) CROSSES UNDER Stochasticd[14,3,5](close [1])
     
    IF C1 AND C2 AND C3 AND C4 THEN
    IF C5 AND C6 AND C7 AND C8 THEN
    IF C9 AND C10 AND C11 AND C12 AND C13 AND C14 AND C33 THEN
    IF Stochasticd[11,3,5]<20 THEN
    IF Stochastic[11,3] CROSSES OVER Stochasticd[11,3,5] THEN
    R=1
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ENDIF
     
    IF C17 AND C18 AND C19 AND C20 THEN
    IF C21 AND C22 AND C23 AND C24 THEN
    IF C25 AND C26 AND C27 AND C28 AND C29 AND C30 AND C35 THEN
    IF Stochasticd[11,3,5]>80 THEN
    IF Stochastic[11,3] CROSSES UNDER Stochasticd[11,3,5] THEN
    R=-1
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ELSE
    R=0
    ENDIF
    ENDIF
     
    if R=1 then
    BUY 1 CONTRACT AT MARKET
    ENDIF
    #180867 quote
    Giltdd
    Participant
    New

    Bonjour,

    Je vous remercie beaucoup.

    Effectivement ça marche.

    Du coup j’ai une questions svp

    – Est-ce que cela veut dire que je peux pas faire appel à un indicateur que j’ai créé pour l’utiliser dans un Probacktest (sauf à l’adapter comme vous me l’indiquez) ?

    #180887 quote
    Nicolas
    Keymaster
    Master

    Non c’est bien possible d’utiliser un CALL, cependant le message d’erreur que tu obtiens ne nous permet pas de débloquer la situation, le mieux étant de lancer une demande de support technique via l’interface de la plateforme et en y référant ce sujet dans le corps du message, merci.

    #188764 quote
    Wim
    Participant
    Junior

    Je suis tombé dans ce piège plusieurs fois. Dans l’indicateur appelé par la commande CALL il y a du code MTF (MultiTimeFrame). ProBacktTest n’aime pas du code MTF dans une subroutine. Quand tu intègres le code MTF dans la stratégie même, comme montré par JC_Bywan, ProBackTest l’exécute sans faille. Dommage que le message d’erreur de PRoBackTest ne donne pas ce tuyeau.

    #188927 quote
    Khaled
    Participant
    Veteran

    C’es typique d’un problème de CALL de Multiframe. Donc, coller directement le code de l’indicateur dans l’Algo.

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.

Erreur de Probacktest


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Giltdd @giltdd Participant
Summary

This topic contains 7 replies,
has 5 voices, and was last updated by Khaled
4 years ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 11/01/2021
Status: Active
Attachments: No files
Logo Logo
Loading...