Chiarimento Trailing MFE

Forums ProRealTime forum Italiano Supporto ProOrder Chiarimento Trailing MFE

Viewing 12 posts - 1 through 12 (of 12 total)
  • #162597

    Un chiarimento sul trailing MFE. Mi “sembrava” che il funzionamento era questo (esempio long): una volta che il prezzo raggiunge il livello di attivazione viene inserito o dal close o dal massimo raggiunto (nel mio caso il massimo: MaxPrice=Max(MaxPrice,high) una certa percentuale\punti di ritracciamento.

    Preferisco attivare il ritracciamento dal massimo raggiunto in quanto, a differenza del close, è un punto fisso indipendentemente dal timeframe utilizzato.

    Una volta quindi che viene attivato da un massimo assoluto, il livello del trailing dovrebbe solo salire se vengono fatti nuovi massimi, invece ho notato che a volte viene abbassato in automatico e non capisco il motivo.

    Posto la formula utilizzata ed una sequenza di immagini in cui si vede questo fatto: nella foto di sx ancora non è attivato il trailing. In quella centrale viene attivato e contemporaneamente cancellato lo stop loss e nell’ultima immagine a dx viene leggermente abbassato (STP da 19 punti a 18.90).

    Ecco la formula:

     

     

    #162599

    Questi sono i parametri del trailing-stop-profit che si vedono nel grafico con l’operazione in tempo reale:

    trailingActivation = (close * 0.7 / 100) / pointsize
    trailingDelta = (close * 0.6 / 100) / pointsize

    Set stop %loss 1
    Set target %profit 1.2

    #162604

    Qual’è la tua richiesta?

    Cosa dovrei vedere sulle foto?

    Nel caso LONG tu usi HIGH per assegnare i valori massimi a MaxPrice. Tieni presente che la strategia viene eseguita alla chiusura della candela, quindi il prezzo può avere ritracciato anche parecchio. Hai messo appena lo 0.1% di differenza tra l’attivazione e lo stop (sul dax sono circa 14 pip). Se la chiusura (CLOSE) è scesa di 10-11 punti (rispetto ad HIGH), non ne rimangono abbastanza per i requisiti minimi di distanza dall’ordine pendente STOP, quindi può non essere eseguito alle righe 19-20, oppure la strategia può essere interrotta.

     

    #162605

    La domanda: una volta raggiunto il livello di attivazione (trailing activation) che si attiva quando il prezzo sale dello 0.7%  e viene quindi inserito un trailing profit  (trailing delta) dello 0.6%  (poco sopra quindi del prezzo di entrata), MI ASPETTEREI che questo venga alzato ad ogni nuovo massimo raggiunto dal prezzo e mai più abbassato in ogni caso. Nella foto non accade questo: nella foto centrale (ora 17:30) il prezzo è 13172 ed il trailing profit a 13115.7. Nella foto di dx il prezzo è  salito ancora a mio favore a 13201 (ora 17:52). ed il trailing profit è sceso a 13115.6. Come è possibile?

    Il TS gira su un timeframe a 3 minuti (ho postato l’orario perchè sono più visibili i livelli del money management).

    Ho scelto high come specificato in quanto mi sembra più preciso: è indipendente dal timeframe (come lo è invece close)

    La differenza tra il livello di attivazione ed il trailing non è lo 0.1%, ma lo 0.6% quindi di tempo ce ne è anche troppo!

    La strategia viene eseguita alla chiusura certo, ma una volta raggiunto un massimo assoluto e tracciato un livello di trailing, come fa questo ad abbassarsi dato che è fissato e può solo salire?

     

     

    #162613

    Ok, adesso ho capito il meccanismo del delta.

    No, per mantenere il massimo/minimo, tra il calcolo attuale e quello precedente devi variare le righe 9 e 15 così:

     

    #162635

    Ciao Roberto, ho inserito quelle righe nel codice e fatto molti test, ma non mi sembra che ci sia nessuna differenza per quanto riguarda il trailing, dal backtest almeno non si vede nulla, dovrò provarlo in real.

    Unica cosa veramente stranissima, elimina molte (non ho controllato se tutte)  quelle operazioni in cui ci sono 3 operazioni su una candela che chiudono lo stop&reverse appena aperto (sto ancora aspettando una risposta dall’assistenza, in quanto mi dicevi che nella versione 10.3 quel problema  non c’era).

    Pensi che ci sia qualche spiegazione per cui il tuo leggero cambiamento in priceExit possa: 1)non avere effetto sul fatto che si abbassa il trailing al salire del prezzo, e 2)sul fatto che “sembra” scomparire il problema sullo stop&reverse? (posto un immagine dello stesso TS con (TS in alto) e senza il tuo cambiamento).

     

    #162641

    Credo che il problema sia dovuto alle righe:

    perché variando CLOSE ad ogni candela variano anch’esse. Dovresti inserirle subito dopo BUY e SELLSHORT, in modoo che non siano più eseguite fino alla prossima entrata.

     

    #162656

    Ti ringrazio. Faccio delle prove con i punti in modo da controllare meglio il funzionamento. Provo lasciando la formula come è, poi con:

    priceExit=max(priceExit,MaxPricetrailingDelta*pointsize)
    priceExit=min(priceExit,Minprice+trailingDelta*pointsize)
     e poi entrambi i casi inserendo i trailing dopo  buy e sellshort  come da tuo ultimo consiglio e ti faccio sapere.
    In ogni caso quello che uso (sono cambiati SOLO i nomi) è lo snippet code originale che TUTTI usano in Prt nel forum e che viene ripreso dall’articolo del blog di Nicolas.
    #162675

    1) Ho chiamato il TS con i trailing all’inizio:  Z

    2)Ho chiamato il TS con i trailing all’inizio e con la sostituzione: priceExit=max(priceExit,MaxPricetrailingDelta*pointsize: 2) Z-priceExit

    3)Ho chiamato il TS  con i trailing spostati dopo Buy-SellShort: 1B) Z-buySellshort

    4)Ho chiamato il TS con i trailing spostati dopo Buy-SellShort e con la sostituzione: priceExit=max(priceExit,MaxPricetrailingDelta*pointsize: 2B ZpriceExit-buySellshort

    I sistemi 1 e 3 ed 2 e 4 sono identici (foto 1), quindi spostando, come da tuo ultimo suggerimento, il trailing posto all’inizio dopo Buy-SellShort è completamente ininfluente.

    Rimane quindi la differenza se si scrive: priceExit=max(priceExit,maxPrice-trailingDelta*pointSize) al posto del classico: priceExit=maxPrice-trailingDelta*pointSize. La formula classica sembra funzionare con i punti, la variazione con il Max che hai proposto nel primo suggerimento  non funziona, non chiude le posizioni (foto 2) . Il TS in basso chiude dopo un ritracciamento di 60 punti, quello in alto con la modifica priceExit=max(priceExit,maxPrice-trailingDelta*pointSizr) non chiude quindi non funziona.

    QUINDI APPROFONDIRO SOLO IL SISTEMA INIZIALE Z, quello che usano tutti ed abbassa il livello del trailing inspiegabilmente in tempo reale. CIAO

     

    #162813

    Ciao Roberto, ti confermo che si sposta il trailing senza che venga fatto nessun nuovo massimo. Posto due immagini di questa mattina. Vorrei postare qualcosa anche nel forum in inglese per sentire Nicolas, dato che il trailing MFE è una sua invenzione. Pensi che sarebbe un duplicato del topic?

    (nelle due immagini in tempo reale e con trade reale si vede che non viene fatto nessun nuovo massimo, il prezzo si abbassa ed il trailing viene leggermente alzato: non si dovrebbe spostare fino a nuovi massimi)

    #162827

    Nicolas legge tutti i post, in qualunque lingua siano.

    Occorre però un codice completo e funzionante per testarlo, finché si tratta di domande generiche si resta sul generico!

     

    #162849

    Ciao Roberto, in effetti rileggendo l’articolo del blog di Nicolas, scrive: ” The “exitprice” levels are moving accordingly to the MFE at each new candlestick.”.

    La soluzione potrebbe essere quella di non far aggiornare il massimo a  maxPrice, finche  non venga registrato un nuovo massimo da quando si è attivato (con trailingActivation).

    Sai come si può riscrivere la formula per ottenere questo risultato? (la formula la ritrovi completa all’inizio del topic) Grazie

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

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