Salve a tutti, è la prima volta che scrivo qui. Ho fatto fare da un programmatore il codice per un expert advisor che dovrebbe funzionare come segue: su frame a 5 min aprire una posizione long non appena viene brekkato il max della candela precedente , viceversa aprire un trade short se fora il minimo della candela precedente sempre su frame 5 minuti…
la realtà è che non funziona in questo modo, ma bensi apre un trade NON appena chiude la candela a 5 min e inizia la nuova candela ( anche se non è stato forato o il massimo o il minimo della candela precedente ) Il programmatore che mi ha creato il codice sostiene che è un bug della prorealtime…. io personalmente non ci credo… trovo assurdo che non si possa fare un expert cosi semplice…
Generalmente si può fare, l’unica cosa che può creare qualche problema è la distanza minima che deve esserci tra il prezzo d’entrata ed il prezzo corrente. E’ un valore richiesto da IG (e che solitamente è indicato sul loro sito, strumento per strumento, che però può variare durante una giornata volatile). Sui 5 minuti può darsi che non ci sia una distanza sufficiente tra la chiusura ed il prezzo d’entrata e questo può creare dei problemi. Non in backtest, che non è gestito dal broker, quindi non è a conoscenza delle distanze richieste e non gli interessano, quanto l’autotrading live (demo o reale che sia).
Un’altra cosa da chiarire è quello che intendi per “candela precedente“. Le strategie vengono sempre eseguite alla chiusura di ogni candela. La candela appena chiusa è quella CORRENTE (non quella nuova che si sta aprendo, in quanto non è accessibile fino alla sua chiusura), per cui parlare di precedente dovrebbe significare che vuoi entrare al break della candela PRECEDENTE a quella che è appena stata chiusa. Ad esempio, se adesso chiude (alle 10:50) la candela aperta alle 10:45, la candela precedente è quella che era stata aperta alle 10:40. Quella in corso è, invece, quella delle 10:50 che però NON è accessibile (a meno di non usare più time franes, ma è un un discorso a parte).
Io credo che tu con PRECEDENTE intenda quella CORRENTE, appena chiusa.
Questo è il codicebase, semplice, che si disinteressa delle distanze:
esatto: io con “precedente” intendo quella corrente…
il focus su cui mi devo focalizzare è quando dici ” distanza minima che deve esserci tra il prezzo d’entrata ed il prezzo corrente”
in effetti vorrei che il mio expert aprisse la posizione e poi 1 tick di gain la chiude, e 5 tick di stop loss…
ho notato che , ad esempio sul nasdaq100 ( sul cfd no future intendo ) su frame 5 minuti questo expert da risultati molto buoni… ovvio da fare andare solo 1 ora al giorno …non tutto il giorno…
l’orario migliore è dalle 16 alle 17 in quanto è in questo orario che spesso parte il trend di giornata sul nasdaq100
Ti ho fatto l’aggiunta dell’orario ed ho modificato lo Stop Loss ed il Take Profit (ho anche aggiunto il numero di contratti, com’era prima ne apriva sempre e solo 1):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
IFTime>=160000ANDTime<=170000THEN
IFNotLongOnMarketTHEN
EntryLong=high+1*PipSize
BUY1CONTRACTATEntryLongSTOP
ENDIF
IFNotShortOnMarketTHEN
EntryShort=low-1*PipSize
SELLSHORT1CONTRACTATEntryShortSTOP
ENDIF
ENDIF
SET TARGETpPROFIT1
SET STOPpLOSS5
GraphOnPriceEntryLongcoloured(0,0,255,255)
GraphOnPriceEntryShortcoloured(255,0,0,255)
Però anche per Stop Loss e Take Profit, devi verificare i minimi richiesti.
Use this only to report spam, harassment, fighting, or rude content.
Please wait, sending report.
Thank you, your report has been sent.
To help us continually offer you the best experience on ProRealCode, we use cookies. By clicking on "Continue" you are agreeing to our use of them. You can also check our "privacy policy" page for more information.Continue