Ciao,
sto cercando di far funzionare uno script che mi rilevi il massimo e il minimo entro una determinato periodo di tempo della giornata.
Esempio:
Grafico 5 min time frame
Orario in cui voglio individurare max e min è tra le 1530 (cet time) e 2149 (cet time)
Ho provato con questo contando il numero di barre a 5 minuti ci sono tra i due orari…ma non funziona. Mi potete aiutare ? Grazie
a = Highest[76](high)
b = Lowest[76](low)
Questo è esattamente lo scopo di questo post (inglese video). Troverete il codice guardando l’intero video.
Ho fatto, prima che questo è qualcosa che la gente chiede molto ripetutamente
Ma il link del video ? Grazie
Ho visto questo video e copiato il codioce ma non funziona. Mi potete spiegare ? Grazie
Mi dispiace solo rendo conto che non vi ho dato il link nel mio precedente post. Mi piacerebbe aiutare, ma io non so quello che dici che non funziona?
Ho esattamente replicato quanto riportato nel video e l’indicatore non funziona… In sostanza ho bisogno di trovare massimo e minimo tra due orari in una giornata di trading a prescindere dal time frame usato. Grazie
Ora capisco il problema, si desidera trovare i più alti / più basso tra 2 ore con lo stesso codice in ogni periodo di tempo che si desidera. Ma non è possibile con lo stesso codice, se si desidera testare l’inizio dell’intervallo di tempo a 090.500 per esempio, il periodo di tempo prescelto deve soddisfare i 05 minuti e non è il caso in un arco di tempo 1 ora naturalmente, almeno sulla storia, ma dovrebbe funzionare in tempo reale però.
AlexParticipant
Junior
Ciao prova se cosi funziona.
IF (TIME >= 153000) AND (TIME <= 215000) THEN
a=close
b=High
c=Low
ENDIF
RETURN a AS "Close",b AS "High",c AS "Low"
@Nicolas
Sinceramente non ho capito. Ho provato a trovare una soluzione ma non riesco. In sostanza vorrei creare all’interno della strategia una routine che mi dia in un certo intervallo di tempo il massimo e il minimo e che sia indipendente dal time frame usato. Vorrei che fosse un routine con la quale possa fare anche backtest. Grazie
@Alex
Funziona ma ho tanti valori quante sono le candele e non va bene per quello che ho in mente. Grazie
Questo è uno frammento di codice uso io a volte.
Come ho già detto, il tempo collaudato devono essere soddisfatte nei tempi si vuole operare.
Come forse laready saperlo, ProBacktest / ProOrder solo leggere e eseguire codice una volta per ogni candela.
Quindi, se si desidera utilizzare questa routine in un lasso di tempo di 15 minuti e l’intervallo di tempo è impostato 090500-100500, queste 2 ore non saranno mai visti dalla routine, perché il codice sarà letto solo da 091500 a ..
Si prega di prendere un minuto per capire cosa intendo 🙂 So che questo è a volte inquietante!
if intradaybarindex=0 then
valeurhaute=0
valeurbasse=close*100
endif
tcondition = time>090000 and time<=100000
if tcondition then
valeurhaute = max(valeurhaute,high)
valeurbasse = min(valeurbasse,low)
endif
return valeurhaute,valeurbasse
@nicolas
Grazie,
ho inserito lo script dentro la mia strategia e ho realizzato anche due indicatori separati per vedere se funzionavano correttamente. Gli indicatori funzionano correttamente ma se inserisco il codice nella strategia eseguendo backtest non entra mai a mercato e non capisco dove è il problema. Mi puoi aiutare ? Grazie
DEFPARAM CumulateOrders = false
DEFPARAM FlatAfter =220500
OraLimite = 215500
Orainizio = 220000
n=1
if intradaybarindex=0 then
valeurhaute=0
valeurbasse=close*100
endif
tcondition = time>153000 and time<=215500
if tcondition then
valeurhaute = max(valeurhaute,high)
valeurbasse = min(valeurbasse,low)
endif
if Time >= Orainizio and time <= Oralimite then
if not onmarket then
c1 = close[0] > valeurbasse
c2= Close[0] < valeurhaute
IF c1 THEN
buy n contract at market
endif
IF c2 THEN
sellshort n contract at market
endif
endif
endif
SET STOP ptrailing 10
AlexParticipant
Junior
DEFPARAM FlatAfter =220500
OraLimite = 215500
Orainizio = 220000
Scusa egreggio signore DEFPARAM FlatAfter =220500 significa che a partire da questa ora in poi il sistema viene arrestato,se il sistema viene arrestato alle 22.05 e ora inizio e impostata
alle ore 22.00 il sistema lavora 5 minuti giusto?
Sì. ..ho provato anche ad allargare orario ma in Back non.entra mai…non capisco dove sia il.problema
AlexParticipant
Junior
OraLimite = 215500
Orainizio = 220000
if Time >= Orainizio and time <= Oralimite then
Ora inizio deve essere inferiore ad ora limite,loggico potrebbe essere inizio 21:55,limite 22:00
ciao sto studiando una strategia molto simile , sei riuscito a risolvere? grazie