come escludere la domenica dal conteggio?

Viewing 15 posts - 1 through 15 (of 28 total)
  • Author
    Posts
  • #110939 quote
    danieleputzu
    Participant
    New

    Buonasera, sto scrivendo un codice il quale va a cercare derminati max e minimi daily nel passato, ad esempio compra se rompe il massimo del dhigh(32) ma vorrei escludere le domeniche dal conteggio, come posso fare?

    Grazie.

    #110943 quote
    robertogozzi
    Moderator
    Master

    Devi utilizzare un ciclo:

    Minimo  = 999999
    Massimo = 0
    FOR i = 0 TO 31
       IF OpenDayOfWeek < 6 THEN          //solo i giorni da 0 a 5 (Lun-Ven)
          Minimo  = min(Minimo,Dlow[i])
          Massimo = max(Massimo,Dhigh[i])
       ENDIF
    NEXT
    #111035 quote
    danieleputzu
    Participant
    New

    OK Roberto, PROVO AD INCOLLARE IL CODICE CHE MI HAI PASSATO E TI FACCIO SAPERE!!!

    GRAZIE…

    #111037 quote
    danieleputzu
    Participant
    New

    allora inserendo il codice da te scritto e considerando che la mia ricerca e’ la seguente

     

    if adx[14]>30 then
    valorel1=3
    else
    valorel2=12
    endif

    C1= CLOSE CROSSES OVER DHIGH(valorel1)

     

    come utilizzo “i”?

    grazie

    #111038 quote
    robertogozzi
    Moderator
    Master

    La riga 3, invece che andare da 0 a 31 andrà da 0 a (valorel1 – 1).

    #111059 quote
    okeus
    Participant
    Junior

    buongiorno, mi serve un aiuto, potresti correggermi il codice perchè mi faccia un solo trade in base alle condizioni es. il supertrend , indipendentemente che abbia preso lo stop o il profit

     

    grazie mille

    / Definizione dei parametri del codice
    DEFPARAM CumulateOrders = False // Posizioni cumulate disattivate
    // Il sistema cancellerà tutti gli ordini in attesa e chiuderà tutte le posizioni a 0:00. Dopo l'orario "Flat Before" non saranno piazzati nuovi ordini o posizioni.
    DEFPARAM FLATBEFORE = 090000
    // Cancellare tutti gli ordini in attesa e chiudere tutte le posizioni all'orario "Flat After"
    DEFPARAM FLATAFTER = 211500
    
    // Condizioni per entrare su posizioni long
    indicator1 = SuperTrend[s,t]
    c1 = (close[1] > indicator1)
    
    IF c1 THEN
    BUY 1 CONTRACT AT MARKET
    ENDIF
    
    // Condizioni per uscire da posizioni long
    indicator2 = SuperTrend[s,t]
    c2 = (close[1] < indicator2)
    
    IF c2 THEN
    SELL AT MARKET
    ENDIF
    
    // Condizioni per entrare su posizioni short
    indicator3 = SuperTrend[s,t]
    c3 = (close[1] < indicator3)
    
    IF c3 THEN
    SELLSHORT 1 CONTRACT AT MARKET
    ENDIF
    
    // Condizioni per uscire da posizioni short
    indicator4 = SuperTrend[s,t]
    c4 = (close[1] > indicator4)
    
    IF c4 THEN
    EXITSHORT AT MARKET
    ENDIF
    
    #111080 quote
    danieleputzu
    Participant
    New

    NON RIESCO MI SPIEGO MEGLIO,

    VORREI CHE UN CLOSE IN H1 CROSSI A RIALZO UN MASSIMO IN DAILY ESCLUDENDO DAL CONTEGGIO(IL NUMERO CHE PER VIA DELL’OTTIMIZAZZIONE USCIRA FUORI) LE DOMENICHE, PERCHE’ MI CHIEDERETE?

    PERCHE MI SERVE DA RIPORTARE TALE NUMERO SU LA MT4 PERCHE’ SE DOVESSI FARLO GIRARE SU PRT NON CI SAREBBE PROBLEMA QUELLO CHE CONTA CONTA, MA LA MT4 NON CONSIDERA DATI DI FINE SETTIMANA, ED AGGIUNGO CHE I VALORI DEVONO ESSERE 2, UN BRECK SE ADX E’ MAGGIORE DI 30 ED UNO SE UN BRECK AVVIENE CON ADX SOTTO 30.

     

    GRAZIE A CHI MI AIUTERA’.

    #111097 quote
    robertogozzi
    Moderator
    Master

    Per favore NON scrivere in maiuscolo. URLARE non aiuterà.

    #111106 quote
    danieleputzu
    Participant
    New

    cavolo scusate, non  mi ero accorto del maiuscolo

    #111177 quote
    robertogozzi
    Moderator
    Master

    @okeus

    per favore apri un topic separato, non aggiungendolo ad un altro casualmente!

    Grazie 🙂

    #111179 quote
    robertogozzi
    Moderator
    Master

    Purtroppo fino a lunedì non ho tempo di darci un’occhiata.

    #111408 quote
    robertogozzi
    Moderator
    Master

    Per l’incrocio del massimo puoi scrivere (il primo codice che ti avevo scritto era errato, perché < 6 non va bene):

    Minimo  = 999999
    Massimo = 0
    Periodi = 50
    FOR i = 0 TO (Periodi - 1)
       IF OpenDayOfWeek => 1 AND OpenDayOfWeek <= 5 THEN  //solo i giorni da 1 a 5 (Lun-Ven)
          Minimo  = min(Minimo,Dlow[i])
          Massimo = max(Massimo,Dhigh[i])
       ENDIF
    NEXT
    x = close CROSSES OVER  Massimo
    y = close CROSSES UNDER Minimo

    X ed Y saranno veri quando i relativi incroci si sono verificati.

    Non devi usare la variabile “i”, è così e basta. Devi solo variare il Periodo sostituendo a 50 il valore che preferisci.

    #111441 quote
    danieleputzu
    Participant
    New

    grazie Roberto, lo testo e ti aggiorno!!!

    #112062 quote
    danieleputzu
    Participant
    New

    Buonasera, niente non sono riuscito a far escludere la domenica dal conteggio…

    #112075 quote
    robertogozzi
    Moderator
    Master

    Il codice va bene, dipende dove l’hai inserito ed utilizzato. Posta il codice completo.

    Tieni presente che va bene per un calcolo tipo minimi/massimi di cui sopra, ma se fai una media degli ultimi 50 periodi PRT incklderà SEMPRE tutte le 50 candele precedenti, che siano domenica o altro.

Viewing 15 posts - 1 through 15 (of 28 total)
  • You must be logged in to reply to this topic.

come escludere la domenica dal conteggio?


ProOrder: Trading Automatico & Backtesting

New Reply
Author
Summary

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

Topic Details
Forum: ProOrder: Trading Automatico & Backtesting
Language: Italian
Started: 10/23/2019
Status: Active
Attachments: 1 files
Logo Logo
Loading...