Pagina 2 di 3 Prima 123 Ultima
  1. #11

    Data Registrazione
    Apr 2012
    Messaggi
    43

    TotalNetProfit

    Aiuto, io la funzione TotalNetProfit non riesco proprio a farla funzionare. Riportando quanto descritto nel manuale: "La funzione può essere utilizzata per impostare preventivamente delle soglie di uscite monetarie riferite all'intera Strategy"). L'intenzione sarebbe quella di chiudere la strategia quando il profitto giornaliero é > di una cifra (p.es. 700) ed altrettanto quando la perdita < - 500. Tali valori (secondo la mia interpretazione) sono certamente differenti dai Set di gestione M.M. Trailing_Stop, _Percent e Stop_Loss che riguardano il singolo trade).
    Es.:

    SET TRAILING_STOP = @trailAmount
    SET TRAILING_PERCENT = @trailPercent
    SET STOP_LOSS = @stopLoss

    SET TnP= TotalNetProfit()

    FOLLOWME()> 0

    TnP > 700 (linea X)

    AND ATR(@periods, @matype)> 35

    AND TIME <1730


    Modifiche su Linea X: senza tale linea di comando ottengo 540 trade, con TnP< da 300 sino a 5000 ottengo sempre 848 trade (ma in altri script , forse perché senza il Followme, con TnP< da 300 sino a 10000 i trade sono filtrati da 20 al massimo ottenibile senza la linea di comando X)
    con TnP> da 300 a 5000 ottengo zero trade.
    In pratica non ci capisco nulla.
    Essendo una strategy position, non dovrebbe comportarsi come Money Management (M.M.) giornaliero? E' sbagliato fare il backtest con barre equivalenti a più giorni, e che detti settaggi sono validi in strategy? Potete confermare?
    Se sbaglio, dove sbaglio??
    Potreste aiutarmi, grazie.
    Armando
    Ultima modifica di armando; 04-08-14 alle 06:57

  2. #12

    Data Registrazione
    Mar 2011
    Messaggi
    117
    Citazione Originariamente Scritto da armando Visualizza Messaggio
    Aiuto, io la funzione TotalNetProfit non riesco proprio a farla funzionare. Riportando quanto descritto nel manuale: "La funzione può essere utilizzata per impostare preventivamente delle soglie di uscite monetarie riferite all'intera Strategy"). Essendo una strategy position, non dovrebbe comportarsi come Money Management (M.M.)? L'intenzione sarebbe quella di chiudere la strategia quando il profitto giornaliero > di una cifra (p.es. 700) ed altrettanto quando la perdita < - 500. Tali valori (secondo la mia interpretazione) sono certamente differenti dai Set di gestione M.M., come nello script sottostante,che riguardano il singolo trade).
    Ho provato in diversi modi, p. es. , come descritto nella discussione precedente:

    SET TRAILING_STOP = 100
    SET TRAILING_PERCENT = 10
    SET STOP_LOSS = 400

    SET tnp= TotalNetProfit()
    SET a = MovingAverage(@price, 8, @matype)
    SET b = MovingAverage(@price, 14, @matype)
    SET c = MovingAverage(@price, 20, @matype)
    SET d = MovingAverage(@price, 30, @matype)
    SET e = LinearRegressionForecast(@price, 8)

    a> b AND
    b> c AND
    c> d AND
    ((a+b+c)/3) - d> 15
    AND TIME <1730
    and tnp > 700 and tnp < -500

    Ma in backtest mi azzera tutti i trade. Dove sbaglio?



    Potreste aiutarmi, grazie. (non sono un informatico)
    Armando
    Ciao Armando non mi sono chiare alcune cose, non ho capito questa riga
     ((a+b+c)/3) - d> 15
    essendo medie mobili "15" deve essere riferito a un particolare sottostante giusto?

    ultima cosa... con la funzione total net profit tu vuoi che raggiunto un certo guadagno o una certa perdita il sistema si arresti?

    Saluti
    Fabio
    Ultima modifica di Jackal; 03-08-14 alle 13:46
    "Amat Victoria Curam"
    "Il Successo di un uomo stà nella sua perseveranza" (Bruce Lee)

  3. #13

    Data Registrazione
    Aug 2008
    Località
    Edolo (BS)
    Messaggi
    693
    Citazione Originariamente Scritto da armando Visualizza Messaggio
    Aiuto, io la funzione TotalNetProfit non riesco proprio a farla funzionare. Riportando quanto descritto nel manuale: "La funzione può essere utilizzata per impostare preventivamente delle soglie di uscite monetarie riferite all'intera Strategy"). Essendo una strategy position, non dovrebbe comportarsi come Money Management (M.M.)? L'intenzione sarebbe quella di chiudere la strategia quando il profitto giornaliero > di una cifra (p.es. 700) ed altrettanto quando la perdita < - 500. Tali valori (secondo la mia interpretazione) sono certamente differenti dai Set di gestione M.M., come nello script sottostante,che riguardano il singolo trade).
    Ho provato in diversi modi, p. es. , come descritto nella discussione precedente:

    SET TRAILING_STOP = 100
    SET TRAILING_PERCENT = 10
    SET STOP_LOSS = 400

    SET tnp= TotalNetProfit()
    SET a = MovingAverage(@price, 8, @matype)
    SET b = MovingAverage(@price, 14, @matype)
    SET c = MovingAverage(@price, 20, @matype)
    SET d = MovingAverage(@price, 30, @matype)
    SET e = LinearRegressionForecast(@price, 8)

    a> b AND
    b> c AND
    c> d AND
    ((a+b+c)/3) - d> 15
    AND TIME <1730
    and tnp > 700 and tnp < -500

    Ma in backtest mi azzera tutti i trade. Dove sbaglio?



    Potreste aiutarmi, grazie. (non sono un informatico)
    Armando
    Ciao,
    nella seguente istruzione:

    and tnp > 700 and tnp < -500

    gli stai dicendo che sia il guadagno che la perdita devono essere veri, ed è di fatto impossibile...
    dovresti usare l'istruzione OR al posto di AND:

    AND tnp > 700 OR tnp < -500

  4. #14

    Data Registrazione
    Apr 2012
    Messaggi
    43
    Grazie JacKal x avermi risposto e farò come da Te suggerito.
    In effetti ho tolto la richiesta di massima perdita per cercare di capire se la funzione TotalNetProfit corrisponde alle mie aspettative.
    Ultima modifica di armando; 04-08-14 alle 08:53

  5. #15

    Data Registrazione
    Apr 2012
    Messaggi
    43
    Ciao Fabio, quella linea ((a+b+c)/3) -d >15 corrisponde alla zona di indecisione, dove le MM si avvicinano, che hai sempre ogni volta che un trend cambia direzione (a volte lo riconferma). Chiaramente x il sell sarà l'inverso. Il valore 15 é la distanza tra loro e lo si può modificare. All'ultima domanda ti rispondo di sì, ma non ci siesco, perlo meno in backtest.
    Armando

  6. #16

    Data Registrazione
    Mar 2011
    Messaggi
    117
    Ciao Armando, cosi dovrebbe funzionare. Togli i "cancelletti" che ho messo in quanto l'ho provato su un sottostante random e non potevo usare i tuoi parametri.

    Ricordati di mettere anche uno script di uscita.
    Ah.. ti ho anche impostato le medie come SIMPLE; cambiale se vuoi usare una media diversa.

    Saluti
    Fabio

    SET tnp= TotalNetProfit()
    SET a = MovingAverage(CLOSE, 8, SIMPLE)
    SET b = MovingAverage(CLOSE, 14, SIMPLE)
    SET c = MovingAverage(CLOSE, 20, SIMPLE)
    SET d = MovingAverage(CLOSE, 30, SIMPLE)
    SET e = LinearRegressionForecast(CLOSE, 8)
    
    a> b AND
    b> c AND
    c> d AND
    
    #((a+b+c)/3) - d> 15
    
    
    tnp < 700 OR tnp > -500
    "Amat Victoria Curam"
    "Il Successo di un uomo stà nella sua perseveranza" (Bruce Lee)

  7. #17

    Data Registrazione
    Apr 2012
    Messaggi
    43

    TotalNetProfit

    Grazie Jackal ma avevo già provato anche questa alternativa, ma mi fà "saltare" la condizione ((a+b+c)/3) - d> 15 che rappresenta l'ssenziale dello script. Ovvero x mantenere funzionante lo script la devo togliere. Comunque tale funzione non sembra funzionare anche in altri script, vi allego anche l'esempio sottostante.

    Esempio di Followme in backtest con script realizzato senza TotalNetProfit:

    Followme senza TnP.jpg


    Esempio di script Followme con TotalNetProfit
    Buy:
    INPUTS: @price(CLOSE), @periods(14), @trailAmount(100), @trailPercent(10), @stopLoss(400), @SLperiods(8)
    SET TRAILING_STOP = @trailAmount
    SET TRAILING_PERCENT = @trailPercent
    SET STOP_LOSS = @stopLoss
    SET TnP= TotalNetProfit()
    FOLLOWME()> 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    TnP< 700 OR TnP >-500

    Sell:
    SET TnP= TotalNetProfit()
    FOLLOWME()< 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    TnP< 700 OR TnP >-500

    E suo risultato:

    Followme con TnP.jpg

    Risposta assurda.

    E' indispensabile poter gestire la posizione in un trading automatizzato ma non sembra funzionare. Vi prego dirmi che sbaglio da qualche parte.
    Saluti
    Armando
    Ultima modifica di armando; 05-08-14 alle 18:08

  8. #18
    L'avatar di Francario Massimiliano
    Data Registrazione
    Jul 2008
    Messaggi
    734
    Salve Armando,
    Citazione Originariamente Scritto da armando Visualizza Messaggio
    ....

    Esempio di script Followme con TotalNetProfit
    Buy:
    INPUTS: @price(CLOSE), @periods(14), @trailAmount(100), @trailPercent(10), @stopLoss(400), @SLperiods(8)
    SET TRAILING_STOP = @trailAmount
    SET TRAILING_PERCENT = @trailPercent
    SET STOP_LOSS = @stopLoss
    SET TnP= TotalNetProfit()
    FOLLOWME()> 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    TnP< 700 OR TnP >-500

    Sell:
    SET TnP= TotalNetProfit()
    FOLLOWME()< 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    TnP< 700 OR TnP >-500

    Risposta assurda.

    E' indispensabile poter gestire la posizione in un trading automatizzato ma non sembra funzionare. Vi prego dirmi che sbaglio da qualche parte.
    Saluti
    Armando
    nei suoi script manca la specifica di come usare il risultato della funzione TotalNetProfit().
    Io modificherei gli script in questo modo:

    Buy:
    INPUTS: @price(CLOSE), @periods(14), @trailAmount(100), @trailPercent(10), @stopLoss(400), @SLperiods(8)
    SET TRAILING_STOP = @trailAmount
    SET TRAILING_PERCENT = @trailPercent
    SET STOP_LOSS = @stopLoss
    SET TnP= TotalNetProfit()
    FOLLOWME()> 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    AND (TnP< 700 OR TnP >-500)
    Sell:
     SET TnP= TotalNetProfit()
    FOLLOWME()< 0
    AND ATR(@periods, @matype)> 37
    AND TIME <1730
    AND (TnP< 700 OR TnP >-500)
    In pratica, in entrambi gli script Buy e Sell, ho modifica l'ultima riga, aggiungendo l'AND iniziale e le parentesi che racchiudono la valutazione del TotalNetProfit.


    Max Francario

  9. #19

    Data Registrazione
    Apr 2012
    Messaggi
    43

    TotaNetProfit

    Grazie Max, direi che in backtest funziona (con qualche stranezza nell'analisi dei trade), adesso lo provo in strategy.
    Saluti
    Armando

  10. #20

    Data Registrazione
    Apr 2012
    Messaggi
    43

    TotalNetProfit in strategy

    Gent. Max e Fabio
    Di seguito lo script posto in strategia nella giornata odierna.
    Script Buy:
    INPUTS: @price(CLOSE), @periods(14), @trailAmount(100), @trailPercent(10), @stopLoss(400), @SLperiods(8)
    INPUTS: @matype(EXPONENTIAL)

    SET TRAILING_STOP = @trailAmount
    SET TRAILING_PERCENT = @trailPercent
    SET STOP_LOSS = @stopLoss
    SET TnP= TotalNetProfit()
    SET a = MovingAverage(@price, 8, @matype)
    SET b = MovingAverage(@price, 14, @matype)
    SET c = MovingAverage(@price, 20, @matype)
    SET d = MovingAverage(@price, 30, @matype)
    a> b AND
    b> c AND
    c> d AND
    ((a+b+c)/3) - d> 15
    AND TIME <1730
    AND (TnP< 800 OR TnP >-500)

    Script Sell:
    SET a = MovingAverage(@price, 8, @matype)
    SET b = MovingAverage(@price, 14, @matype)
    SET c = MovingAverage(@price, 20, @matype)
    SET d = MovingAverage(@price, 30, @matype)
    SET TnP = TotalNetProfit()
    a< b AND
    b< c AND
    c< d AND
    d- ((a+b+c)/3) > 15
    AND TIME <1730
    AND (TnP< 800 OR TnP >-500)

    E questo é il risultato:

    2014-08-06_Trade Nastrone_EMA_M4.jpg

    Mi sembra che adesso, con la suddetta formulazione, lo script "tollera" la presenza del TotalNetProfit in oggetto ma che nel contempo, come dal trend il risultato sia purtroppo di non intervenuto.
    Saluti
    Armando
    Immagini Allegate Immagini Allegate

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Contattaci

Chiama gli esperti
+39 0425 792923

Chiamaci
Email

Richiedi informazioni via E-MAIL
info@playoptions.it

Scrivici
Nostri Uffici

Vieni a trovarci
45100 Rovigo

Contattaci

Serve Aiuto?

Contattaci per maggiori informazioni.

Denis MorettoSpecialista Finanziario
Contattaci