Buongiorno a tutti, mi servirebbe l’aiuto di qualcuno più esperto, è già da un bel po che sto cercando di creare questo tipo di indicatore biblioteca, ho già Tutti i pattern in un indicatore ma non riesco a definire i pattern come variabili che poi andranno chiamate con call e poi ottimizzate, per esempio se si verifica il pattern1 la variabile dell’ incatore deve dare 1, se si verifica il 2 deve risultare 2 e così via, spero di esserermi spiegato bene e vi ringrazio in anticipo.
una buona serata a tutti
io ho provato cosi:
///ESEMPIO
Ptn1= close>dclose(1)
Ptn2= high>Dhigh(1)
ptn3= low<dlow(1)
//calcolo
if ptn1 then
ptn=1
elsif ptn2 then
ptn=2
elsif ptn3 then
ptn=3
else
ptn=0
endif
return ptn as "ptn"
ma non riesco a dare le variabili che poi andranno ottimizzate dopo la CALL, provo a scrivere PTN nelle variabili dell´indicatore, ma niente non va, ho provato pure a mettere i risultati di PTN tra parentesi ma non va comunque, non riesco in nessun modo.se qualcuno magari ha un esempio da fare con questi semplici pattern sarei veramente grato.
ancora buona serata
Per favore:
- usa il forum corretto, questo è relativo ad un indicatore, quindi sul supporto PROBUILER
- non aggiungere post ad altri topic precedenti che niente hanno in relazione a ciò che chiedi.
Grazie.
Basta che tu richiami il TuoIndicatore (col nome che vorrai assegnarli quando lo crei), indicando la variabile dove mettere il dato restituito:
MioPattern = CALL "MioIndicatore" //MioPattern conterrà 1, 2, 3 o qualunque altro valore l'indicatore restituisca
ad ogni modo, basta che tu cerchi sul forum la parola CALL e troverai un sacco di esempi al riguardo, oltre la documentazione ufficiale.
Grazie per la risposta Roberto, avevo scritto su quel topic perché è propio quello “l’indicatore biblioteca pattern” che sto cercando di creare, ho cercato molto sul forum e su internet ma non sono riuscito a risolvere il mio problema, la funzione di richiamo mi è chiara il mio problema è che non riesco a dare le variabili che poi andranno richiamate e ottimizzate nel programma nel modo giusto, nel programma scrivo come hai fatto tu e poi cerco di ottimizzare ma sbaglio qualcosa il programma mi dice +o- che la funzione “ptn” deve essere richiamata con 0 parametri come previsto invece che con 1, provo a mettere “ptn” nelle variabili ma l’ Ottimizzazione non cambia, potresti farmi un esempio con lindicatore che ho scritto sopra? Quali valori dovrei inserire nelle variabili?
Grazie e buona giornata
Segui la segnalazione di errore ed il mio esempio.
Non mettere nessun parametro quando fai la CALL, Ptn non ne vuole.
Se, ripeto, cerchi nel forum vedrai quanti esempi con o senza parametri,
Nel tuo caso è SENZA parametri.
Scrivilo esattamente come ho fatto io, solo cambiando il nome.
Ciao Roberto, grazie ancora per la risposta, forse mi sono spiegato male, lindicatore riesco a farlo funzionare da solo, il mio problema è quando lo richiamo in un Trading Sistem e ne voglio ottimizzare le variabili, a quel punto non riesco a fare l’ottimizzazione o perché sbaglio qualcosa con le variabili, cioè devo mettere ogni pattern come variabile? E dopo metto tutti i risultati dopo Return ?
Ripeto ancora, scrivi:
MioPattern = CALL "MioIndicatore"
al posto del nime “MioIndicatore” dovrai mettere PTN o qualunque altro nome tu desideri.
L’indicatore che tu hai postato NON contiene nessuna variabile da ottimizzare, quindi NON esiste alcun parametro da passargli, tipo medie, dove gli indichi il periodo e di cosa deve fare la media.
Il tuo indicatore RESTITUISCE un solo dato, che va indicato a sinistra del segno “=”.
A meno che tu non intenda qualcos’altro ma per errore hai postato il codice errato, non so.
Questo indicatore NON ha niente da ottimizzare e nessun parametro (o variabile) da fornirgli al momento della CALL.
La strategia sarà, grosso modo:
MioPattern = CALL "MioIndicatore"
IF MioPattern = 1 THEN
. //Buy o Selldhort o quello che vuoi
ELSIF MioPattern = 2 THEN
. //Buy o Selldhort o quello che vuoi
ELSIF MioPattern = 3 THEN
. //Buy o Selldhort o quello che vuoi
ENDIF
grazie Roberto, sbagliavo a mettere il risultato tra parentesi invece di scriverlo dopo “=”
buona serata