ProRealCode - Trading & Coding with ProRealTime™
Regola 1 (entrambe ultime DUE candele hanno le condizioni verificate)
//le candele devono avere le seguenti dimensioni:
// l’ombra inferiore (nel caso di candela rialzista) o superiore (nel caso di candela ribassista) deve essere compresa tra il 60 e l’80% dell’intera lunghezza della candela
// il corpo della candela deve essere compreso tra il 5 ed il 25% dell’intera lunghezza della candela
// l’ombra superiore (nel caso di candela rialzista) o inferiore (nel caso di candela ribassista) deve essere compresa tra il 5 ed il 20% dell’intera lunghezza della candela
Corpo = abs(open - close) //grandezza del corpo
OmbraSuperiore = high - max(open,close) //grandezza ombra superiore
OmbraInferiore = min(open,close) - low //grandezza ombra inferiore
Ampiezza = range //ampiezza della candela (high - low)
Rialzo = (OmbraInferiore >= (Ampiezza * 0.60) AND OmbraInferiore <= (Ampiezza * 0.80))
Ribasso = (OmbraSuperiore >= (Ampiezza * 0.60) AND OmbraSuperiore <= (Ampiezza * 0.80))
Rialzo = Rialzo AND (OmbraSuperiore >= (Ampiezza * 0.00) AND OmbraSuperiore <= (Ampiezza * 0.25))
Ribasso = Ribasso AND (OmbraInferiore >= (Ampiezza * 0.00) AND OmbraInferiore <= (Ampiezza * 0.25))
Rialzo = Rialzo AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.20))
Ribasso = Ribasso AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.20))
Risultato = 0
IF summation[2](Rialzo) = 2 THEN
Risultato = 1 //restituisce 1 per i pattern al RIALZO
ELSIF summation[2](Ribasso) = 2 THEN
Risultato = 2 //restituisce 2 per i pattern al RIBASSO
ENDIF
SCREENER [Risultato] (Risultato AS "Rialzo/Ribasso")
Regola 2 (entrambe la PENULTIMA e TERZULTIMA candela hanno le condizioni verificate)
//le candele devono avere le seguenti dimensioni:
// l’ombra inferiore (nel caso di candela rialzista) o superiore (nel caso di candela ribassista) deve essere compresa tra il 60 e l’80% dell’intera lunghezza della candela
// il corpo della candela deve essere compreso tra il 5 ed il 25% dell’intera lunghezza della candela
// l’ombra superiore (nel caso di candela rialzista) o inferiore (nel caso di candela ribassista) deve essere compresa tra il 5 ed il 20% dell’intera lunghezza della candela
Corpo = abs(open - close) //grandezza del corpo
OmbraSuperiore = high - max(open,close) //grandezza ombra superiore
OmbraInferiore = min(open,close) - low //grandezza ombra inferiore
Ampiezza = range //ampiezza della candela (high - low)
Rialzo = (OmbraInferiore >= (Ampiezza * 0.60) AND OmbraInferiore <= (Ampiezza * 0.80))
Ribasso = (OmbraSuperiore >= (Ampiezza * 0.60) AND OmbraSuperiore <= (Ampiezza * 0.80))
Rialzo = Rialzo AND (OmbraSuperiore >= (Ampiezza * 0.00) AND OmbraSuperiore <= (Ampiezza * 0.25))
Ribasso = Ribasso AND (OmbraInferiore >= (Ampiezza * 0.00) AND OmbraInferiore <= (Ampiezza * 0.25))
Rialzo = Rialzo AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.20))
Ribasso = Ribasso AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.20))
Risultato = 0
IF summation[2](Rialzo[1]) = 2 THEN
Risultato = 1 //restituisce 1 per i pattern al RIALZO
ELSIF summation[2](Ribasso[1]) = 2 THEN
Risultato = 2 //restituisce 2 per i pattern al RIBASSO
ENDIF
SCREENER [Risultato] (Risultato AS "Rialzo/Ribasso")
Grazie della regola. Una domanda, le regole di cui sopra, sono sia al ribasso, sia al rialzo?
cioè, mi visualizza SIA 2 candele RIALZISTE consecutive rispondenti ai parametri che ti avevo detto SIA 2 candele RIBASSISTE consecutive rispondenti ai parametri che ti avevo detto ? O solo 2 rialziste? Se cosi, potresti fare le 2 stesse regole, ma simmetriche al ribasso? Grazie!
Come puoi vedere dalle ultime righe restituisce 1 per i pattern rialzisti e 2 per quelli ribassisti.
Perfetto, grazie!
// entrambe le ULTIME DUE candele hanno le condizioni A SEGUIRE...cioè sono ENTRAMBE candele RIALZISTE / RIBASSISTE
//le candele devono avere le seguenti dimensioni:
// l’ombra inferiore (nel caso di candela rialzista) o superiore (nel caso di candela ribassista) deve essere compresa tra il 40 e il 90% dell’intera lunghezza della candela
// il corpo della candela deve essere compreso tra il 5 ed il 30% dell’intera lunghezza della candela
// l’ombra superiore (nel caso di candela rialzista) o inferiore (nel caso di candela ribassista) deve essere compresa tra il 5 ed il 25% dell’intera lunghezza della candela
Corpo = abs(open - close) //grandezza del corpo
OmbraSuperiore = high - max(open,close) //grandezza ombra superiore
OmbraInferiore = min(open,close) - low //grandezza ombra inferiore
Ampiezza = range //ampiezza della candela (high - low)
Rialzo = (OmbraInferiore >= (Ampiezza * 0.40) AND OmbraInferiore <= (Ampiezza * 0.90))
Ribasso = (OmbraSuperiore >= (Ampiezza * 0.40) AND OmbraSuperiore <= (Ampiezza * 0.90))
Rialzo = Rialzo AND (OmbraSuperiore >= (Ampiezza * 0.05) AND OmbraSuperiore <= (Ampiezza * 0.40))
Ribasso = Ribasso AND (OmbraInferiore >= (Ampiezza * 0.05) AND OmbraInferiore <= (Ampiezza * 0.40))
Rialzo = Rialzo AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.35))
Ribasso = Ribasso AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.35))
Risultato = 0
IF summation[2](Rialzo) = 2 THEN
Risultato = 1 //restituisce 1 per i pattern al RIALZO
ELSIF summation[2](Ribasso) = 2 THEN
Risultato = 2 //restituisce 2 per i pattern al RIBASSO
ENDIF
SCREENER [Risultato] (Risultato AS "Rialzo/Ribasso")
Ciao, ti chiedo gentilmente una modifica del codice appena allegato che, sinceramente..non risponde a ciò che vorrei (è un codice da te creato e da me modificato, ho modificato solo le proporzioni delle candele tra corpo e ombra…almeno spero..ma qualche dubbio mi perviene…)
La cosa che non riesco sinceramente a capire..è la seguente (strana….ammetto)…mentre usando Prorealtime con i dati End of day, tale regola, in linea di max, risponde abbastanza a ciò che chiedo…usando la stessa nell’account Prorealtime con dati intraday….beh..non risponde più assolutamente a ciò che chiedo (riassumendo..chiedo vengano visualizzate le figure costituite dalle ultime 2 candele ENTRAMBE rispondenti ai parametri di cui nella regola e, quindi, entrambe tipicamente rialziste o ribassiste, con lunga ombra….vd).
Ti aggiungo delle figure affinché tu possa capire. Esempio, nel file FIG1 viene evidenziata una figura che, in realtà, non vorrei vedere..in quanto l’ultima candela è totalmente “piatta”! Altra figura che non vorrei comparisse è la FIG 2…in quanto le candele sono si rialziste / ribassiste..ma non nella stessa direzione! Nel file Fig3, l’ultima candela, sinceramente..non è per nulla rialzista..non vedo perché compaia. Nel file fig.4, la penultima candela è tutto fuorché candela da lunga ombra….!!
IN ULTIMO, ti chiedo un’ulteriore cosa: utilizzando il mio account con i dati a fine giornata, vedo che, ad es, cercando con durata settimanale, la regola NON considera l’ultima candela fino a che tale candela sia definitivamente “chiusa”, quindi non prima del venerdì sera..e quindi si occupa della terz’ultima e penultima candela per tutta la settimana tranne il ven, sab e dom, in cui “guarda” le ultime due. Inserendo tale regola nel mio account intraday (altra strana differenza rispetto account End of day..), la regola, invece, NON attende la “chiusura” dell’ultima candela e quindi, ad es se vado nel grafico a 5 minuti, dopo aver fatto il ProScreener…è un continuo cambiamento automatico dei titoli contenuti nella lista. Io, invece, vorrei che, fino a che l’ultima candela non sia “saldata”..essa NON venga, appunto, considerata (come con l’account con dati end of day!).
Ti ringrazio in anticipo e pronto a fornire eventuali informazioni a te utili…!
Ciao!
Per avere ENTRAMBE le candele RIBASSISTE/RIALZISTE sostituisci le righe 14 e 15 con queste:
Rialzo = close > open AND (OmbraInferiore >= (Ampiezza * 0.40) AND OmbraInferiore <= (Ampiezza * 0.90))
Ribasso = close < open AND (OmbraSuperiore >= (Ampiezza * 0.40) AND OmbraSuperiore <= (Ampiezza * 0.90))
Per quanto riguarda l’ultimo punto, con i dati a fine giornata puoi solo operare sui dati di chiusura delle candele, ma non è nel reale lo scopo di uno screener. Lo screener deve scannerizzare il mercato in diretta e segnalarti se ci sono strumenti, in ogni momento, che soddisfino le tue condizioni in modo che tu possa eventualmente aprire una posizione immediatamente.
Per avere i risultati sull’ultima candela chiusa devi sostituire la riga 30 con questa:
SCREENER [Risultato[1]] (Risultato[1] AS "Rialzo/Ribasso")
Ok, ti ringrazio per le 3 righe di comando che mi hai inviato e che provvederò ad aggiungere / sostituire.
Torno però a quello che io avverto come il maggiore problema di tale regola…e cioè..trovarmi (praticamente ad ogni Proscreenr, ndr) delle figure che NON rispondono a ciò che chiedo….lo so..difficile a credersi….! 🙂
Ti allego a tale scopo il file Cattura1.png. In tale file ho “evidenziato” 2 figure trovate da Proscreener con la regola che ti ho inviato pochi giorni fà, il 23/8/2018.
Esamino le 2 figure:
FIGURA 1: I) In tale candela, il corpo costituisce più del 40% della candela stessa…quando invece la regola dice che il corpo è al max il 35%. II) La candela evidenziata è ribassista, per cui, secondo la regola, l’ombra superiore dovrebbe essere compresa tra il 40 ed il 90% dell’intera candela, mentre invece ne costituisce il 29,7%..!!!
FIGURA 2: I) La candela evidenziata è rialzista, per cui, secondo la regola, l’ombra superiore dovrebbe essere compresa tra il 5 ed il 40% dell’intera candela, mentre invece ne costituisce il 45%..!!! II) La candela evidenziata è rialzista, per cui, secondo la regola, l’ombra inferiore dovrebbe essere compresa tra il 40 ed il 90% dell’intera candela, mentre invece ne costituisce il 21.5%..!!!
Questi, purtroppo, sono solo 2 esempi..
Ti ringrazio anticipatamente, buona giornata!
Veedo non avere aggiunto l’immagine su cui basato messaggio. La aggiungo ora! Grazie ciao!
Varò delle proce dopo il fine settimana.
Ad ogni modo è frequente che succeda, lo screener verifica LIVE quel che succede, se riscontra che il corpo è 40% te lo segnala, poi a causa di un qualche movimento importante scende o sale di certo un valore può darsi che per qualche tempo (non so con quale frequenza vengano aggiornati i risultati) la segnalazione non corrisponda alla realtà.
Ad ogni modo, farò dei test.
Buon fine settimana.
Ok, ti ringrazio ed allora rimango in attesa per i tuoi tests.
Ti scrivo solo 1 cosa, affinché tu abbia qualche elemento in più… : io ho creato 2 account da anni con Prorealtime, uno con i dati a fine giornata ed uno, invece, tramite IG, con i dati anche intraday. Ciò che mi stupisce e mi fa pensare è che tale regole, in generale, funziona oserei dire quasi perfettamente nell’account con i dati a fine giornata…..se lo porto nell’account IG + Prorealtime….sia su candele giornaliere sia più brevi (ad es. 1h)..vengono fuori queste figure senza molto senso……. difficile da capire…..
Grazie ciao, buon fine settimana anche a te..
Per la stragrande maggioranza dei titoli funziona, però per alcuni effettivamente fa un pò di confusione mischiando candele rialziste e ribassiste, invece di segnalare solo le ultime 2 chiuse dello stesso colore.
Potrebbe essere dovuto al corpo ridotto, per cui l’arrotondamento dei calcoli può essere significativo? Mah… se l’apertura è maggiore della chiusura o viceversa non dovrebbe essere influenzato dai calcoli!
A questo punto non so darmi/darti una spiegazione, non ti resta che segnalarlo aprendo un ticket per l’assistenza premendo CTRL+M dalla piattaforma.
Quando avrai una risposta sarebbe carino che tu la pubblicassi affinché se ne conosca tutti il motivo.
Mah, a dire il vero, guardando i tuoi allegati dell’ultimo messaggio, secondo me…il problema non è tanto che mischi candele di diverso colore (ma pur sempre entrambe della stessa direzione, ndr…in questo caso mi stà bene…)..più che altro il problema che avverto è che mi avverta ad es di candele che non rispondono proprio ai parametri di classica candela rialzista – ribassista…(vd. allegati del mio messaggio del 08/24/2018 at 10:33 AM ).
E’ questo che stento a capire! Invece, i tuoi ultimi 4 allegati..sinceramente rispondono piuttosto ok ai miei parametri….sono am,bedue candele nella medesima direzione, seppur con colori diversi..ma entrambe rialziste/ribassiste…..fin qui…siamo ok! 🙂
Grazie!
….sono am,bedue candele nella medesima direzione, seppur con colori diversi..ma entrambe rialziste/ribassiste…..
Scusami, come fanno ad andare nella medesima direzione pur avendo colori diversi, cosa intendi dire ?
Ciao, dopo qualche anno ti chiedo se puoi aggiornare la seguente regola:
// entrambe le ULTIME DUE candele hanno le condizioni A SEGUIRE...cioè sono ENTRAMBE candele RIALZISTE / RIBASSISTE
//le candele devono avere le seguenti dimensioni:
// l’ombra inferiore (nel caso di candela rialzista) o superiore (nel caso di candela ribassista) deve essere compresa tra il 40 e il 90% dell’intera lunghezza della candela
// il corpo della candela deve essere compreso tra il 5 ed il 30% dell’intera lunghezza della candela
// l’ombra superiore (nel caso di candela rialzista) o inferiore (nel caso di candela ribassista) deve essere compresa tra il 5 ed il 25% dell’intera lunghezza della candela
Corpo = abs(open - close) //grandezza del corpo
OmbraSuperiore = high - max(open,close) //grandezza ombra superiore
OmbraInferiore = min(open,close) - low //grandezza ombra inferiore
Ampiezza = range //ampiezza della candela (high - low)
Rialzo = (OmbraInferiore >= (Ampiezza * 0.40) AND OmbraInferiore <= (Ampiezza * 0.90))
Ribasso = (OmbraSuperiore >= (Ampiezza * 0.40) AND OmbraSuperiore <= (Ampiezza * 0.90))
Rialzo = Rialzo AND (OmbraSuperiore >= (Ampiezza * 0.05) AND OmbraSuperiore <= (Ampiezza * 0.40))
Ribasso = Ribasso AND (OmbraInferiore >= (Ampiezza * 0.05) AND OmbraInferiore <= (Ampiezza * 0.40))
Rialzo = Rialzo AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.35))
Ribasso = Ribasso AND (Corpo >= (Ampiezza * 0.05)) AND (Corpo <= (Ampiezza * 0.35))
Risultato = 0
IF summation[2](Rialzo) = 2 THEN
Risultato = 1 //restituisce 1 per i pattern al RIALZO
ELSIF summation[2](Ribasso) = 2 THEN
Risultato = 2 //restituisce 2 per i pattern al RIBASSO
ENDIF
SCREENER [Risultato] (Risultato AS "Rialzo/Ribasso")
Vorrei infatti che questa regola, oltre a cercare le classiche candele rialziste / ribassiste, avesse un ulteriore filtro:
Vorrei infatti che:
Grazie ciao
ProsSreener candele rialziste / ribassiste come le HAMMER, o le SPIKE
This topic contains 60 replies,
has 2 voices, and was last updated by
robertogozzi
2 years, 10 months ago.
| Forum: | ProScreener: Scansione Mercati & Screener |
| Language: | Italian |
| Started: | 11/15/2017 |
| Status: | Active |
| Attachments: | 20 files |
The information collected on this form is stored in a computer file by ProRealCode to create and access your ProRealCode profile. This data is kept in a secure database for the duration of the member's membership. They will be kept as long as you use our services and will be automatically deleted after 3 years of inactivity. Your personal data is used to create your private profile on ProRealCode. This data is maintained by SAS ProRealCode, 407 rue Freycinet, 59151 Arleux, France. If you subscribe to our newsletters, your email address is provided to our service provider "MailChimp" located in the United States, with whom we have signed a confidentiality agreement. This company is also compliant with the EU/Swiss Privacy Shield, and the GDPR. For any request for correction or deletion concerning your data, you can directly contact the ProRealCode team by email at privacy@prorealcode.com If you would like to lodge a complaint regarding the use of your personal data, you can contact your data protection supervisory authority.