Assistenza candela giapponese
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Assistenza candela giapponese
- This topic has 37 replies, 3 voices, and was last updated 7 years ago by
maximus78.
-
-
04/11/2018 at 12:04 PM #68015
Roby buongiorno! In questi gg sono un pò martelloso con richieste di aiuto:)…avrei bisogno di capire bene come indicare la candela giapponese. Vorrei creare da solo un indicatore di pin bar. Ho iniziato con le basi che conosco ma ho bisogno della tua assistenza.
Iniziamo dal corpo candela; ho visto codici in cui viene indicato come: body=abs(close-open). Ma cosa indica “abs” …cosa si intende per valore assoluto? Và aggiunto per forza?
Poi…il range
Range=high-low…quindi si dovrebbe indicare: range=abs (high-low)?
Poi, corpo candela dev’essere almeno 1/3 del suo range in altre parole…range 3 volte corpo. Mi verrebbe da scriverlo così: body=3*range…ma ci vorranno parentesi o probabilmente sto in ogni caso sbagliando.
Detto ciò determiniamo la pin rialzista; il corpo deve essere compreso nella parte superiore del range. Quanto superiore? Farei compreso oltre il 70% …qui come si induca proprio buio per me…
L’ombra inferiore non credo si debba indicare in qualche modo dal momento che se il corpo è già 3 volte il range e posto in alto, di conseguenza già l’ombra è creata…correggimi se sbaglio…
E poi nulla..non credo serva altro per indicare la pin…
Ultima cosa veloce…vorrei indicare in questo caso che la candela precedente la pin creata sia rossa(ribassista)…per fare qualche test in più…
Grazie per la tua sacro santa collaborazione!!!
04/12/2018 at 12:39 PM #68153Ciao, per valore assoluto s’intende l’eliminazione del segno negativo ad un risultato.
Se close è inferiore a open, close-open darà un risultato negativo, es:
close=5, open=7 close-open =5-7=-2.
In questo caso se vuoi il valore assoluto fai :
abs(close-open) =2
Per il range (high-low) non c’è bisogno di utilizzare abs perchè sarà sempre un risultato positivo, infatti high è sempre maggiore di low.
per la PIN rialzista (Hammer):
C1 = close[1]<open[1] // candela precedente ribassista
C2=open[0]>low[0]+(range*0.70) // apertura corrente nei 2/3 superiori del range
C3= close[0]>low[0]+(range*0.70)// chiusura corrente nei 2/3 superiori del range
C4= range[0]>abs(open-close)*3 // range > body di almeno 3 volte
per la PIN ribassista (shooting star):
C1 = close[1]>open[1] // candela precedente rialzista
C2=open[0]<high[0]-(range*0.70) // apertura corrente nei 2/3 inferiore del range
C3= close[0]<high[0]-(range*0.70) // chiusura corrente nei 2/3 inferiore del range
C4= range[0]>abs(open-close)*4 // range > body di almeno 3 volte
Puoi vedere altri codici di candele qui:
https://www.prorealcode.com/prorealtime-indicators/candlestick-patterns-recognition/
Max
1 user thanked author for this post.
04/12/2018 at 1:36 PM #68169Max….grazie!! Mi sei stato davvero di grande aiuto! Ottima spiegazione!!
04/12/2018 at 1:37 PM #68170Ottimo lavoro maximus78.
Per fare riferimento alla candela precedente usa [1] tra parentesi.
Se l’attuale è una Pin BAR, per verificare che la precedente sia ribassista scrivi
12IF open[1] > close[1] THEN //ribassistaIF close[1] > open[1] THEN //rialzista04/12/2018 at 5:41 PM #6819604/12/2018 at 6:55 PM #68208…ragazzi mi sono bloccato!
non riesco a codificare nel modo che vorrei lo stop e il take profit.
Parlando sempre di pin rialzista (hammer) vorrei che il take profit fosse o equivalente al range della pin stessa quindi uguale alla sua estensione oppure che fosse il doppio del range della pin stessa.
Lo avevo provato a scrivere così:
MYRANGE=HIGH-LOW
SET TARGET PPROFIT MYRANGE+1…………….. (il+1 è per recuperare lo spread)…è sbagliato…..
L’altro quesito riguarda lo stop: vorrei che la posizione si chiudesse in automatico non appena il prezzo scende al di sotto del minimo che ha fatto segnare la pin (che ha dato il segnale)…sempre +1 per lo spread.
Grazie ragazzi!
04/12/2018 at 7:56 PM #68212Devi convertirlo in pips
1SET TARGET PPROFIT (range * pipsize) + 1MYRANGE è superfluo. Ed è RANGE, espresso in differenza di prezzo, che va convertiro in Pips perché PPROFIT richiedi questi.
Per lo STOP LOSS puoi scrivere
1SET STOP PLOSS (abs(close - low)) * pipsize + 1Oppure mettere un ordine pendente (che però scade ad ogni candela e va continuamente reimmesso), esempio per uscire in STOP LOSS da un Long
1SELL AT Low - (1 * pipsize) STOP04/12/2018 at 7:57 PM #68213Ecco il codice completo long e short:
1234567891011121314151617181920212223242526272829303132333435363738394041424344defparam cumulateorders=false//per la PIN rialzista (hammer):C1 = close[1]<open[1] // candela precedente ribassistaC2=open[0]>low[0]+(range*0.70) // apertura corrente nei 2/3 superiori del rangeC3= close[0]>low[0]+(range*0.70)// chiusura corrente nei 2/3 superiori del rangeC4= range[0]>abs(open-close)*3 // range > body di almeno 3 voltecondlong=c1 and c2 and c3 and c4entrylong=high[0]+(1*pointsize)stoplosslong=range[0]+(2*pointsize)tplong=stoplosslong*2// long tradeif not onmarket and condlong thenbuy 1 shares at entrylong stopset stop loss stoplosslongset target profit tplongendif//per la PIN ribassista (shooting star):C5 = close[1]>open[1] // candela precedente rialzistaC6=open[0]<high[0]-(range*0.70) // apertura corrente nei 2/3 inferiore del rangeC7= close[0]<high[0]-(range*0.70) // chiusura corrente nei 2/3 inferiore del rangeC8= range[0]>abs(open-close)*3 // range > body di almeno 3 voltecondshort=c5 and c6 and c7 and c8entryshort=low[0]-(1*pointsize)stoplossshort=range[0]+(2*pointsize)tpshort=stoplossshort*2if not onmarket and condshort thensellshort 1 shares at entryshort stopset stop loss stoplossshortset target profit tpshortendifgraph entrylong as "entrylong"graph entrylong-stoplosslong as "stoploss long"graph entrylong+tplong as " take profit long"graph entryshort as "entryshort"graph entryshort+stoplossshort as "stoploss short"graph entryshort-tpshort as " take profit short"Io utilizzo sempre il comando graph finale per le variabili di acquisto e vendita.
In questo modo verifico se i trades entrano ed escono ai giusti livelli di prezzo.
In questo caso, i livelli di prezzo sono quelli sulla candela precedente all’entrata in posizione.
Max
04/12/2018 at 8:13 PM #68216Grazie ragazzi! Super Max!
Ora devo solo pensare bene a filtrare queste pin…pensavo riguardo all’hammer di stabilire che prima di esso si verifichi un trade short magari indicando che la apertura o chiusura della pin debba essere inferiore rispetto ai 5 o 10 minimi precedenti…senza includere le shadow precedenti e magari anche aggiungere un atr perchè non vorrei mi prendesse quelle pin troppo piccole che spesso sono delle fake…che ne dite? avete qualche altro consiglio?
04/12/2018 at 8:48 PM #68218Esatto Fabio, devi lavorare sui filtri….per esempio…
range[0]>averagetruerange[20](close)*1.5 oppure *2
oppure se vuoi che la Pin rialzista sia in trend in un long trade:
close>average[N, type](close)
o controtrend reversal sempre in un long trade..
close<average[N, type](close)
Puoi utilizzare anche 2 medie mobili per determinare la situazione del mercato,oppure
oscillatori di ipercomprato e ipervenduto come RSI, stocastico o williams %R…
ecc…..
Max
04/13/2018 at 6:43 AM #68229Grazie per le dritte Max!!! Questo weekend provo a sperimentare qualcosina:) a livello di timeframe mi consigli già di abbandonare l’idea di provare a tradarle in quelli più brevi sotto l’ora oppure ne può valere la pena?
Buona giornata
04/13/2018 at 7:19 PM #68308No, prova anche quelli, ovviamente settando un adeguato spread.
Uno spread di 2 pips per esempio su EUR/USD su timeframe di 1 ora ha ovviamente un impatto molto diverso rispetto al timeframe a 1 minuto.
Le pin candles si formano frequentemente su tutti i timeframes.
Max
04/14/2018 at 12:03 PM #68349Grazie Max! Posso chiederti se esiste una formula di codice (senza aprire un nuovo tred) che, mi faccia aprire una posizione dopo che se ne verifichi prima un’altra…mi spiego meglio;
Mettiamo che abbia un indicatore di divergenza rsi. L’indicatore è settato per dare segnali +1 div rialz oppure -1 per divergenza ribassista. Non vorrei aprire posizioni ogni volta che il sistema mi identifica un segnale +1 o -1, ma aspettare che dopo il segnale un’altra condizione si verifichi magari dopo un tot di candele. Esempio: segnale divergenza rialz aspetto che si verifichi un incrocio di medie al rialzo…che magari succede dopo 3 o 4 candele…se le medie dovessero però incrociarsi dopo 10 candele allora non vorrei aprire la posizione.
Non so se si possa codificare qualcosa del genere…
Buona giornata!!
04/14/2018 at 8:53 PM #68370Certo che è possibile.
Devi impostare una variabile che “blocca” il verificarsi di una condizione.
Ti faccio un esempio con 2 condizioni distinte.
C1 il prezzo fa un nuovo minimo a 10 periodi.
C2 avviene un incrocio di 2 medie mobili entro 10 candele dal verificarsi di C1.
Mylongindex è la variabile che setto quando si verifica C1 e viene richiamata nelle condizioni di acquisto settando il periodo limite di 10 candele.
Vedrai nel grafico “graph” che le entrate in posizione sono sempre inferiori a 10 candele tra C1 e C2.
Max
1234567891011121314151617defparam cumulateorders=falsec1=low[0]<lowest[10](low)[1]c2=average[5](close) crosses over average[10](close)if c1 thenmylongindex=barindexendifif (barindex-mylongindex)<10 and not onmarket thenif c2 thenbuy 1 shares at marketset stop ploss 50set target pprofit 100endifendifgraph (barindex-mylongindex)04/15/2018 at 6:57 AM #68379Max geniale! Grazie a te ora ho un bel pò di info in più con cui poter sperimentare nuove cose e lavorarci su;) !! Thanks
Buona domenica!!!
-
AuthorPosts
Find exclusive trading pro-tools on