Aiuto codice stop in pari

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #62857 quote
    Gianluca
    Participant
    Master

    Ciao, scusate ho spulciato un pò il forum ma non sono riusco a trovare nulla che parli di come si dice ad una strategia di mettere uno stop in pari se il trade è in guadagno di n punti.

    Io ho scritto così, ma non funziona, ci sono diversi trade che seppur in guadagno di 200e (x esempio) poi hanno chiuso in negativo.

     

    // Condizioni per entrare su posizioni long
    
    tuecondizioni = open[1]>open[2] and (close[2] < open[2])
    
    
    IF NOT LongOnMarket AND TueCondizioni THEN
    BUY 1 CONTRACTS AT MARKET
    
    ENDIF
    
    // Stop e target: Inserisci qui i tuoi stop di protezione e profit target
    myprice = TRADEPRICE(1)
    if longonmarket and POSITIONPERF(1) > 0 then
    set stop ploss myprice
    sell at myprice limit
    endif
    
    set stop ploss 200
    set target pprofit 600

    Sicuramente sbaglio, ma non riesco a capire dove. Grazie mille in anticipo per l’aiuto 🙂

    #62891 quote
    robertogozzi
    Moderator
    Master

    No, POSITIONPERF restituisce i dati relativi a posizioni CHIUSE, non quella in corso.

    Puoi usare questo codice creato da Nicolas (https://www.prorealcode.com/blog/learning/breakeven-code-automated-trading-strategy/), ma tieni presente che verrà eseguito, come tutte le strategie, solo alla chiusura della candela e potrebbe capitare che il prezzo di breakeven sia scattato ma alla chiusura sia tornato indietro e in tal caso il breakeven non ti verrebbe attivato. Però è sempre meglio di niente.

    Tutti noi, da vari mesi ormai, stiamo aspettando la nuova versione di ProOrder, attesa prima della fine di quest’anno, che sarà scollegata dai timeframe e quindi consentirà l’esecuzione di codice anche (si spera) a candela in corso di formazione.

    Per il momento bisogna accontentarsi di questi rimedi parziali.

    #62906 quote
    Gianluca
    Participant
    Master

    No, POSITIONPERF restituisce i dati relativi a posizioni CHIUSE, non quella in corso. Puoi usare questo codice creato da Nicolas (https://www.prorealcode.com/blog/learning/breakeven-code-automated-trading-strategy/), ma tieni presente che verrà eseguito, come tutte le strategie, solo alla chiusura della candela e potrebbe capitare che il prezzo di breakeven sia scattato ma alla chiusura sia tornato indietro e in tal caso il breakeven non ti verrebbe attivato. Però è sempre meglio di niente. Tutti noi, da vari mesi ormai, stiamo aspettando la nuova versione di ProOrder, attesa prima della fine di quest’anno, che sarà scollegata dai timeframe e quindi consentirà l’esecuzione di codice anche (si spera) a candela in corso di formazione. Per il momento bisogna accontentarsi di questi rimedi parziali.

    Grazie roberto, è che non esistendo una guida vera e propria al codice è difficile a volte, e si perde tempo a fare prove e a smanettare, quando con una guida completa sarebbe tutto molto più semplice, meno male che ci siete voi del forum! Siete grandi.

    Tra l’altro quel semplice codice è profittevole come strategia 😀

    robertogozzi thanked this post
    #62949 quote
    ALE
    Moderator
    Master

    Scusate ma “positionperf” calcola anche la performance corrente a chiusura della candela quindi

    se si è a mercato e la posizione è in profitto il risultato è : positionperf>0

    #62950 quote
    robertogozzi
    Moderator
    Master

    Hai ragione ALE, POSITIONPERF o POSITIONPERF[0] restituisce la performance corrente alla chiusura della candela.

    #62953 quote
    ALE
    Moderator
    Master

    Grazie Roberto

    Scusa ma non capivo… se mi stessi sbagliando..

    ciao

    ale

    #62977 quote
    Gianluca
    Participant
    Master

    si è a mercato e la posizione è in profitto il risultato è : positionperf>0

    e quindi come ho scritto io dovrebbe andare o no? perchè non va? cmq cn il codice di Nicolas ho risolto.

    #62985 quote
    robertogozzi
    Moderator
    Master

    Scusami Gianluca, non avevo fatto caso alla riga 13, deve essere scritta così

    if longonmarket and POSITIONPERF(0) > 0 then    //o solo POSITIONPERF

    perché, al contrario di TRADEPRICE, la performance corrente è identificata da (0) oppure niente.

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

Aiuto codice stop in pari


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
Gianluca @altares Participant
Summary

This topic contains 7 replies,
has 3 voices, and was last updated by robertogozzi
8 years ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 02/15/2018
Status: Active
Attachments: No files
Logo Logo
Loading...