Visual Trader T.S. : Problemi & Soluzioni

Premetto che...

premetto che essendo in altre faccende affaccendato non ho avuto modo di leggere tutto il post, quindi spero di rispondere in modo coerente.
Andando subito al sodo, credo che a breve (spetta agli sviluppatori dire quando) saranno disponibili gli ordini stop e limite. Quando ciò avverrà il software eseguirà gli ordini d'ingresso (o di uscita) anche a barra aperta al superamento di determinati livelli stabiliti dal programmatore.
Al di là dell'esecuzione materiale dell'ordine, che come detto, avverrà in corso dello sviluppo della barra, la logica di un trading system che gira su un software di analisi tecnica è quella di ragionare a barra chiusa. Solo quando si chiude l'ultima barra appena sviluppata sono infatti disponibili le informazioni di High, Low, ecc...Non è logico ne' possibile fare ragionare un software in modo diverso. Per alcune funzioni come ad esempio i trailing stop il rivale TradeStation prevede che venga calcolato lo stop tick by tick, ma si tratta di funzioni particolari che se non ben sfrutatte e comprese a fondo generarno problemi di backtesting (i report sono gonfiati nei risultai ed assolutamente irrealistici) a causa del bouncing tick.
Cordiali saluti,
E.Malverti :) :censored:
 
Re: Premetto che...

Scritto da EnMal
premetto che essendo in altre faccende affaccendato non ho avuto modo di leggere tutto il post, quindi spero di rispondere in modo coerente.
Andando subito al sodo, credo che a breve (spetta agli sviluppatori dire quando) saranno disponibili gli ordini stop e limite. Quando ciò avverrà il software eseguirà gli ordini d'ingresso (o di uscita) anche a barra aperta al superamento di determinati livelli stabiliti dal programmatore.
Al di là dell'esecuzione materiale dell'ordine, che come detto, avverrà in corso dello sviluppo della barra, la logica di un trading system che gira su un software di analisi tecnica è quella di ragionare a barra chiusa. Solo quando si chiude l'ultima barra appena sviluppata sono infatti disponibili le informazioni di High, Low, ecc...Non è logico ne' possibile fare ragionare un software in modo diverso. Per alcune funzioni come ad esempio i trailing stop il rivale TradeStation prevede che venga calcolato lo stop tick by tick, ma si tratta di funzioni particolari che se non ben sfrutatte e comprese a fondo generarno problemi di backtesting (i report sono gonfiati nei risultai ed assolutamente irrealistici) a causa del bouncing tick.
Cordiali saluti,
E.Malverti :) :censored:

bo, se sei convinto di quel che dici meglio per te.
poi sul fatto di nn poter fare un software simile io nn lo so, perchè nn ho competenza in materia.

irrealistico per me è quello che avviene ora, ma devo dire che nn ho visto la versione di come lo dico io , cosa ne potrebbe risulatare.

ora risulta che i dati sono tutti in ritardo di un periodo.

esempio di come potrebbe fare il calcolo il software, ma nn so se si può oviamente.
---------
il valore di massimo è il valore di barra più alto diverso o uguale al valore attuale, il valore di minimo è il valore più basso di barra diverso o uguale dal valore attuale.

----

e così via penso si possa ragionare su tutti gli altri valori.


se io ora gli dico chiudi il long o lo short sull'open di barra nn è un valore irreale?

io dico di si e parecchio, specie se si usano grafici daily o cmq time frame alti tipo il 60 min, ci possono essere differenze di 10 20 tick o molto di più.

quindi se parliamo di indicazioni irreali è meglio averle in ritardo oppure in tempo reale?

anke se a dire il vero nn capisco come possano essere irreali da come ho interpretato una soluzione/metodo di calcolo sopra.

prova a guardare la mm sul ts a dx e sul grafico costruito a sx , hanno gli stessi parametri, ma come si vede, sul ts sono in ritardo di un periodo.

la media blu e la bianca.
se riescono a fare il conto su grafici normali dei problemi di software nn credo ci siano, forse possono esserci valori diversi di report, ma se si pensa che il report è irreale cmq , io credo sia meglio la soluzione proposta sopra.

e poi nn credo proprio il report dia valori diversi, infatti ho detto.

1) gli indicatori devono essere aggiornati in tempo reale.

2)appena l'indicatore si trova in condizioni di attivare l'ingresso il prg visualizza sul valore attuale un cerchietto (come in parte fa ora) ke si muove dinamicamente al variare di prezzo.

3) se la chiusura di barra conferma gli indicatori nella posizione di ingresso allora fissa una freccia ad indicare ke il ts è entrato, altrimenti sparisce il cerchietto e nulla viene modificato sul report.

quindi il report viene aggiornato solo se effettivamente le frecce e le chiusure vengono confermate.

il valore reale ke farò io o cmq chi usa il sistema sarà mia discrezione all'interno di quella barra o sucessiva, come mi pare a me, ma sapendo ke l'indicazione data è valida e reale.

spero di essermi spiegato.
ciao
 

Allegati

  • diff ts graf normale.png
    diff ts graf normale.png
    9,5 KB · Visite: 356
Ultima modifica:
guardate ora, si vede ancora meglio.

secondo me è ancor di più di un periodo, il primo conferma la mm sotto, il secondo se il ts entra in base alle mm incrociate deve attendere pure la sucessiva in chiusura o open, poi mette sulla precedente (ormai già avvenuta) la freccia,

quindi 2 periodi molto probabilmente.
 

Allegati

  • diff.png
    diff.png
    6,2 KB · Visite: 352
Al di là dell'esecuzione materiale dell'ordine, che come detto, avverrà in corso dello sviluppo della barra, la logica di un trading system che gira su un software di analisi tecnica è quella di ragionare a barra chiusa.

----------------------------------

ecco su cosa nn sono daccordo al 100% ma capisco di cosa stai parlando.

dipende per l'appunto da quale approccio dai a un ts.

entrare sfruttando l'analisi tecnica rigida oppure anche su altri eventi tipo ipercomprato ipervenduto ecc.

l'analisi tecnica di cui parli te è incentrata per il 90% sulle candele e le figure che fanno 2 o 3 candele, cosa ke a me sinceramente nn dice proprio nulla o cmq secondo me è molto facile ke i ts saltino subito in stop a meno ke ti dai ampi margini di stop, cosa ke a me nn piace proprio, infatti quante volte si vede un open su certi titoli con valori sballati rispetto al giorno precedente?
sono sistemi ke saltano, e per me gli avvoltoi ci studiano sopra parecchio per farli saltare, proprio perchè qualcuno ha messo in giro l'analisi tecnica rigida di cui si parla.

doji quì hammer la morobuzu di la ecc ecc:D

me fanno paura alcuni nomi:D:D

è come dire, sul mercato della frutta le cigliege hanno prezzi alle stelle, ma i co.io.ni di compratori invece di dire, ora mi compro un frutto diverso, li senti al tg ke si lamentano perchè la cigliegina costa 10€ al kg, ma la compra lo stesso, nn fanno altro che il gioco speculativo degli avvoltoi.

e poi ricorda, l'analisi tecnica è passato quindi il futuro è già tardi.

io mi incentro di più sulla ripetività di un evento nel tempo, fin ke questa condizione resta forte quel segnale è maggiormente valido, quando questa condizione diminuisce allora è ora di cambiare sistema.
e secondo me queste situazioni sono più difficili da pilotare nel breve periodo, quindi ragionevolmente "più sicure",

poi se la candele è un hammer o un doji o ke altro nn mi interessa, mi basta sapere che in quella situazione difficilmente cambia direzione, al massimo nn faccio gain o il loss è basso.

almeno questo è l'obbiettivo:D

cmq sulla base di come lo vorrei io mi troverei al quanto bene col mio sistema:D

peccato, spero che quelli di traderlink si mettano a rischivere, ora nn dico più nulla per un poketto:D così gli do la parola e sentiamo ke ticono.



:censored:

ho già detto troppo e sopratutto cose ke sarebbe opportuno nn dire:D:mmmm: :confused: :p :D
 
ts dulla barra di chiusura

Questo argomento e' stato dibattuto moltissimo, in TraderLink, con tutti i programmatori ed appassionati che ci hanno aiutato nello sviluppo iniziale del sistema. Per nostra analisi siamo arrivati alla stessa conclusione espressa nella risposta data da Enrico Malverti, che come ricordo non e' uno "qualsiasi" ma il vincitore di un CAMPIONATO di trading systems, relatore, istruttore, etc. etc.

La prima cosa da notare e' che c'e' differenza tra la STRATEGIA di fondo del TS e gli INTERVENTI TEMPESTIVI a causa di stop o ingresso in posizione solo al raggiungimento/superamento di un certo valore calcolato.

STRATEGIA:
==========
il problema principale, a mio avviso, e' che una strategia deve tra l'altro essere analizzabile e riproducibile in futuro.

1) Analizzabile: applicarla quindi in modo sistematico sulle serie storiche disponibili, per verificare la prestazione della strategia.
Quindi eventualmente modificarla, se i risultati non ci soddisfano, per poi ripetere il processo di analisi storica.

2) Riproducibile: assicurarsi che il metodo di funzionamento della strategia sia uguale, in futuro, rispetto al passato.
Quindi (possibilmente) nulla che renda l'operativita' imprevedibile, rispetto alle analisi storiche, che sono poi quelle che ci hanno dato la fiducia e la costanza (difficilissimo....) di seguire la strategia anche quando, inevitabilmente, colleziona perdite consecutive, magari perfettamente in linea con le performances passate.

Durante l'incontro fatto a Rimini, Enrico Malverti ci ha ben spiegato i limiti di analisi dell'operativita' sul passato, della aspettativa effettiva per il futuro, di come sia facile auto-ingannarsi credendo di aver scoperto formule miracolose. Questo anche con strategie ben formalizzate analizzabili, riproducibili.

Immagini questa situazione anomala:
Su un ts con barre ad un'ora, ad un certo punto scatta uno stop che chiude la posizione.
Se il ts ottenesse subito il controllo del sistema potrebbe dopo pochi minuti decidere di tornare in posizione, magari poi uscendone dopo altri pochi a causa di un altro stop, o segnale di vendita, per poi tornare in posizione, etc. etc.
Analizzando il report delle operazioni otterremmo magari venti freccette di entrata / uscita tutte sulla stessa barra, senza alcuna possibilita' di capire cosa e' successo. Ed un comportamento del genere come potremmo riprodurlo/analizzarlo, sulla serie storica passata ? Come minimo occorrerebbe una serie storica tick-by-tick molto lunga, anche se lavoriamo con barre ad un ora, per simulare tutti gli stop, cambi di stato, etc. etc. occorsi in ogni singola barra, che comunque produrrebbero tanti e tanti segnali su singole barre.

Se una strategia non e' analizzabile e non la si puo' riprodurre in futuro.... allora stiamo giocando a dati.

INTERVENTI TEMPESTIVI:
======================
Con i prossimi sviluppi sara' possibile:
a) uscire in realtime da una barra a causa di uno stop pre-impostato
b) entrare in posizione durante la barra al raggiungimento di un prezzo prestabilito dal TS
c) .... nient'altro

In ogni caso il TS verra' poi azionato al completamento della barra, come ora, e come fanno in pratica tutti i ts che conosciamo, anche il blasonatissimo TradeStation.

Quindi si scelga la durata di barra compatibile con il Suo "stile" di trading, l'ingresso condizionato e gli stop gestiranno "il frattempo".
Enrico Malverti ci ha parlato di un Suo modo di operare con barre ad un'ora: praticamente il resto del tempo lo impiega facendo tutt'altro, si posiziona davanti al sistema nei 5 minuti di cambio barra, vede i segnali, li applica, e poi torna a fare altro.

Una cosa molto utile, che per ora si fa con un po' di difficolta' con VT, e' il fatto di lavorare con una analisi a barre piu' "lunghe" per poi operare con barre piu' brevi. A questo proposito ci sono alcuni post interessanti, relativi alla funzione "GetValues".
Con questo sistema si utilizza un ts, ad esempio, a 3 minuti ma si fanno calcoli e segnali su barre a 15 minuti, 30 minuti, etc. etc.
Questo tipo di "virtualizzazione" come ripeto e' per ora un po' macchinosa: stiamo modificando il linguaggio per renderla piu' semplice.

A quel punto, scelto il time frame minore, poniamo a 5 minuti, facendo anche tutti gli altri calcoli su barre piu' lunghe, quello che accade nei 5 minuti di formazione della candela NON riguarda la strategia, che viene applicata solo a conclusione della barra, ma solo i (prossimi) comandi di STOP o ingresso condizionato al valore imposto.


cordialita'
Mauro Pratelli
 
nn so, io avevo scritto ke il report veniva elaborato sulle chiusure, gli indicatori e tutto il resto funzionasse in tempo reale come i grafici normali, durante la giornata volevo un segnale di avviso tipo per l'appunto un cerchietto che si muove dinamico sul prezzo di quella candela .


il report è analisi statistica e come tale va presa solo come riferimento, quindi giustamente sulle chiusure di barra, ma altra cosa è l'operatività ke deve darmi indicazioni in tempo reale specie per chi opera in giornata, quindi indicatori in tempo reale, colore delle candele in tempo reale, insomma tutto in tempo reale, ora ho tutte indicazioni in differita, cosa ke nn serve a nulla, anzi serve solo per la statistica sullo storico, ma come si sa la storia è passato e giustamente difficilmente riproducibile a livello operativo in modo costante, per questo va considerata solo per fare statistiche del tipo, gli stop loss dove metterli in base ai movimenti del titolo ecc, trovando valori abbastanza precisi sulla ripetività di certe situazioni e salvandosi da stop ke sarebbe stato meglio nn fare sapendo ke statisticamente ad esempio lo stop loss nn va fatto sul titolo X prima di almeno 1% (ESEMPIO)

e ke farlo a 0.9% rischi di stoppare su un minimo.

ecco, a questo il report da indicazioni buone, per il resto ora nn serve a nulla per l'operatività in tempo reale.


sarei disposto ad avere il tutto in tempo reale con gli indicatori oppure le candele colorate ad esempio,come mi pare a me senza avere statistica scritta, piuttosto ke districarmi a capire se la prossima candela al prezzo attuale mi darà una candela rossa o una verde, e cercando di calcolare a mente o a occhio dove potrebbe finire l'indicatore sulla prossima candela.

nn vi sembra il tutto un po inverosimile il sistema attuale?



cose viene scritto sopra, nn ci saranno 200mila segnali di entrata e di uscita su una candela, il segnale sarà uno solo quando sarà chiusa la candela, solo in quel momento si avrà la freccia immessa e stabile, nn come ora ke ogni tanto sparisce poi ritorna :D

il cerchietto che dico io è solo un riferimento, uno lo considera oppure no a proprio piacere sapendo ke per la statistica il report calcola le frecce ke vengono fissate alla chiusura.


mi spiace molto che il trading sistem ora abbia delle lacune così notevoli per operare in tempo reale, spero che prendiate in cosiderazione qualcosina di quanto ho detto.

sinceramente mi basterebbe ke mi diate la possibilità di colorare le barre in tempo reale in base a come imposto gli indicatori io, il resto mi interessa poco a livello realtime.

ora il colore delle barre rosse verdi e grige impostato su VT in base all'rsi è un esempio di quel ke mi interesserebbe, ma ci vorrebbe la possibilità di modificarlo, come colore ecc con anche indicatori diversi.

poi se questo lo si abbina al report risulterebbe un buon compromesso.
 
Re: Re: swingchart

Scritto da TRADERLINK
un esempio di un suo possibile uso:
Codice:
VAR: swing(0);

swing = SwingChart(C);

PlotChart(swing, 1, Red, Solid, 2);

Cordiali Saluti
Staff Traderlink

trovo questo codice molto utile, è possibile utilizzarlo per colorare di verde la barra che indica uno swing minimo significativo e di rosso quella dello swing massimo?
Per swing significativo intendo uno swing formatosi in almeno 3 sedute.

Grazie
 
Se il ts ottenesse subito il controllo del sistema potrebbe dopo pochi minuti decidere di tornare in posizione, magari poi uscendone dopo altri pochi a causa di un altro stop, o segnale di vendita, per poi tornare in posizione, etc. etc.

------------------


su questa parte in particolare son daccordo e come detto nn ci deve essere nessun controllo di sistema da parte del ts fino a che la candela nn si chiude, l'unica differenza per quanto riguarda il sistema in generale è la seguente.

se io sono dentro e scatta uno stop la candela deve essere già chiusa; in tempo reale invece se il titolo sta ad un valore in cui sta per dare indicazioni di stop, sul grafico compare il solito cerchietto ke ho citato sopra, magari di colore differente, il ts solo a chiusura di barra da la conferma di uscita e aggiorna il relativo report.

allo stesso modo, se io esco dal ts prima della chiusura di barra e quindi con il cerchietto , una volta uscito il ts "sente" che io nn sono più long e quindi sono fuori e nn ha motivi di dare altri segnali di stop; se da altri segnali vuol dire ke al ts sono stati date indicazioni di ingresso errate che generano altri ingressi, quelle penso che vengano corretti modificando il codice scritto di un ts, pure ora se faccio un ts in un certo modo può darmi 200mila segnali long stop short stop long ecc all'infinito.

ecco, l'unica cosa che potrebbe dare problemi è il fatto di rendersi conto ke effettivamente nn sono più dentro il titolo, ma questo penso che venga risolto da alcune funzioni tipo positiondir ecc..

quindi se ho stoppato e sono fuori... "ricalcola il ts e riattendi un nuovo segnale long o short in base a quanto ti ho indicato".

cmq sia spero sia stato capito quanto ho voluto dire sopra , io nn sono esperto ma nn credo che quanto detto nn sia fattibile oppure sia troppo complicato da costtruire rispetto al sistema attuale.


volendo per chi piacciono le figure sulle candele si potrebbe pure fare una nuova istruzione... PATT..esempio


if Patt=(C[3],B,B,W,C);



PAtt sta per pattern, gli do sto nome.


lo spiego:

se la chiusura delle ultime 3 candele, corrispondono due candele nere, e poi una bianca entra in chiusura sulla candela sucessiva.

in sto modo probabilmente il ts risponde pure alle esigenze di chi entra considerando le figure delle candele e quindi si risolve il problema sopra, e si entra in differita:D

questa funzione potrebbe essere pure ampliata nel seguente modo risolvendo pure a me vari problemi: esempio.

if Patt=(C[6],B[4],W[2],C);

se le ultime 6 candele son così fatte, 4 nere poi 2 bianche, entra in chiusura della sucessiva.

poi si potrebbe fare un calcolo sull'intera formula dandogli unva variabile, tipo:

se PATT1 > H[1] then...


quindi gli dico se la funzione racchiusa in patt è vera, entra se la chiusura C attuale è maggiore del massimo della candela precedente then..


quindi entra solo se patt è vero e la chiusura attule è maggiore (ad esempio) del massimo precedente.

la stessa cosa fattibile con la stessa istruzione patt con gli indicatori nominati su una variabile.

esempio:


if Patt(RSI1[5],B[3],W[2]) then...

io ho messo B e W per dire nero e bianco come sulle candele, e quindi adattarlo su tutti i sistemi scrivibili, ma si potrebbe fare N per B= negativo invece di nero, e P invece di W per dire positivo.


poi gli esperti siete voi.
 
Ultima modifica:
Scritto da lele2
nn vi sembra il tutto un po inverosimile il sistema attuale?

I trading system sono strumenti pensati per essere assolutamente automatici ed il nostro motore di elaborazione è stato progettato per poter compiere decisioni di trading senza alcun intervento umano (tranne ovviamente per quello che riguarda gli acquisti e le vendite vere e proprie, che non possono essere automatiche).
Infatti, secondo quella che è la teoria dei trading system, per un corretto funzionamento del sistema è indispensabile evitare ogni intervento arbitrario come possono essere, ad esempio, uscite anticipate od entrate non segnalate.

In questa ottica, il comportamento del nostro motore di trading system è certamente corretto ed il discorso circa le possibili entrate e uscite multiple su una stessa barra fatto più sopra deve essere letto tenendo bene a mente tutto ciò.
Diverso è invece il discorso circa gli indicatori in tempo reale che lele2 vorrebbe utilizzare.

Quando abbiamo progettato il TS non avevamo considerato che ci potesse essere la volontà di utilizzare questo strumento in modo non automatico ma semplicemente per semplificarci la vita delegando i conti e le considerazioni che siamo abituati a fare a mente ad un programma per ottenere sì indicazioni, tramite barre colorate o altro, sulla possibilità di trading ma riservandoci comunque la decisione finale circa l'operare o meno e a quale livello farlo.

lele2 trova il motore per i TS attuale non adeguato alle sue necessità non perchè la sua impostazione sia sbagliata ma semplicemente perchè sta cercando di utilizzare uno strumento per cose diverse da quelle per cui è stato costruito.
Tutto il suo discorso è però servito a qualcosa perchè stiamo seriamente prendendo in considerazione la possibilità di modificare il nostro lavoro per rendere possibile questo diverso modo di utilizzo: una nuova modalità di funzionamento per cui il disegno degli indicatori e la colorazione delle barre verrà fatta in tempo reale ma in cui sarà vietato, visto tutto il discorso fatto, utilizzare funzioni di trading.

Distinti saluti,
Staff Traderlink
 
Re: Re: Re: swingchart

Scritto da trendinrialzo
trovo questo codice molto utile, è possibile utilizzarlo per colorare di verde la barra che indica uno swing minimo significativo e di rosso quella dello swing massimo?
Per swing significativo intendo uno swing formatosi in almeno 3 sedute.

Grazie

Avremmo bisogno di un chiarimento per quanto riguarda la definizione di swing significativo:

si intende un livello di swing che non varia da 3 sedute oppure solo i livelli di swing da 3 sedute fa in poi?

cordiali saluti,
Staff Traderlink
 
Re: Re: Re: Re: swingchart

Scritto da TRADERLINK
Avremmo bisogno di un chiarimento per quanto riguarda la definizione di swing significativo:

si intende un livello di swing che non varia da 3 sedute oppure solo i livelli di swing da 3 sedute fa in poi?

cordiali saluti,
Staff Traderlink

mi riferisco ad almeno 3 sedute consecutive che realizzano un punto max/min
 
Re: Re: Re: Re: Re: swingchart

Scritto da trendinrialzo
mi riferisco ad almeno 3 sedute consecutive che realizzano un punto max/min

Questo potrebbe essere il listato di esempio:

Var: swing(0);

swing = SwingChart(C);

if (swing[3] = swing[2]) and (swing[2] = swing[1]) and (swing[1] = swing) then
if swing[3] > swing[4] then
colorbar(red);
elseif swing[3] < swing[4] then
colorBar(green);
else
colorBar(black);
endif;
endif;
plotchart(swing, 0, red, solid, 2);

cordiali Saluti,
Staff Traderlink
 
Re: Re: Re: Re: Re: Re: swingchart

Scritto da TRADERLINK
Questo potrebbe essere il listato di esempio:

Var: swing(0);

swing = SwingChart(C);

if (swing[3] = swing[2]) and (swing[2] = swing[1]) and (swing[1] = swing) then
if swing[3] > swing[4] then
colorbar(red);
elseif swing[3] < swing[4] then
colorBar(green);
else
colorBar(black);
endif;
endif;
plotchart(swing, 0, red, solid, 2);

cordiali Saluti,
Staff Traderlink

scusate ma evidentemente non mi sono spiegato bene, vlorrei fare una cosa di questo tipo per evidenziare min/max relativi tra min/max più alti/bassi in modo da evidenziare gli eventuali swing dove poter applicare la raggera:


if L[3]<L[4] AND L[4]<L[5] AND L[5]<L[6] AND L[3]<L[2] AND L[2]<l[1]
and l[1]<l then colorbar(green);
endif;

if h[3]>h[4] AND h[4]>h[5] AND h[5]>h[6] AND h[3]>h[2] AND h[2]>h[1]
and h[1]>H then colorbar(red);
endif;

solo che il codice a me sembra corretto ma purtroppo colora le barre sbagliate.

Grazie per il supporto
 
Re: Re: Re: Re: Re: Re: Re: swingchart

Scritto da trendinrialzo
solo che il codice a me sembra corretto ma purtroppo colora le barre sbagliate.

Credo che la barra colorata sia in verità quella giusta per il programma che ha scritto ma non per quello che ha in mente di fare: da quanto ho avuto modo di capire lei vorrebbe colorare l'ultima barra del trend acendente e non la terza, come invece accade con il programma da lei scritto, o sbaglio?

Se ho capito bene, un programma che fa quello che lei davvero cerca può essere il seguente:
Codice:
VAR: swing,
     count(0),
     setup_min(0), setup_max(0);

// Otteniamo il valore dello swing chart per questa barra
swing = SwingChart(C);

if (swing = swing[1]) then
   // Se e' uguale a quello della barra principale incrementiamo il
   // contatore
   Inc(count);
else
   // Se e' diverso allora abbiamo ovviamente due possibilita': o e' maggiore
   // (ed allora lo swing chart precedente segnalava un minimo) o e' minore
   // (e di conseguenza lo swing chart segnalava un massimo).
   // Detto questo, procediamo a vedere se il minimo o massimo trovato e'
   // significativo, cioe' controlliamo che il valore dello swing sia rimasto
   // invariato per almeno 3 barre.
   if (count >= 3) then
      // Se e' significativo allora dobbiamo comportarci diversamente in
      // caso fosse un massimo o un minimo.
      if (swing < swing[1]) then
         // Se era un massimo (nuovo valore di swing minore del precedente)
         // controlliamo se per caso in precedenza avevamo trovato un minimo
         // significativo.
         if (setup_min = 1) then
            // Se si, coloriamo la barra di rosso.
            ColorBar(Red);
         endif;
         setup_min = 0;

         // Facciamo in modo di ricordarci di aver trovato un massimo
         // significativo
         setup_max = 1;
      else
         // Se non era un massimo allora era un minimo (nuovo valore di
         // swing maggiore di quello precedente): controlliamo se in
         // precedenza avevamo trovato un massimo significativo.
         if (setup_max = 1) then
            // Si: coloriamo la barra di verde.
            ColorBar(Green);
         endif;
         setup_max = 0;

         // Facciamo in modo di ricordarci di aver trovato un minimo
         // significativo.
         setup_min = 1;
      endif;
   else
      // Il massimo o il minimo ha retto per meno di 3 barre: per noi e'
      // come se non fosse esistito azzerando tutte le nostre variabili.
      setup_min = 0;
      setup_max = 0;
   endif;

   // Poiche' il valore dello swing e' cambiato azzeriamo il conteggio
   // delle barre.
   count = 0;
endif;


// Disegnamo lo swing chart sul grafico per controllare che il programma
// sia corretto.
PlotChart(swing, 0, Blue, Solid, 1);

Se invece avessimo di nuovo capito male per cortesia ci contatti privatamente per non continuare inutilmente questo thread fino a che non abbiamo capito bene cosa vuole ottenere.

Distinti saluti,
Staff Traderlink
 
ho provato a plottare le pivot , riesco a plottarne solo una, o quella superiore o quella inferiore, entrambe nn me le prende, perchè?


poi vorrei fare un'altra cosetta che ho trovato su un esempio ma nn riesco a riprodurla; è plottare il punto di stop che ho scritto dentro il ts ad inseguire, se provo a farlo mi fa il grafico schiacciato.

potete postare un esempio concreto di stop ad inseguire e plottaggio sul grafico del livello di stop?

ad esempio.

var stop

var newstop

e poi il plot sul grafico del valore di stop aggiornato e visibile.
poi provo a metterlo di nuovo sul ts.


grazie
 
Scritto da lele2
ho provato a plottare le pivot , riesco a plottarne solo una, o quella superiore o quella inferiore, entrambe nn me le prende, perchè?

Probabilmente c'è qualche errore nel suo programma perchè abbiamo appena provato il codice seguente e non abbiamo avuto problemi:
Codice:
Var: pivotr1, pivots1;

pivotr1 = PivotR(C, 1);
pivots1 = PivotS(C, 1);

PlotChart(pivotr1, 0, Red, Solid, 1);
PlotChart(pivots1, 0, Blue, Solid, 1);

Se ne ha occasione lo provi anche lei e ci faccia sapere se ha problemi.


Scritto da lele2
poi vorrei fare un'altra cosetta che ho trovato su un esempio ma nn riesco a riprodurla; è plottare il punto di stop che ho scritto dentro il ts ad inseguire, se provo a farlo mi fa il grafico schiacciato.

Il problema del grafico schiacciato si verifica, come già detto in qualche post precedente, quando si cerca di disegnare nella finestra del grafico un valore troppo distante da quello del grafico stesso.
Tipicamente questo accade quando si disegna, tramite PlotChart, una variabile il cui valore è 0.

Per fare un esempio, prendiamo il caso di un titolo il cui valore si muove fra i 24 e i 25 euro. E' chiaro che disegnando nella stessa finestra un altro grafico il cui valore si muove fra 0 e 1 otterremo uno schiacciamento.
Il Visual Trader infatti è costretto, per gestire correttamente la scala dei valori, ad utilizzare pochissimo spazio per visualizzare lo scostamento del prezzo dei titolo e a riservare la maggior parte dello spazio disponibile per far mostrare tutti i valori inutilizzati da 1 a 24.

Per evitare questi problemi bisogna quindi stare attenti a disegnare su una stessa finestra valori simili, evitando tutte quelle situazioni che possano produrre valori inadeguati al plot.

Prendiamo il caso del trailing stop: durante l'implementazione di un TS è una cosa ragionevole assegnare a 0 il valore della variabile 'trailing_stop' quando il TS non si trova in posizione, perchè giustamente in quel caso non esiste alcun trailing stop.
Ma così facendo non appena si prova a disegnare il valore della variabile 'trailing_stop', visto tutto quello detto poco fa, è molto probabile ottenere uno schiacciamento del grafico!

Fortunatamente, una soluzione semplice esiste: è sufficiente non azzerare mai il valore dello stop quando si chiude una posizione.
O meglio ancora, basta fare un controllo ed assegnare, appena prima di procedere al plot, il valore della barra precedente alla variabile nel caso in cui questo sia a 0. Così:
Codice:
if (trailing_stop = 0) then
   trailing_stop = trailing_stop[1];
endif;
PlotChart(trailing_stop, 0, Red, Solid, 2);

Per vedere come implementare materialmente un trailing stop fate riferimento ai TS di esempio distribuiti con il Visual Trader.

Distinti saluti,
Staff Traderlink
 
caperoni, per la pivot ho trovato il baco, ho messo due volte la pivot R e per questo motivo l'altra nn me la mostrava.

questo ho risolto, il resto ci penso come fare.
 
Scritto da lele2
caperoni, per la pivot ho trovato il baco, ho messo due volte la pivot R e per questo motivo l'altra nn me la mostrava.

questo ho risolto, il resto ci penso come fare.

cmq sembra che come valore prenda solo 1 o 2, se metto altri valori il grafico delle pivot nn cambia.


cmq sia è una cosa ke mi seve a poco ora ke l'ho vista.
 
Scritto da Biagi
Un modo potrebbe essere questo anche se non l’ho provato:

ho aggiunto anche un contatore di barre che se non ti interessa puoi omettere.

vars: Setup(false),Alert(false),NB(0):

if (crossover MM18 – MM40) then
SetuP = True;
NB = 1; (inizia a contare il numero di barre dal crossover)
Endif;

if NB > 0 then NB = NB +1;

if Setup and NB < X (un numero di barre entro cui ti attendi il rintracciamento) then
if C < (mm18) then
alert = true;
Setup = false;
endif;
endif;

If Alert and NB < X and (prezzo sopra MM18) then
(Entra long dove decidi tu);
alert = false;
NB = 0;
enfif;

// Azzeramento dei parametri

if Setup and NB >= X then
Setup = False;
NB = 0;
Endif;

If Alert and NB >= X then
Alert = False;
NB = 0;
Endif;

Prova a vedere se funziona.
ciao

ho provato il codice qui sopra ma purtroppo non funziona, sarebbe bello provare il famoso delphic phenomenon su VT se siete riusciti a realizzarlo lo postate perfavore?

Grazie
 
Indietro