IMPOSTAZIONE STOP LOSS E TAKE PROFIT su candela set-up

Viewing 12 posts - 1 through 12 (of 12 total)
  • Author
    Posts
  • #13724 quote
    Alessandro Paolini
    Participant
    Average

    Buongiorno a tutti, son o Alessandro

    ho realizzato un sistema che entra alla rottura del massimo o del minimo di una determinata candela, il mio problema è che vorrei impostare lo stop loss sul massimo (se entro in short) o sul minino (entrata long), ho usato la funzione range, ma così facendo lo imposta correttamente ma all’apertura di un altra candela modifica lo stop loss.

    Il take profit lo vorrei impostare a ipotesi 1.5 o 2 volte il range della candela di ingresso, senza che questo si modifichi ad ogni nuova candela.

    Inoltre è possibile impostare un ingresso di qualche pips sopra il massimo o sotto il minimo della candela di set-up?

    Grazie mille per l’aiuto!

    #13729 quote
    Nicolas
    Keymaster
    Master

    Ciao, devi aggiornare il tuo paese nel profilo. È possibile sfogliare i forum per questa domanda, dal momento che è spesso richiesto. Ho trovato una discussione su questo argomento in inglese:

    http://www.prorealcode.com/topic/stops-in-relation-to-previous-candlesbars/

    Fammi sapere se sei ancora nei guai.

    #13743 quote
    Alessandro Paolini
    Participant
    Average

    Grazie per la risposta, solo che non riesco a piazzare lo stop loss e il take profit dove vorrei, di seguito riporto parte del codice per gli ingressi a mercato.

    Ho provato ad inserire il codice SET STOP LOSS low oppure high a seconda della posizione ma non me lo imposta dove vorrei.

    Riepilogo la richiesta:

    • posizione long ordine stop high della candela di set-up (ok) e stop loss su low della stessa candela, take profit 1,5 volte il range della candela di set-up;
    • posizione short ordine stop low della candela di set-up (ok) e stop loss su high della stessa candela, take profit 1,5 volte il range della candela di set-up;
    
    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    BuyPrice = High[1]+2*Pipsize
    SellPrice = Low[1]-2*Pipsize
    
    miecondizioniLONG
    if miecondizionilong then
    BUY AT BuyPrice STOP
    endif
    
    miecondizioniSHORT
    
    if micondizioniSHORT then
    sellshort at SellPrice STOP
    endif
    
    GRAZIE PER L'AIUTO!
    #13809 quote
    Alessandro Paolini
    Participant
    Average

    So che esiste un modo per realizzare quello che vorrei, ma non riesco a farlo, nessuno sa darmi un mano?

    Grazie!

    #13810 quote
    Nicolas
    Keymaster
    Master

    È possibile aggiungere queste 2 righe alla fine del codice che dovrebbero soddisfare la sua richiesta :

    SET STOP LOSS mystoploss
    SET TARGET PROFIT range[1]*1.5

    Ma in primo luogo, è necessario calcolare lo stop loss se la configurazione del segnale è SHORT o LONG:

    Aggiungere questa linea dopo la nona :

    mystoploss = close-low[1]

    e questa dopo la quindicesima:

    mystoploss = high[1]-close
    #14582 quote
    Alessandro Paolini
    Participant
    Average

    Ciao

    ho provato più soluzioni per cercare di ottenere quello che mi serve, ma non riesco.

    ad ogni nuova candela modifica lo stop loss ed il take profit, inoltre aggiungendo le stringhe mystoploss il sistema mi dice che voglio inserire un ordine ad un livello negativo e quindi interrompe il sistema.

    di seguito riporto dei codici (solo per provare come vengono piazzati gli ordini) e che non funzionano:

    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    //candela ingresso -entry-
    e = 1
    
    //indicatori
    indicator1 = ExponentialAverage[21](close)
    BuyPrice = High[1]+2*Pipsize
    SellPrice = Low[1]-2*Pipsize
    
    
    Rem Classic Long
    c1 = (close[0] > indicator1[0])
    
    if c1 then
    BUY 1 contracts AT BuyPrice STOP
    stoploss = close-low[1]
    endif
    
    Rem Classic Short
    c9 = (close[0] < indicator1[0])
    
    
    if c9 then
    sellshort 1 contracts at SellPrice STOP
    stoploss = high[1]-close
    endif
    
    SET STOP LOSS stoploss
    SET TARGET PROFIT range[1]*1.5

    questo codice non fa quello che vorrei

    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    //candela ingresso -entry-
    e = 1
    
    //indicatori
    indicator1 = ExponentialAverage[21](close)
    BuyPrice = High[1]+2*Pipsize
    SellPrice = Low[1]-2*Pipsize
    
    
    Rem Classic Long
    c1 = (close[0] > indicator1[0])
    
    if c1 then
    stoploss = close-low[1]
    BUY 1 contracts AT BuyPrice STOP
    endif
    
    Rem Classic Short
    c9 = (close[0] < indicator1[0])
    
    
    if c9 then
    stoploss = high[1]-close
    sellshort 1 contracts at SellPrice STOP
    endif
    
    SET STOP LOSS stoploss
    SET TARGET PROFIT range[1]*1.5

    questo codice non funziona e blocca subito proorder

    —————————————————————————————————————————–

    Grazie per l’aiuto!

    #14775 quote
    Alessandro Paolini
    Participant
    Average

    GRAZIE!

    Richiesta codici per i seguenti comandi:

    posizioni LONG
    – impostare ordine stop X pips sopra il massimo della candela di set-up;
    – Stop loss X pips sotto il minimo della candela di set-up, che non si modifichi ad ogni nuova candela;
    posizioni SHORT
    – impostare ordine stop X pips sotto il minimo della candela di set-up;
    – stop loss X pips sopra il massimo della candela di set-up, che non si modifichi ad ogni nuova candela;
    – impostare take profit X volte lo stop loss;
    – impostare trailing stop a tempo: se alla candela successiva quella di ingresso, si arriva a un livello, es. 0.5 volte il rischio, si sposta lo stop a pari + x pips e poi attivare un traling stop (so che è possibile eseguire tale operazione)
    – se stop loss > di X annulla ordine
    di seguito riporto parte del codice che ho provato ad usare (senza le condizioni)
    CODICE PROREALTIME
    // Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    
    //candela ingresso -entry-
    e = 1
    
    //indicatori
    indicator1 = ExponentialAverage[50](close)
    BuyPrice = High[e]+2*Pipsize
    SellPrice = Low[e]-2*Pipsize
    Tp= range[1]*1.5
    
    CONDIZIONI LONG
    
    if CONDIZIONI LONG then
    BUY 1 contracts AT BuyPrice STOP
    stoploss = close-low[1]
    endif
    
    
    CONDIZIONI SHORT
    
    if CONDIZIONI SHORT then
    sellshort 1 contracts at SellPrice STOP
    once stoploss = high[1]-close
    endif
    
    SET STOP LOSS stoploss
    SET TARGET PROFIT tp
    #25118 quote
    maximus78
    Participant
    Senior

    Ciao Alessandro, sei riuscito a risovolvere?

    Anche io ho provato ad impostare uno stop loss al minimo della candela di entrata in posizione long, per esempio quando avviene una rottura rilazista della resistenza del canale di donchian ed un take profit alla stessa distanza,

    calcolando la distanza tra chisura (o apertura della candela successiva) e minimo:

    set stop loss (close[0]-low[0])

    set target profit (close[0]-low[0])

    ma come dici tu, il programma sposta lo stop loss.

    Non riesco a capire perchè non piazza correttamente stop loss e take profit a quella distanza, è così banale l’operazione!

    Fammi sapere, grazie e buona giornata

    Massimo

    #25750 quote
    maximus78
    Participant
    Senior

    Ciao ho risolto,

    stop loss e target profit vanno messe nelle condizioni nelle condizioni di buy e sell, prima di endif e non in fondo a tutti i  codici.

    Se vuoi impostare in un trade long lo stop loss sotto il minimo della candela di breakout definisci prima lo stop loss:

    stoploss=close[0]-low[0]

    ed il target profit alla distanza dall’entry che vuoi, per esempio:

    targetprofit=(close[0]-low[0])*2

    Nel tuo caso quindi:

    if CONDIZIONI LONG then
    BUY 1 contracts AT BuyPrice STOP
    set stop loss stoploss
    set target profit targetprofit
    endif
    
    Fai lo stesso per le condizioni short.
    
    Ciao
    
    Massimo
    
    
    
    
    #25751 quote
    Alessandro Paolini
    Participant
    Average

    Ciao

     

    finalmente sono riuscito ad accedere nuovamente all’account, si avevo già risolto, e ti avrei risposto, ma secondo me l’errore sta che se devi mettere lo stop sotto la candela di che ti ha dato il segnale il codice deve essere

    stoploss=close[1]-low[1] e non 0, dato che 0 è la candela attualmente in formazione e 1 è la candela precedente che quindi ti da la dimensione dello stop loss.

     

    Ciao Alessandro

    #26091 quote
    maximus78
    Participant
    Senior

    Ciao Alessandro, si infatti, [0] è la candela corrente, siccome il trade viene aperto all’apertura della candela successiva, la candela di riferimento rimane quella [0].

    Ho sperimentato con il backtest e funziona con [0], imposta lo stop loss ed il target profit sotto il minimo della candela che ha fatto da breakout.

    Ho provato anche con la condizione di buy stop al prezzo high + 2 pips come nel tuo sistema sopra, ed effettivamente compra o vende al giusto prezzo sempre utilizzando [0]

    BuyPrice = High[0]+2*Pipsize
    SellPrice = Low[0]-2*Pipsize

    Questo solo nel caso in cui la candela successiva supera il massimo della candela precedente, altrimenti l’ordine stop viene cancellato nelle candele successive.

    Ho dei problemi però con il posizionamento di stop loss e take profit.

    Sei riuscito a settarli in modo giusto?

    Ciao

    Massimo

    #29618 quote
    Alessandro Paolini
    Participant
    Average

    Ciao Massimo,

    si è corretto [0], ho provato anche io…ma mi rimane ancora il problema dello stop loss, che anche provando a mettere come range[0], lo stop loss viene cambiato ad ogni nuova candela.

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

IMPOSTAZIONE STOP LOSS E TAKE PROFIT su candela set-up


ProOrder: Trading Automatico & Backtesting

New Reply
Summary

This topic contains 11 replies,
has 3 voices, and was last updated by Alessandro Paolini
8 years, 10 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 09/26/2016
Status: Active
Attachments: No files
Logo Logo
Loading...