Entrare ed uscire dal mercato ad una data ora

Forums ProRealTime forum Italiano Supporto ProOrder Entrare ed uscire dal mercato ad una data ora

Viewing 13 posts - 1 through 13 (of 13 total)
  • #104582

    Buongiorno

    vorrei scrivere un sistema che mi permetta di entrare long ad esempio alle ore 10:00 ed uscire alle 16:00 e contemporaneamente entrare short alle 16:00 ed uscire alle 22:00.

     

    #104600

    Eccolo:

    Indica te il valore del TP e SL (in Pips) mettendolo al posto dei puntini.

    #104720

    Grazie come sempre Roberto,

    ho provato ad inserire il codice senza ulteriori condizioni e senza stop e limiti.

    Tuttavia mi da errore di sintassi

     

    #104730

    Non vedo la segnalazione di errore.

    Allega la foto.

    #104767

    Risolto eliminando l’ ENDIF alla riga 5.

    Ora però vorrei fare un passo avanti: se volessi far funzionare il sistema senza l’interruzione delle 22:00 ovvero in ciclo continuo acquistare alle 10 , chiudere la posizione alle 16 e al contempo alle 16 andare short per poi l’indomani alle 10 chiudere lo short e riaprire il long?

    Ho provato come da codice allegato ma non va.

    Buon ferragosto a tutti

     

    #104774

    Nel tuo codice postato mancano delle righe, dovrebbero essere 2 chiusure di IF, quindi ENDIF, infatti segnala errore su righe mancanti.

    Se aggiungi le due righe funziona perfettamente!

    #105066

    Ok   inserendo altre 2 endif finali funziona ,

    ora  mi chiedevo come faccio a sapere quante volte devo inserire endif per chiudere if .

    Dato che dalla riga 5 alla 8 ho due volte if ed un solo endif, perchè dalla riga 12 in poi ho sempre due if e devo inserire tre endif,

    non capisco il criterio, dove è spiegato ? Sul manuale non ho trovato niente che mi da questa informazione.

    Inoltre ho provato a modificare il sistema in maniera che operasse soltanto in due giorni ben precisi sia long che short.

    Per il long è ok mentre per lo short anzichè chiudermi la posizione all’indomani alle 10 me la chiude dopo 7 giorni,

    come posso ovviare a questo inconveniente?

     

    #105069

    Ti sei risposto da solo.

    Se hai due IF ed un solo ENDIF, è chiaro che prima della fine dovrai pareggiare il conto e mettere un ENDIF in più.

    È come per le parentesi, IF è una parentesi aperta, ne serve una a chiusura e questa è ENDIF.

    Ogni IF deve avere un ENDIF a chiusura.

    Sul manuale PRT non c’è perché non è una cosa specifica di PRT,  ma di ogni linguaggio di programmazione e di logica.

    #105071

    Togli ENDIF dalla riga 20 e mettilo dove avrebbe dovuto essere, tra la 10 e la 11.

    #105102

    Ok grazie Roberto,

    ho afferrato il concetto relativo al linguaggio.

    Ora però ho riscontrato un altro problema.

    Ho inserito la condizione che il sistema deve operare solo il martedi,

    in effetti per le posizioni short nessun problema.

    Mentre per le posizioni long ne apre una regolarmente il martedi alle 10 e la chiude alle 16 ma…..

    ….ne riapre un’altra (long) il giorno dopo mercoledi sempre alle 10 per poi chiuderla alle 16.

    Non riesco a capire questa seconda apertura non richiesta,

    dove sbaglio questa volta ?

     

    #105108

    Quando alleghi le foto allegale del grafico, in modo che si veda:

    • strumento
    • time frame
    • data ed ora della candela interessata

    dopodiché nel post indichi qual’è la candela in questione).

    Il problema è che alla riga 18 usi BUY per uscire da uno Short, mentre l’istruzione corretta è EXITSHORT (non me n’ero accorto fin dal primo post).

    • BUY entra long (SELL esce da long)
    • SELLSHORT entra short (EXITSHORT esce da short)

    Per fare uno Stop & Reverse (nel caso t’interessasse):

    • quando sei già Long basta che esegui SELLSHORT e ti chiude il long per aprire lo short
    • quando sei già Short basta che esegui BUY e ti chiude lo short per aprire il long

     

     

    #105428

    ok grazie Roberto ora è ok.

    Ora vorrei fare un ulteriore passo avanti e chiedere al sistema di entrare a mercato long solo se la media a 20 giorni è al rialzo

    e short solo se la media a 20 giorni è al ribasso con tf settato ad 1 h.

    Ho inserito alla linea 4 : c = Average[20](close)> Average[20](close[1])

    credo però che cosi mi calcoli la media a 20 ore e non a 20 giorni come io vorrei.

    Che ne pensi?

     

     

    #105429

    Certo che la calcola a 20 ore, sei sul TF a 1 ora!

    Devi usare il supporto MTF (Multiple Time Frame) per calcolarla sun un altro TF, in questo caso Daily.

    Devi fare queste cose (nell’ordine indicato):

    • invertire innanzitutto la riga 3 con la 4 (la 3 deve essere la prima riga)
    • ti sei dimenticato di mettere la parte Short, quindi subito dopo la riga 3 (dopo il precedente spostamento) inseriscine una con d=…… e la condizione inversa ed aggiungi d alla riga 15 (che dovrebbe essere diventata 16 nel frattempo)
    • come prima riga del programma, dopo i commenti, inserisci TIMEFRAME(Daily,UpdateOnClose) oppure TIMEFRAME(Daily,Default) secondo le tue necessità, studiati i video e istruzioni per capire la differenza tra Default e UpdateOnClose, comunque in bereve UpDateOnClose aggiornerà c solo una volta al giorno, quando chiude la barra giornaliera, quindi c resterà invariata per 24 ore, mentre Default aggiornerà c ogni ora o qualunque altro orario tu scelga
    • prima della riga dove c’è a = DayOfWeek=2 (che avrà sicuramente cambiato numero), inserisci TIMEFRAME(Default).

    Adesso lancia la strategia dal TF ad 1 ora o 2 ore o da dove vuoi (purché DAILY ne sia un multiplo, non puoi lanciarla da un grafico a 5 ore perché DAILY non è un multiplo di 5) e vedrai che funzionerà.

     

Viewing 13 posts - 1 through 13 (of 13 total)

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