buon giorno allego un immagine nel quale mostra un max run up di 1000 euro,max trade vincenti consecutivi 2.ora mi chiedo come è possibile visto che il mio take profit è settato a 130 punti,e moltiplicato x i trade vincenti consecutivi nn fa 1000 ma 260.
grazie
DEfparam CumulateOrders = False
//DEfparam FlatAfter = 180000
//DEfparam FlatBefore = 100000
I1=ExponentialAverage[21]
C1=Close>I1
C2=Low[0]<LOw[1]
C3=Close[1]<Open[1]
C4=Close[0]>Open[0]
C5=(((High[0]-Low[0])/2)/Pipsize)
IF NOT LongOnMarket AND C1 AND C2 AND C3 AND C4 THEN
BUY 1 CONTRACTS AT C5 LIMIT
ENDIF
SET STOP PLOSS 8
SET TARGET PPROFIT 130
ecco qua,ma dal codice come fai a capirlo?
L’allegato non ce l’hai?
Intanto vedo che alla riga 9 assegni una differenza in pips a C5 (che avrà valore 15-20 circa), mentre un ordine pendente (riga 12) deve essere fatto ad un certo prezzo, non so bene su cosa lo usi, probabilmente non sul DAX perché forse non entrerebbe mai a mercato, se lo usi su Eur/Usd che vale poco più di uno è chiaro che un ordine LIMIT richiede un prezzo migliorativo e ti entra a mercato, ma non deve essere così.
Per replicare i tuoi test mi serve sapere:
- strumento usato
- timeframe usato
- cosa deve contenere C5, quale prezzo per entrare a mercato? dal tuo codice sembrerebbe la metà del range dell’ultima candela, è così?
- se hai la foto, allegala stavolta
scusa pensavo di averla allegata l immagine.comunque si l ingresso e al 50% dell ultima candela.ecco l immagine
Qui puoi trovare il manuale di ProOrder e ProBackTest, in italiano (lo scarichi), dove c’è la spiegazione di cos’è il RunUP e la sua formula di calcolo https://help.md.it-finance.com/it/search. Se cerchi nel forum tramite la search box troverai anche post al riguardo. Io non ho mai letto la formula.
Per quanto riguarda il tuo codice puoi usare GRAPH per fare il debugging, come da foto allegata.
Nel tuo caso tu vuoi comprare al prezzo 5C, che nella barra evidenziata è di 27,65. Siccome il prezzo di Eur/Usd è intorno a 1,1500, questo sarà sempre migliorativo rispetto a C5 (meglio comprare a 1,15 piuttosto che a 27,65, caso mai ci arrivasse), per cui il risultato è che lui ti entra subito come tu avessi scritto AT MARKET invece che LIMIT.
Dovresti indicare STOP come tipo di ordine, in quanto il prezzo d’acquisto da te indicato è peggiorativio rispetto a quello corrente, ma in questo caso NON ti aprirebbe nessuna posizione in quanto Eur/Usd non arriverà mai al prezzo contenuto in C5!