Buon pomeriggio, vorrei impostare uno screener con il quale poter analizzare statisticamente i bias comportamentali dei mercati di ogni giorno della settimana in base alla fascia oraria possibilmente in H4 quindi ad intervalli di 4 ore e se possibile poter fare l’analisi di ogni singolo giorno di un determinato mese (ad esempio: i lunedì di febbraio; i martedi di dicembre etc. etc.) . Grazie in anticipo a chi potrà aiutarmi.
Poco fa ho scritto questo https://www.prorealcode.com/topic/analisi-bias-ricorrenti/#post-17219.
Con un po’ di lavoro potresti adattarli ai TF intraday ed anche alle altre tue necessità.
Tranne l’ultima, in quanto non sono disponibili le matrici, per cui va fatto giorno per giorno e poi devi cambiare mese manualmente.
Ciao Roberto si ho visto ma volevo analizzare con screener in maniera diversa cioè individuare semplicemente le candele rosse H4 dei mercoledi o quelle dei venerdi etc. come se alla fine della ricerca ci siano delle freccette che evidenziano le candele verdi e rosse H4 di tutti i mercoledi di aprile ad esempio alla fine della ricerca sui dati storici ,potresti per cortesia scrivere il codice solo in base a questo? Grazie
No, gli screener non possono fare questo.
Serve un indicatore o una strategia.
Dimmi esattamente cosa vuoi e te lo scrivo, però se vuoi sapere quante sono le candele ROSSE e VERDI h4 posso fartelo, diviso per giorni (ad esempio 42 significherebbe 4 verdi e 2 rosse in quel giorno), però devi manualmente indicare te i mesi e gli anni, modificando il codice della strategia di volta in volta.
Con un indicatore è più semplice modificare l’intervallo dalle proprietà.
se vuoi sapere quante sono le candele ROSSE e VERDI h4 posso fartelo, diviso per giorni (ad esempio 42 significherebbe 4 verdi e 2 rosse in quel giorno), però devi manualmente indicare te i mesi, esatto Roberto solo questo che hai detto mi interessa, ti chiedo poi come modificare manualmente i mesi e gli anni. Grazie
Prova questo, come vbedi dalla foto di stampa, per ciascuno dei giorni (nell’intervallo di anni e mesi da te indicati nelle proprietà), il totale candele RIALZISTE (a sinistra) & RIBASSISTE (a destra):
DEFPARAM DrawOnLastBarOnly = true
//DaAnno = 2000
//AdAnno = 2999
//DaMese = 1
//Amese = 12
IF BarIndex = 0 THEN
FOR i = 0 TO 5
$Totale[i] = 0
NEXT
ENDIF
IF OpenYear >= DaAnno AND OpenYear <= AdAnno AND OpenMonth >= DaMese AND OpenMonth <= Amese THEN
IF OpenDayOfWeek >= 0 AND OpenDayOfWeek <= 5 AND Not IsLastBarUpdate THEN
Bullish = close > open
Bearish = close < open
Tbull = round(($Totale[OpenDayOfWeek] / 100000) - 0.5)
Tbear = $Totale[OpenDayOfWeek] - (Tbull * 100000)
Tbull = Tbull + Bullish
Tbear = Tbear + Bearish
$Totale[OpenDayOfWeek] = (Tbull * 100000) + Tbear
ENDIF
ENDIF
FOR i = 0 TO 5
Tbull = round(($Totale[i] / 100000) - 0.5)
Tbear = $Totale[i] - (Tbull * 100000)
Prezzo = highest[10](high)
DrawText("gg #i# = #Tbull# & #Tbear#",BarIndex,Prezzo + (range * ((i + 1) * 0.5)))
NEXT
RETURN
Ti conviene importare il file ITF dove sono già dichiarate le variabili.
lo ho aggiunto facendo copia ed incolla del codice nella finestra sezione indicatori definendo le variabili ma non mi compare nulla nel quadrante Mio indicatore in basso.
DEFPARAM DrawOnLastBarOnly = true
DaAnno = 2018
AdAnno = 2021
DaMese = 1
Amese = 12
IF BarIndex = 0 THEN
FOR i = 0 TO 5
$Totale[i] = 0
NEXT
ENDIF
IF OpenYear >= DaAnno AND OpenYear <= AdAnno AND OpenMonth >= DaMese AND OpenMonth <= Amese THEN
IF OpenDayOfWeek >= 0 AND OpenDayOfWeek <= 5 AND Not IsLastBarUpdate THEN
Bullish = close > open
Bearish = close < open
Tbull = round(($Totale[OpenDayOfWeek] / 100000) – 0.5)
Tbear = $Totale[OpenDayOfWeek] – (Tbull * 100000)
Tbull = Tbull + Bullish
Tbear = Tbear + Bearish
$Totale[OpenDayOfWeek] = (Tbull * 100000) + Tbear
ENDIF
ENDIF
FOR i = 0 TO 5
Tbull = round(($Totale[i] / 100000) – 0.5)
Tbear = $Totale[i] – (Tbull * 100000)
Prezzo = highest[10](high)
DrawText(“gg #i# = #Tbull# & #Tbear#”,BarIndex,Prezzo + (range * ((i + 1) * 0.5)))
NEXT
RETURN
Devi metterlo SUL prezzo (dalle impostazioni del prezzo aggiungi indicatore), non SOTTO.
Ad ogni modo ho notato che la riga 12 potrebbe dare risultati errati, eventualmente prova questa:
IF OpenDayOfWeek >= 0 AND OpenDayOfWeek <= 5 THEN
ok Roberto lo ho fatto mi compare su H4 cosi, adesso i valori di sinistra sono il numero di candele Verdi mentre i valori nella colonna di destra sono il numero di candele rosse giusto è cosi?? ti invio immagine screen
inoltre se volessi ricercare il numero di candele in base alle fasce orarie H4 (cioè n cand rosse n cand Verdi dalle 9 alle 13:00) cosa dovrei inserire nel codice?
ma comunque c’è qualcosa di strano Roberto nel senso che nel giorno 3 il valore di destra cambia in tempo reale in maniera velocissima cioè 1978….2000…2032…etc. che significa? non capisco
grazie
E’ quello il problema, prendi per buono il primo segnale, perché poi lo aggiorna continuamente. Credo che alla chiusura delle 4 ore riaggiorni tutto correttamente.
Verdrò se riesco a metterlo a posto.
Per fare quello dalle 9 alle 13 devi aggiungere alla riga 11 o 12 anche la selezione DaOra…AdOra.
si grazie Roberto la cosa che mi pare strana è che solo i valori di destra nella riga del giorno 3 cambiano velocemente e di unità anche di 10 o 11 a valore come è possibile se stiamo su candele H4??
se controlli lo vedi, intanto ancora grazie per la tua disponibilità ciao.
Roberto ho inserito in questa maniera la verifica per le ore non sò se è corretto.
DEFPARAM DrawOnLastBarOnly = true
DaAnno = 2018
AdAnno = 2021
DaMese = 1
Amese = 12
DaOra = 09000
AdOra = 13000
IF BarIndex = 0 THEN
FOR i = 0 TO 5
$Totale[i] = 0
NEXT
ENDIF
IF OpenYear >= DaAnno AND OpenYear <= AdAnno AND OpenMonth >= DaMese AND OpenMonth <= Amese AND OpenHour >= DaOra AND OpenHour <= AdOra THEN
IF OpenDayOfWeek >= 0 AND OpenDayOfWeek <= 5 THEN
Bullish = close > open
Bearish = close < open
Tbull = round(($Totale[OpenDayOfWeek] / 100000) - 0.5)
Tbear = $Totale[OpenDayOfWeek] - (Tbull * 100000)
Tbull = Tbull + Bullish
Tbear = Tbear + Bearish
$Totale[OpenDayOfWeek] = (Tbull * 100000) + Tbear
ENDIF
ENDIF
FOR i = 0 TO 5
Tbull = round(($Totale[i] / 100000) - 0.5)
Tbear = $Totale[i] - (Tbull * 100000)
Prezzo = highest[10](high)
DrawText("gg #i# = #Tbull# & #Tbear#",BarIndex,Prezzo + (range * ((i + 1) * 0.5)))
NEXT
RETURN
DrawText(“gg #i# = #Tbull# & #Tbear#”,BarIndex,Prezzo + (range * ((i + 1) * 0.5)))
NEXT
RETURN