Pattern di Gramza

Viewing 15 posts - 1 through 15 (of 54 total)
  • #44312
    R05

    Salve a tutti vi scrivo per chiedervi, gentilmente, aiuto per cercare di completare il seguente pattern che dovrebbe riproporre quello di Gramza. Mi servono due informazioni:

    • Come impostare lo stop loss qualche punto sotto il minimo/sopra il massimo della candela subito precedente a quella di entrata in posizione
    • Come impostare il trailing stop qualche punto sotto il minimo/sopra il massimo della candela successiva man mano che il trade guadagna

    Es.: time frame 15 minuti: entro in posizione long alle 9:15 e lo stop è qualche punto sotto il minimo della candela delle 9:00. Incomincio a guadagnare e alle 9:30 lo stop si dovrà spostare qualche punto sotto il minimo della candela delle 9:15 e così via.

    Grazie a chiunque mi aiuterà.

     

     

    defparam flatbefore = 080000

    defparam flatafter = 173000

    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate

     

    Hammer = (Close<Open AND (Open-Low) >= 2*(Open-Close))

    Hammer2 = (Close>Open AND (high-open) >= 2*(Close-Open))

    ShootingStar = (close>open and (high-close)>=2*(close-open))

    ShootingStar2 = (close<open and (close-low)>=2*(open-close))

    Candelarossa = (open>close)

    Candelaverde = (open<close)

     

    s = high

    t = high[1]

    z = high[2]

    stoploss = (close CROSSES UNDER low[1])

     

    // Condizioni per entrare su posizioni long

    IF NOT longOnMarket and s<t and t<z and (hammer or hammer2 or ShootingStar or ShootingStar2 or candelaverde) THEN

    buy 1 CONTRACTS at high+1 stop

    ENDIF

     

    s = low

    t = low[1]

    z = low[2]

    stoploss = (close CROSSES over high[1])

     

    // Condizioni per entrare su posizioni short

    IF NOT shortOnMarket and s>t and t>z and (hammer or hammer2 or ShootingStar or ShootingStar2 or candelarossa) THEN

    sellshort 1 CONTRACTS at low-1 stop

    ENDIF

     

    // Stop e target

    set stop ploss stoploss

    SET TARGET pPROFIT 10

    #44450
    R05

    Buon pomeriggio, nessuno mi può aiutare col pattern di Gramza?

    #44476

    Per settare lo STOP LOSS iniziale:

    Per il TRAILING STOP, basta confrontare il minimo/massimo di ogni barra con le variabili (di cui sopra) ed eventualmente aggiornarle ed inserire l’ordine di STOP con il nuovo valore:

    Non l’ho verificato, devi testarlo tu.

    Gli ordini LIMIT e STOP (non quelli a mercato) vengono annullati automaticamente da ProOrder alla chiusura di ciascuna candela, in questo caso ogni 15 minuti, quindi vanno reinseriti di nuovo ad ogni candela, anche se non è stato fatto un nuovo massimo/minimo, questo per il trailing. Resta, invece, sempre valido l’rdine di STOP indicato inizialmente all’apertura dell’operazione.

    Per la tua riga di codice

    non va bene, in quanto mette nella variabile “stoploss” un valore logico (0 oppure 1), in quanto gli assegna il valore vero/falso del fatto che CLOSE abbia un incrocio rialzista col MASSIMO precedente.

    Inoltre, sew ho ben capito cosa intendi per massimi/minimi precedenti, tu intendi quelli che precedono la candela d’entrata. Non c’è bisogno di mettere low [1] o high[1] o close[1], in quanto ogni strategia viene eseguita alla chiusura della candela (che quindi è quella corrente, non la precedente), ad esempio all 09:00 viene eseguita la tua strategia sul 15 minuti e le condizioni vengono testate sulla candela aperta alle 08:45:00, la precedente è quella delle 08:30:00. Il trade, se deve essere aperto, viene aperto SEMPRE all’apetrtura della candella a quella appena chiusa, quindi nell’esempio di cui sopra alle 09:00:00. E’ un pochino complicato all’inizio capire alcuni meccanismi di ProOrder.

    Riepilogando:  alle 09:00:00 viene eseguita la strategia verificando che le condizioni siano soddisfatte sulla candela delle 08:45:00 che si è appena chiusa e, in caso affermativo, viene aperta un’operazione Long/Short sulla candele delle 09:00:00 che sta per aprirsi.

     

    #44478

    Scusami per qualche errore di battitura, in particolare la frase “Il trade, se deve essere aperto, viene aperto SEMPRE all’apetrtura della candella a quella appena chiusa,” va intesa come “”Il trade, se deve essere aperto, viene aperto SEMPRE all’apertura della candela successiva a quella appena chiusa,”.

    Roberto

    #44481
    R05

    Ci mancherebbe. Grazie, gentilissimo. Provo e ti faccio sapere

    #44483
    R05

    Un’altra gentilezza se possibile. Nel back test c’è la funzione Probacktest in modalità tick per tick che se spuntata mi cambia di molto i risultati del back test stesso.

    Non riesco a capire: deve spuntare la casella o devo lasciarla? Non vorrei che penso che una strategia vada bene e invece poi non è buona.

    Grazie.

    #44488

    Purtroppo ProOreder, fino a fine 2016, aveva il problema dello Stop Loss e del Take Profit sulla stessa barra.

    In pratica quando capitava che nel corso della stessa barra ci fossero sia lo Stop Loss che il Take Profit, ProOrder prendeva per buono il Take Profit, anche se, nella realtà poteva essere successo che fosse stato colpito per primo lo Stop Loss, con ovvii risultati di backtest falsati!

    Questo per come era impostata la piattaforma. Dall’1/1/2017 con la nuova versione il problema è stato risolto aggiungendo quella dicitura che tu hai detto, da spuntare o meno.

    In realtà sarebbe bene (almeno sui timeframe maggiori) spuntarla sempre perché in tal modo quando capitano sia Stop Loss che Take Profit sulla stessa candela ProOrder la esamina tick per tick per vedere quale dei due viene colpito per primo, in modo da avere backtest affidabili. Questo però rallenta il sistema e quindi il backtest, inoltre tale modalità non può essere usata se il backtest parte da un pò di tempo indietro, ad esempio con il Daily mi pare si possano testare in quel modo solo gli ultimi 2-3 anni, non di più, per altri timeframe meno ancora.

    Quindi il backtest, senza quella spunta, è meno affidabile, a meno che tu non operi su timeframe brevi, forse dal 15 minuti in giù, non saprei, prova a fare i test con e senza la spunta, se il risultato non cambia significa che quel problema non c’è.

    Nelle prime fasi di scrittura di una strategia si può omettere la spunta per velocizzare il backtest, per poi aggiungerla nelle fasi finali.

    #44549
    R05

    Gent.mo Roberto ho provato a fare le modifiche che mi hai proposto ma purtroppo, per quanto riguarda lo stop, appena entro in posizione viene inserito sul massimo della candela in cui entro (a me servirebbe sul max della candela precedente) e poi quando va in trailing stop mi sposta lo stop subito sul massimo della candela successiva ma in questo modo deve andare per forza nella mia direzione altrimenti con un minimo ritracciamento lo stop viene preso subito.

    Sul codice seguente che mi hai proposto, siccome non partiva, ho riportato minlow=minlow e maxhigh=maxhigh, non so però se corretto (anche se mi fa partire il trading system).

    IF close > open THEN               //LONG
       MinLow   = low
       StopLoss = ((close low) / pipsize) + 2  //2 pips sotto il minimo
    ELSE                               //SHORT
       MaxHigh  = high
       StopLoss = ((high close) / pipsize) + 2 //2 pips sopra il massimo
    ENDIF

    Grazie per la disponibilità.

    #44557

    L’istruzione

    potrebbe non essere MAI eseguita, ad esempio su EurUsd che vale 1.1700 circa, perché aggiungendoci 1 diventa 2.1700 e NON si verificherà per un bel pò, mentre potrebbe andare bene con lo YEN od il DAX, ma è solo un caso. Per essere sicuro che funzioni sempre aggiungendo (o togliendo) 1 pip devi scrivere:

    è ProOrder che, conoscendo il valore di ogni pip per ciascuno strumento, fa i dovuti aggiustamenti.

    Con ancora un pò di tempo a disposizione proverò a fare ulteriori verifiche.

     

    #44564

    Questo è il tuo codice come io l’ho modificato:

    Ho aggiunto i calcoli dello StopLoss, come avevo suggerito, poi ho modificato gli IF long e short perché non serve verificarlo, in quanto con DEFPARAM CumulateOrders gli hai già impedito di eseguire più di un’operazione.

    Con le tre istruzioni GRAPH finali (puoi commentarle quando non vuoi usarle) puoi vedere i valori delle variabili.

    A me funziona, non m’interessa se profittevole o meno in quanto non sono entrato nel merito della logica. Questo lo devi fare tu.

     

     

    #44606
    R05

    Si scusa grazie col forex sbagliavo. Per il resto lo sto provando in demo e mi sembra tutto ok. Continuo a testarlo. Ho solo dovuto togliere graph perché mi dava errore (allego l’immagine).

    #44618
    R05

    Avrei anche un’altra richiesta, gentilmente, da fare. Vorrei cercare di sfruttare l’entrata su massimi e minimi tipo “turtle soup”: in pratica se ho un nuovo massimo a 20 periodi dovrei entrare short quando raggiunge il massimo precedente e posizionare lo stop sopra il massimo della candela di entrata in cui si è verificato il nuovo massimo. Allego il codice preso nella libreria a cui ho fatto delle modifiche: riesco ad entrare short sotto il minimo della candela precedente a 20 periodi e viceversa long ma mi mancano le seguenti due condizioni:

    • vorrei poter entrare anche durante la stessa barra al raggiungimento del minimo/massimo precedente come al punto 1 e al punto 2 dell’immagine allegata che è di oggi nel caso in cui la condizione si verifichi (so che proorder fa entrare alla barra successiva, ma non c’è un metodo per entrare nella candela al verificarsi della condizione e non entrare solo alla barra successiva?)
    • vorrei che lo stop sia sul max giornaliero (o della candela di setup) e la massima perdita deve essere pari a 30 euro altrimenti il trade non parte

    Ringrazio sempre della disponibilità.

     

     

     

    #44632

    No, si può entrare solo subito DOPO la chiusura della barra,  all’apertura della successiva. Questo almeno finché non verrà rilasciata una verione, speriamo entro fine anno, che sarà slegata al timeframe.

    Ricorda che

    Può andare bene per il dax o altri indici, o per coppie come UsdJpy, per le altre no, dovresti usare

    Il massimo giornaliero, se sei sul daily, è semplicemente dato da

    che è la chiusura della barra in corso, poi il trade, a condizioni verificate, verrà aperto all’apertura della successiva.

    Se usi un TF (TimeFrame) inferiore al giorno puoi anche avere il massimo/minimo giornaliero, sapendo quante candele sono passate, usando

    Se, ad esempio, sei su un TF ad 1 minuto e sono le 090000 ed il nuovo giorno è iniziato alle 000001, sai che sono trascorse 540 barre (9 ore per 60 barre ogni ora) ed indichi 60 nelle parentesi quadre.

    Per la perdita massima, basta che verifichi tu che i PIPS calcolati come Stop Loss non la superino, se sei sul MiniDAX, ad esmpio, dove 1 PIP = 1 Euro, verifica di non avere uno Stop Loss maggiore.

    Tieni presente che il broker prevede anche Stop Loss minimi, ad esempio IG chiede almeno 6 pips di Stop Loss per il DAX, quindi se indichi un valore inferiore il trade non viene eseguito, la strategia riceve un errore e ProOrder la termina e dovrai intervenire manualmente per farla ripartire.

     

    #44633

    Ad ogni modo, sei vuoi cercare dettagli su un’istruzione, thread e post su un particolare tema, puoi usare il box di ricerca che sta sotto il tuo avatar, basta che ci vada sopra col mouse e si apre ed è subito in alto, come puoi vedere dalla foto allegata.

     

    1 user thanked author for this post.
    #44635

    Scusami, ma le righe 1, 2 e 3 precedenti vanno sostituite con

     

Viewing 15 posts - 1 through 15 (of 54 total)

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