Trading su Notizie
Forums › ProRealTime forum Italiano › Supporto ProOrder › Trading su Notizie
- This topic has 6 replies, 2 voices, and was last updated 7 years ago by robertogozzi.
-
-
08/24/2017 at 10:45 AM #44517
Ciao,
ho scritto il seguente codice per tradare le notizie ma non mi funziona….e non capisco dove sbaglio.
L’idea è questa:
- Monitorare i MAX e i MIN nei 15 minuti prima della notizia: nell’esempio la notizia è alle 1430…per cui ho impostato due variabili cosi:starttime=141500
endtime=143000 - Individuo i max e i min nei 15 min prima della notizia e mi memorizzo i valori rispettivamente con + 2 pips sul max e – 2 pips sul min;
- Se entro i primi 5 minuti successivi alle 1430 viene rotto il max o il min entro long o short e chiudo operazione nei 5 minuti successivi (1440).
- Ovviamente per altri orari il concetto rimane lo stesso.
Possiamo usare TF a 1 minuto o anche inferiori….ditemi voi come meglio….mi potete aiutare ? Grazie
Trading sulle notizie1234567891011121314151617181920212223242526defparam flatbefore=143000defparam flatafter=144000starttime=141500endtime=143000timetotrade=143000endtimetotrade=143500if opentime=starttime or (opentime > starttime and opentime[1] < starttime) thenmymax=high+2*pipsizemymin=low-2*pipsizeelsif opentime> starttime and time <=endtime thenmymax=max(high+2*pipsize,mymax)mymin=min(low-2*pipsize,mymin)endifif time = timetotrade and time <= endtimetotrade thenif close > mymax thenbuy 1 share at marketelsif close < mymin thensellshort 1 share at marketendifendif08/24/2017 at 1:47 PM #44531L’ho modificato così e funziona, sia su 1 minuto che 5 monuti (DAX):
123456789101112131415161718defparam flatbefore = 143000defparam flatafter = 144000timetotrade = 143000endtimetotrade = 143500IF time = timetotrade THENmymax = highest[15](high) + (2 * pipsize)mymin = lowest[15](low) - (2 * pipsize)endifif time >= timetotrade and time <= endtimetotrade thenif close > mymax thenbuy 1 share at marketelsif close < mymin thensellshort 1 share at marketendifendif08/24/2017 at 1:51 PM #44537Le righe 8 e 9 contengono il valore 15 per il TF a 1 minuto (15 candele da un minuto), per quello a 5 minuti devi mettere 3 (3 candele da 5 minuti) e così per altri TF.
Ovviamente non funziona su TF superiori a 15 minuti, perché ogni candela sarebbe più ampia del periodo che intendi osservare.
Le righe 8 e 9 consentono di evitare le variabili “starttime” e “endtime”.
08/24/2017 at 11:27 PM #44602grazie infinite
09/02/2017 at 4:40 PM #45233Ciao,
torno per capire come risolvere. Ad esempio negli NFP di venerdi’ la strategia è entrata long ma sulla candela delle 1431 (tf 1 minuto su EURUSD) e questo non ha portato frutti in quanto poi il mercato ha preso altra direzione. La soluzione è che l’entrata fosse stata alle 1430 esatte. Con tf 1 minuto per controllare rottura massimi e mini occorre la chiusura della candela e quindi il sistema entrerà sempre alle 1431. L’unica soluzione che mi viene in mente è quella di abbassare il TF a 1 secondo. In questo modo in back il problema sembra risolto. Avevo già provato in reale su altre notizie questa soluzione ma proorder chiude la strategia in quanto l’errore è tipo ” ordine rifiutato”. Mi sapete dire come poter risolvere e perche’ proorder genera questo errore ? Grazie
09/02/2017 at 4:43 PM #45234In ogni caso il codice per TF 1 secondo sarebbe cosi’. Ovviamente per controllare max e min ultimi 15 minuti devono controllare ultimi 900 secondi.
Grazie
Trade su notizie1234567891011121314151617181920212223DEFPARAM CumulateOrders = Falsedefparam flatbefore = 143000defparam flatafter = 144000timetotrade = 143000endtimetotrade = 143500IF time = timetotrade THENmymax = highest[900](high) + (1.8 * pipsize)mymin = lowest[900](low) - (1.8 * pipsize)endifif time >= timetotrade and time <= endtimetotrade thenif close > mymax thenbuy 1 share at marketelsif close < mymin thensellshort 1 share at marketendifendifSET STOP PLOSS 18SET STOP PTRAILING 1009/02/2017 at 7:01 PM #45248Il codice mi sembra corretto.
Il problema può essere il TF di 1 secondo, forse troppo breve per garantire un buon funzionamento. Non ne sono certo, ma può darsi che tra la candela dove l’ordine viene eseguito e la ricezione dell’OK da parte del broker intercorra magari un’altra candela, per cui ProOrder può avere condizioni valide per un altro trade prima che l’ordine precedente non sia stato ancora eseguito.
Prova a variare il TF a 5 o 10 secondi, rifacendo il calcolo delle barre indietro da verificare.
- Monitorare i MAX e i MIN nei 15 minuti prima della notizia: nell’esempio la notizia è alle 1430…per cui ho impostato due variabili cosi:starttime=141500
-
AuthorPosts
Find exclusive trading pro-tools on