Chiusura posizioni in giornata - NO overnight

Collapse
X
 
  • Ora
  • Show
Clear All
new posts
  • robdd
    Senior Member

    • Jul 2015
    • 138

    #1

    Chiusura posizioni in giornata - NO overnight

    Salve a tutti, spulciando nel forum avevo trovato questa formuletta (messa in exit long script e exit short script) pensando che permettesse la chiusura di qualsiasi posizione in essere al termine dell\'orario massimo impostato, ma applicando una strategia in "paper" mi sono accorto che non è così.

    Cosa sbaglio?

    Grazie.


    SET timeTrading =(TIME > 0900 AND TIME < 1730)
    AND (NOT timeTrading)
    OR TIME > 1730
  • Francario Massimiliano
    Administrator
    • Jul 2008
    • 1033

    #2
    Salve,
    per utilizzare gli orari delle sessioni di borsa nei Signal le consiglio di proseguire in questo modo:

    Negli script Buy e Sell:

    Codice:
    # Condizione di mercato aperto
    SET timeTrading = (TIME > 0900 AND TIME < 1730)
    
    # Condizione di entrata completa
    <Condizione di entrata Long/Short attuale> AND (timeTrading)
    Negli script di uscita ExitLong ed ExitShort:

    Codice:
    # Condizione di mercato aperto
    SET timeTrading = (TIME > 0900 AND TIME < 1730)
    
    # Condizione di uscita completa
    <Condizione di uscita ExitLong/ExitShort attuale> OR (timeTrading)
    Deve considerare inoltre che gli script di una Strategy vengono eseguiti solo e soltanto quando arrivano Tick (cioè aggiornamenti di prezzo) dal mercato, ed è quindi consigliabile utilizzare degli orari più ristretti negli script rispetto agli orari effettivi del mercato, in genere bastano anche 1 o 2 minuti in meno. In caso contrario, potrebbero non arrivare Tick e quindi gli script potrebbero non essere eseguiti, e di conseguenza le posizioni aperte rimarrebbero tali.

    Max Francario
    Manuale di beeTrader
    Manuale di Fiuto Beta

    Comment

    • Francario Massimiliano
      Administrator
      • Jul 2008
      • 1033

      #3
      test messaggio
      Manuale di beeTrader
      Manuale di Fiuto Beta

      Comment

      • SCOIATTOLO
        Member
        • Jun 2008
        • 53

        #4
        Originariamente Scritto da Francario Massimiliano
        test messaggio
        Se voglio inserire all\'interno di un UNICO TradindSystem Multiday una funzione temporale che comprenda NON SOLO UN PERIODO come nell\'esempio sopra riportato(9-17) ma più periodi TEMPORALI, come la devo impostare ?
        Mi spiego meglio con un esempio: "Voglio che il mio sistema entri a mercato dalle 9.00 alle 12.00 esca con tutte le posizioni e rientri dalle 15.00 alle 18.00 ed esca a quest\'ora con tutte le posizioni per poi rientrare il giorno dopo con gli stessi time frames"
        Grazie

        Comment

        • Apocalips
          Senior Member

          • May 2011
          • 2630

          #5
          Originariamente Scritto da Francario Massimiliano
          Salve,
          per utilizzare gli orari delle sessioni di borsa nei Signal le consiglio di proseguire in questo modo:

          Negli script Buy e Sell:

          Codice:
          # Condizione di mercato aperto
          SET timeTrading = (TIME > 0900 AND TIME < 1730)
          
          # Condizione di entrata completa
          <Condizione di entrata Long/Short attuale> AND (timeTrading)
          Negli script di uscita ExitLong ed ExitShort:

          Codice:
          # Condizione di mercato aperto
          SET timeTrading = (TIME > 0900 AND TIME < 1730)
          
          # Condizione di uscita completa
          <Condizione di uscita ExitLong/ExitShort attuale> OR (timeTrading)
          Deve considerare inoltre che gli script di una Strategy vengono eseguiti solo e soltanto quando arrivano Tick (cioè aggiornamenti di prezzo) dal mercato, ed è quindi consigliabile utilizzare degli orari più ristretti negli script rispetto agli orari effettivi del mercato, in genere bastano anche 1 o 2 minuti in meno. In caso contrario, potrebbero non arrivare Tick e quindi gli script potrebbero non essere eseguiti, e di conseguenza le posizioni aperte rimarrebbero tali.

          Max Francario
          Scusa Max, ma così come hai scritto il Ts entra e il tick dopo esce, mi sbaglio?

          dovrebbe essere così:

          Negli script di uscita ExitLong ed ExitShort:
          Codice:
          # Condizione di mercato aperto
          SET timeTrading = (TIME > 0900 AND TIME < 1730)
          
          # Condizione di uscita completa
          <Condizione di uscita ExitLong/ExitShort attuale> OR (timeTrading=0)
          Apo
          ....non si desidera ciò che è facile ottenere (Ovidio)....

          Comment

          • Francario Massimiliano
            Administrator
            • Jul 2008
            • 1033

            #6
            Originariamente Scritto da Apocalips
            Scusa Max, ma così come hai scritto il Ts entra e il tick dopo esce, mi sbaglio?

            dovrebbe essere così:

            Negli script di uscita ExitLong ed ExitShort:
            Codice:
            # Condizione di mercato aperto
            SET timeTrading = (TIME > 0900 AND TIME < 1730)
            
            # Condizione di uscita completa
            <Condizione di uscita ExitLong/ExitShort attuale> OR (timeTrading=0)
            Apo
            Giusto, chiedo venia...

            Max Francario
            Manuale di beeTrader
            Manuale di Fiuto Beta

            Comment

            • robdd
              Senior Member

              • Jul 2015
              • 138

              #7
              Me ne capita sempre una....ho scritto il vostro script come dalle istruzioni a video (cancellando quello che avevo scritto prima), ma la macchina risponde: "undefined: variabile \'condizione\'".

              Evidenziando peraltro la riga verde con la descrizione dell\'operazione.

              Comment

              • Cagalli Tiziano
                Senior Member
                • Dec 2007
                • 11252

                #8
                Originariamente Scritto da robdd
                Me ne capita sempre una....ho scritto il vostro script come dalle istruzioni a video (cancellando quello che avevo scritto prima), ma la macchina risponde: "undefined: variabile \'condizione\'".

                Evidenziando peraltro la riga verde con la descrizione dell\'operazione.
                meglio che fai un\'immagine di quello che hai scritto sennò come facciamo.
                Magari è una virgola, un punto, uno spazio ....
                Se vuoi puoi postare lo script incollandolo in mezzo alla scritta

                CODE CODE

                che ti esce premendo il tasto giallo che ti ho evidenziato.
                File Allegati
                ..se corri dietro a due lepri, non ne prendi nemmeno una.

                Comment

                • robdd
                  Senior Member

                  • Jul 2015
                  • 138

                  #9
                  Originariamente Scritto da Cagalli Tiziano
                  meglio che fai un\'immagine di quello che hai scritto sennò come facciamo.
                  Magari è una virgola, un punto, uno spazio ....
                  Se vuoi puoi postare lo script incollandolo in mezzo alla scritta

                  CODE CODE

                  che ti esce premendo il tasto giallo che ti ho evidenziato.
                  Codice:
                  # Condizione di mercato aperto
                  SET timeTrading = (TIME > 0900 AND TIME < 1730)
                  
                  # Condizione di entrata completa
                  <Condizione di entrata Long/Short attuale> AND (timeTrading)
                  File Allegati

                  Comment

                  • Marco Bosco
                    Senior Member

                    • Sep 2012
                    • 419

                    #10
                    Originariamente Scritto da robdd
                    Codice:
                    # Condizione di mercato aperto
                    SET timeTrading = (TIME > 0900 AND TIME < 1730)
                    
                    # Condizione di entrata completa
                    <Condizione di entrata Long/Short attuale> AND (timeTrading)


                    ciao robdd,
                    praticamente devi sostituire la scritta:

                    Codice:
                    <Condizione di entrata Long/Short attuale> AND (timeTrading)
                    con il TUO codice.

                    Nel tuo caso in questo modo:

                    Codice:
                    INPUTS: @periods(8) , @trailAmount(50) , @trailPercent(10) , @stopLoss(140)
                    
                    
                    set TRAILING_STOP = @trailAmount
                    set TRAILING_PERCENT = @trailPercent
                    set STOP_LOSS = @stopLoss
                    
                    
                    
                    
                    set hh = HighestHighValue(@periods) 
                    
                    
                    # Condizione di mercato aperto
                    SET timeTrading = (TIME > 0900 AND TIME < 1730)
                     
                    
                    
                    #<Condizione di entrata Long/Short attuale> AND (timeTrading)
                    (high = hh) AND (timeTrading)
                    I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. L’insieme dei due costituisce una forza incalcolabile. (Albert Einstein)

                    Comment

                    • robdd
                      Senior Member

                      • Jul 2015
                      • 138

                      #11
                      Sono una spina....

                      E negli script exitlong/short che devo scrivere?......

                      Così?

                      Codice:
                      # Condizione di mercato aperto
                      SET timeTrading = (TIME > 0900 AND TIME < 1730)
                      # Condizione di uscita completa
                      (TRAILING_STOP = @trailAmount OR TRAILING_PERCENT = @trailPercent OR STOP_LOSS = @stopLoss) OR (timeTrading=0)

                      (come sempre, GRAZIE)
                      Last edited by robdd; 01-09-15, 20:52.

                      Comment

                      • Andrea Cagalli
                        Senior Member
                        • Oct 2010
                        • 3995

                        #12
                        Originariamente Scritto da robdd
                        Sono una spina....

                        E negli script exitlong/short che devo scrivere?......

                        Così?

                        Codice:
                        # Condizione di mercato aperto
                        SET timeTrading = (TIME > 0900 AND TIME < 1730)
                        # Condizione di uscita completa
                        (TRAILING_STOP = @trailAmount OR TRAILING_PERCENT = @trailPercent OR STOP_LOSS = @stopLoss) OR (timeTrading=0)

                        (come sempre, GRAZIE)
                        Ciao,
                        devi scrivere le condizioni di uscita. Nel tuo caso mi pare di capire che non ci siano condizioni particolari se non l\'orario e trailing stop o stop loss.

                        Quindi negli script di uscita devi scrivere solo

                        Codice:
                        # Condizione di mercato aperto
                        SET timeTrading = (TIME > 0900 AND TIME < 1730)
                        # Condizione di uscita completa
                        timeTrading=0
                        perchè le uscite di money management (trailing stop, stop loss e take profit) vengono gestite già nel Buy Script.

                        Ciao Ciao
                        Manuale beeTrader

                        Comment

                        • robdd
                          Senior Member

                          • Jul 2015
                          • 138

                          #13
                          Grazie ancora!

                          Comment

                          • robdd
                            Senior Member

                            • Jul 2015
                            • 138

                            #14
                            Salve a tutti.

                            Ho seguito le istruzioni alla lettera.

                            Su paper trading Minifib timeframe 15\' (close), mi ha aperto una posizione alle 17.29.56, ma io vorrei avere una posizione flat alle 17.30.
                            Come posso risolvere?

                            Grazie.

                            Comment

                            • Andrea Cagalli
                              Senior Member
                              • Oct 2010
                              • 3995

                              #15
                              Originariamente Scritto da robdd
                              Salve a tutti.

                              Ho seguito le istruzioni alla lettera.

                              Su paper trading Minifib timeframe 15\' (close), mi ha aperto una posizione alle 17.29.56, ma io vorrei avere una posizione flat alle 17.30.
                              Come posso risolvere?

                              Grazie.
                              Ciao,
                              basta che aggiungi al tuo script

                              Codice:
                              OR TIME >= 1729
                              nelle condizioni di uscita, in pratica così facendo la posizione viene chiusa a prescindere se l\'orario è maggiore o uguale delle 17.29

                              quindi diventa

                              Codice:
                              # Condizione di mercato aperto
                              SET timeTrading = (TIME > 0900 AND TIME < 1730)
                              
                              # Condizione di uscita completa
                              (timeTrading = 0) OR (TIME >= 1729)
                              Ciao Ciao
                              Manuale beeTrader

                              Comment

                              Working...