Ciao,
volevo sapere se qualcuno potesse aiutarmi a risolvere questa parte di codice. È semplice.
Vorrei comprare LONG subito dopo una grande vela e mettere lo stop sotto al minimo della grande vela.
Esecutandosi su ogni vela, il codice prende LOW come il minimo dell’ultima vela, non di quella specifica che vorrei io.
Ho provato con if e while ma ancora nessuna fortuna..Qualcuno potrebbe aiutarmi???
Grazie!
Ciao, è possibile condividere noi uno screenshot di quello che si chiama “grande vela”? per favore.
Ciao Nicolas,
scusami l’imprecisione, ho fatto confusione con lo spagnolo:). Per vela intendo candelstick, e grande perchè ha un’ampiezza tra apertura e chiusura ben maggiore delle precedenti.
Avevo provato con questo codice molto semplice, ma ovviamente non funziona perchè se il codice non entra nell’IF per comprare posizioni LONG, la variabile “minimo” la considera come zero, per cui lo stop loss diventa di migliaia di punti, non so se mi spiego.
In breve, quello che vorrei fare è salvare il valore del minimo di una data candlestick, quella immediatamente previa alla compra LONG, in modo che possa posizionare lo stop giusto al di sotto di questo minimo.
Grazie e scusa per la confusione!
IF c1a AND c1b AND c2a AND cvolume AND Ctime THEN
BUY n shares AT MARKET
minimo = low
ENDIF
diff = abs (tradeprice - minimo)
set stop loss diff
set target profit diff
Una volta impostate le variabili “minimo” per un valore, questa variabile non sarà mai azzerato a 0 fino a quando lo fai da te con “minimo = 0”
Il tuo codice è proprio qui.
Quindi non capisco perché il “stop loss” sarebbe calcolato con 0.
In caso contrario, per essere sicuri, è possibile modificare il codice come questo:
if minimo>0 then
diff = abs (tradeprice - minimo)
set stop loss diff
set target profit diff
endif
Grazie Nicolas.
Ancora non riesco a farlo funzionare. Questo è il codice finale con la tua modifica. Se lo provo sul Daxxx dal 2 Maggio, mi da un risultato di una sola operazione con una perdita di tutti i 10k euro virtuali. Ossia, l’operazione non si chiude mai e non capisco perchè.
Grazie in anticipo.
DEFPARAM CumulateOrders = False
n = 1
amplitude = abs(close - open)
amplitudemaxmin = abs (High - low)
amplitude1 = abs(close[1] - open[1])
amplitude2 = abs(close[2] - open[2])
amplitude3 = abs(close[3] - open[3])
Ctime = time >= 090000 and time <= 170000
// CONDIZIONE COMPRA
c1a = close > open
c1b = amplitudemaxmin < (4*amplitude)/3
c2a = amplitude > amplitude1 + amplitude2 + amplitude3
cvolume = volume > volume[1] + volume[2] + volume[3]
IF c1a AND c1b AND c2a AND cvolume AND Ctime THEN
BUY n shares AT MARKET
minimo = low
ENDIF
// STOP LOSS & TAKE PROFIT
if minimo > 0 then
diff = abs (tradeprice - minimo)
set stop loss diff
set target profit diff
endif
È possibile eseguire il debug variabile “stop loss” sullo schermo con questa istruzione:
GRAPH diff
Si prega di aggiungerlo al tuo codice e vedere cosa è successo.
Prueba a declarar la variable (ONCE minimo = 0) antes de usarla como condición de la estructura IF minimo > 0…
E saluti a tutti quanti. And good luck. C’est bien Babel ce site!