Apertuta e chiusura posizione all'incrocio di 2 mm

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #76795 quote
    keemax73keemax73
    Participant
    Average

    Buongiorno a tutti, vorrei chiedervi un’aiuto per creare un codice che all’incrocio al rialzo di 2 medie mibili compri un contratto come primo ingresso.

    All’incrocio successivo al ribasso delle due medie mobili vende 2 contratti per chiudere la posizione precedente e riaprirne una nuova.

    Al successivo reincrocio al rialzo delle due medie mobili compra 2 contratti per chiudere la vecchia posizione e riaprire un’altra e così via.

    Grazie

    #76803 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Ecco fatto, non l’ho testato molto, provalo e segnalami eventuali discordanze:

    MediaVeloce = average[21,0](close)
    MediaLenta  = average[50,0](close)
    
    IF IncrocioRialzista = 0 THEN
       IncrocioRialzista = MediaVeloce CROSSES OVER  MediaLenta
       IF IncrocioRialzista THEN
          IncrocioRibassista = 0
       ENDIF
    ENDIF
    
    IF IncrocioRibassista = 0 THEN
       IncrocioRibassista = MediaVeloce CROSSES UNDER  MediaLenta
       IF IncrocioRibassista THEN
          IncrocioRialzista = 0
       ENDIF
    ENDIF
    
    // Posizioni LONG
    IF IncrocioRialzista AND Not LongOnMarket THEN
       IF ShortOnMarket THEN           //prima uscire da un eventuale SHORT...
          EXITSHORT AT MARKET
       ENDIF
       BUY 1 CONTRACT AT MARKET        //... poi aprire una posizione LONG
    ENDIF
    
    // Posizioni SHORT
    IF IncrocioRibassista AND Not ShortOnMarket THEN
       IF LongOnMarket THEN           //prima uscire da un eventuale LONG...
          SELL AT MARKET
       ENDIF
       SELLSHORT 1 CONTRACT AT MARKET //... poi aprire una posizione SHORT
    ENDIF
    #76895 quote
    keemax73keemax73
    Participant
    Average

    Grazie per il tuo aiuto, proverò a testarlo.

    Una piccola domanda : perché usi sempre un solo contratto ? Se ho una posizione aperta in long e voglio rigirarmi short all’incrocio al ribasso delle 2 mm, devo necessariamente vendere due contratti allo scoperto, altrimenti non chiude la vecchia posizione.

    Sono questi 2 comandi “EXITSHORT AT MARKET” e “SELL AT MARKET” che chiudono la posizione attiva per poi aprirne una nuova con questi altri due comendi : “BUY 1 CONTRACT AT MARKET” e “SELLSHORT 1 CONTRACT AT MARKET” ?

    Grazie.

    #76905 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    No, ne acquisto sempre 1.

    Solo che PRIMA, alle righe 20-22 e 28-30, chiudo le posizioni contrarie in corso.

    SELL non serve a VENDERE, ma semplicemente a chiudere un operazione BUY (long). Se tu, quando non sei a mercato, dai il comando BUY non succede assolutamente niente, viene ignorata perché serve solo a CHIUDERE un long!

    Per vendere, invece, occorre l’istruzione SELLSHORT (e conseguentemente EXITSHORT per chiuderla).

    #123190 quote
    P@oLoP@oLo
    Participant
    Junior

    Ciao Roberto,

    anch’io sono interessato a questo codice….l’ho provato ma non entra ed esce correttamente agli incroci. Indice DAX a 5 minuti. Non riesco a capire…..mi puoi aiutare?

    #123194 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    A me funziona correttamente, sul DAX a 5 minuti.

    Hai usato le stesse medie, si?

    Fammi sapere il giorno e l’ora della candela dove c’è un entrata/uscita errata.

    #123197 quote
    P@oLoP@oLo
    Participant
    Junior

    Medie esponenziali….lenta a 21 mentre veloce a 10 periodi.
    Vorrei che entrasse/uscisse a mercato all’incrocio esatto.

    #123201 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Entra all’incrocio esatto.

    #124133 quote
    P@oLoP@oLo
    Participant
    Junior

    Ciao Roberto, si hai ragione entra all’incrocio esatto! GRAZIE

     

    Una domanda.

    Avendo 3 medie invece di 2:

    EMA1

    EMA2

    EMA3

    Volendo entrare all’incrocio CROSSES OVER di EMA2 con EMA3  ed uscire (NON stop/reversal) ma all’incrocio CROSSES UNDER di EMA1 con EMA2 qual’è il comando giusto da usare?

    Idem per le posizioni short.

    Grazie.

    #124143 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Incrocio al rialzo di Ema2 su Ema3:

    IF Ema2 CROSSES OVER Ema3 THEN
       BUY AT MARKET
    ENDIF

    Incrocio al ribasso di Ema1 con Ema2:

    IF Ema1 CROSSES UNDER Ema2 THEN
       SELL AT MARKET
    ENDIF

    Per gli Short fai l’inverso, Ema2 CROSSES UNDER Ema3 e Ema1 CROSSES OVER Ema2.

    #124147 quote
    P@oLoP@oLo
    Participant
    Junior

    ok.

    ma non bisogna strutturare il comando tipo cosi? e per  l’uscita verificare se ci sono posizioni a mercato? Grazie.

     

    IF IncrocioRialzista = 0 THEN
       IncrocioRialzista = M2 CROSSES OVER  M3
       IF IncrocioRialzista THEN
          IncrocioRibassista = 0
       ENDIF
    ENDIF
    #124149 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Il primo post che ho fatto era per un codice Stop & Reverse.

    Certo che puoi fare così!

    #124156 quote
    P@oLoP@oLo
    Participant
    Junior

    Come consigli di scrivere il codice? mi sto perdendo…..help me

    #124186 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Eccolo:

    Media1 = average[10,0](close)
    Media2 = average[30,0](close)
    Media3 = average[90,0](close)
     
    IncrocioRialzista  = Media2 CROSSES OVER  Media3
    IncrocioRibassista = Media2 CROSSES UNDER Media3
    
    UscitaDaLong       = Media1 CROSSES UNDER Media2
    UscitaDaShort      = Media1 CROSSES OVER  Media2
    
    // Uscita  LONG
    IF UscitaDaLong  AND LongOnMarket  THEN
       SELL      AT MARKET
    ENDIF
    
    // Uscita  SHORT
    IF UscitaDaShort AND ShortOnMarket THEN
       EXITSHORT AT MARKET
    ENDIF
    
    // Entrata LONG
    IF IncrocioRialzista AND Not LongOnMarket THEN
       BUY 1 CONTRACT AT MARKET
    ENDIF
     
    // entrata SHORT
    IF IncrocioRibassista AND Not ShortOnMarket THEN
       SELLSHORT 1 CONTRACT AT MARKET //... poi aprire una posizione SHORT
    ENDIF
Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Apertuta e chiusura posizione all'incrocio di 2 mm


ProOrder: Trading Automatico & Backtesting

New Reply
Author
author-avatar
keemax73 @keemax73 Participant
Summary

This topic contains 13 replies,
has 3 voices, and was last updated by robertogozzirobertogozzi
6 years, 6 months ago.

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 07/26/2018
Status: Active
Attachments: No files
ProRealCode ProRealCode
Loading...