Programmazione Visual Trader Supertrend per Visual trader (simile a Prorealtime)

Mah, siamo sotto sessione esami e ho i muratori in casa per cui non è un periodo felicissimo meno male che ci sono i ts che danno soddisfazioni!
I due ts stanno reggendo bene il foward!!!
Inoltre con il mio amico di Valenza stiamo testando una piccola tecnica semi-discrezionale che sta dimostrando ottimi risultati, ma sfrutta una sorta di ottimizzazione a finestra mobile ridotta per cui non la considero un vero ts.
Il sogno e fare discrezionale mentre i ts girano per conto loro e prima o poi ci riusciremo!

Poi ci sono ancora un sacco di idee da sviluppare, dovrei avere una squadra di programmatori alle mie dipendenze ed in pochi mesi credo che riuscirei a creare tutto ciò che abbiamo in mente.
Molti strumenti esistono già solo che come al solito chi li ha è sempre restio a concedere il proprio lavoro per il bene comune al contrario di TE!

Operare, studiare e programmare contemporaneamente è davvero difficile infatti spesso mi riecheggiano le parole del Guru e mi dico che stiamo correndo troppo forte e che dobbiamo spendere più tempo e meno denaro.
Tutto sommato da settembre che ho conosciuto il trading, tra capital gain alla mano e sviluppo ts sono molto felice :D

Finalmente tra una settimana arriveranno le vacanze ed un periodo di pausa ci fa solo bene. Chissà se riusciremo a staccare la spina ad Agosto, mi sà che sotto l'ombrellone avremo l'editor aperto :up:

Inoltre ti ringrazio pubblicamente perchè di persone valide, oneste e generose come te al mondo sono davvero poche!

A presto, magari senza monitor ma con una birra ghiacciata davanti :cin:

oh yes!
 
Ciao Aragorn, il codice come scrivevo prima corrisponde esattamente al codice di visualtrader. L'esempio che avevo postato inizialmente sul fol e in alcuni blog era esclusivamente fatto per fare in maniera tale che si capisse che vi sono esattamente sei casistiche che devono essere affrontate.

Tempo fa con ghigo confrontandoci su alcuni argomenti in merito all'atr avevamo già verificato che l'atr di visualtrader ha un valore diverso da quello di prorealtime e occorrebbe verificare in sede di calcolo quale dei due è corretto.
Pero' comunque sia, con VT o PRT la forma della supertrend deve essere similare seguendo le caratteristiche specifiche della supertrend.

Se si volesse utilizzare un codice molto compatto (furbo, ma secondo me non spiega bene), prendendo esclusivamente le variabili del modello postato in PRT (invece di mettere le mie di VT), funzionerebbe in questo modo:

Var: avola(0), avg(0), up(0), dn(0), aa(3), trend(0), super(0);
avola= atr(C, 10);
avg= (H + L) / 2;
up= avg + (aa*avola);
dn= avg - (aa*avola);
if C > up[1] then trend= 1; endif;
if C < dn[1] then trend=-1; endif;
if trend>0 and dn<dn[1] then dn=dn[1]; endif;
if trend<0 and up>up[1] then up=up[1]; endif;
if trend=1 then super=dn; else super=up; endif;
PlotChart(super, 0, red, solid, 3);

Questo codice corrisponde esattamente all'attuale supertrend di VT, alla supertrend con i 6 casi rilevati della versione didattica e sicuramente è piu' facile da implementare con excel.
 
Ciao Aragorn, il codice come scrivevo prima corrisponde esattamente al codice di visualtrader. L'esempio che avevo postato inizialmente sul fol e in alcuni blog era esclusivamente fatto per fare in maniera tale che si capisse che vi sono esattamente sei casistiche che devono essere affrontate.

Tempo fa con ghigo confrontandoci su alcuni argomenti in merito all'atr avevamo già verificato che l'atr di visualtrader ha un valore diverso da quello di prorealtime e occorrebbe verificare in sede di calcolo quale dei due è corretto.
Pero' comunque sia, con VT o PRT la forma della supertrend deve essere similare seguendo le caratteristiche specifiche della supertrend.

Se si volesse utilizzare un codice molto compatto (furbo, ma secondo me non spiega bene), prendendo esclusivamente le variabili del modello postato in PRT (invece di mettere le mie di VT), funzionerebbe in questo modo:

Var: avola(0), avg(0), up(0), dn(0), aa(3), trend(0), super(0);
avola= atr(C, 10);
avg= (H + L) / 2;
up= avg + (aa*avola);
dn= avg - (aa*avola);
if C > up[1] then trend= 1; endif;
if C < dn[1] then trend=-1; endif;
if trend>0 and dn<dn[1] then dn=dn[1]; endif;
if trend<0 and up>up[1] then up=up[1]; endif;
if trend=1 then super=dn; else super=up; endif;
PlotChart(super, 0, red, solid, 3);

Questo codice corrisponde esattamente all'attuale supertrend di VT, alla supertrend con i 6 casi rilevati della versione didattica e sicuramente è piu' facile da implementare con excel.

Dici che il calcolo dell 'atr di VT potrebbe essere sbagliato?
Controllerò su excel.

Grazie Robom, per i tuoi sempre preziosi contributi. :up:
 
Ciao Aragorn, il codice come scrivevo prima corrisponde esattamente al codice di visualtrader. L'esempio che avevo postato inizialmente sul fol e in alcuni blog era esclusivamente fatto per fare in maniera tale che si capisse che vi sono esattamente sei casistiche che devono essere affrontate.

Tempo fa con ghigo confrontandoci su alcuni argomenti in merito all'atr avevamo già verificato che l'atr di visualtrader ha un valore diverso da quello di prorealtime e occorrebbe verificare in sede di calcolo quale dei due è corretto.
Pero' comunque sia, con VT o PRT la forma della supertrend deve essere similare seguendo le caratteristiche specifiche della supertrend.

Se si volesse utilizzare un codice molto compatto (furbo, ma secondo me non spiega bene), prendendo esclusivamente le variabili del modello postato in PRT (invece di mettere le mie di VT), funzionerebbe in questo modo:

Var: avola(0), avg(0), up(0), dn(0), aa(3), trend(0), super(0);
avola= atr(C, 10);
avg= (H + L) / 2;
up= avg + (aa*avola);
dn= avg - (aa*avola);
if C > up[1] then trend= 1; endif;
if C < dn[1] then trend=-1; endif;
if trend>0 and dn<dn[1] then dn=dn[1]; endif;
if trend<0 and up>up[1] then up=up[1]; endif;
if trend=1 then super=dn; else super=up; endif;
PlotChart(super, 0, red, solid, 3);

Questo codice corrisponde esattamente all'attuale supertrend di VT, alla supertrend con i 6 casi rilevati della versione didattica e sicuramente è piu' facile da implementare con excel.

Ciao Robom1,
grazie del chiarimento, non ho molto tempo per approfondire in questo week-end, comunque nel frattempo provo a postare l'estratto del codice VB che ho implementato e che secondo me ricalca fedelmente la prima implementazione. Nota: l'ATR (variabile volatility) viene calcolata fuori dal codice VB (cioè nello spreadsheet Excel) e per il momento tralasciamo il modo in cui calcolarlo, come pure tu osservi.

...
trend = 1
i = 1
nRecord = .Range("FTSE_MIB").Rows.Count
While i <= nRecord
price = .Range("FTSE_MIB")(i).Value
median_price = .Range("mediana")(i).Value
volatility = .Range("vola")(i).Value
bandadn_prec = .Range("bandadn")(i - 1).Value
bandaup_prec = .Range("bandaup")(i - 1).Value
bandaup = median_price + multiplier * volatility
bandadn = median_price - multiplier * volatility

If trend = 1 Then
If price < bandadn_prec Then
trend = -1
'bandaup confermata
supertrn = bandaup
ElseIf price >= bandadn_prec Then
If bandadn < bandadn_prec Then
bandadn = bandadn_prec
End If
supertrn = bandadn
End If
ElseIf trend = -1 Then
If price > bandaup_prec Then
trend = 1
'bandadn confermata
supertrn = bandadn
ElseIf price <= bandaup_prec Then
If bandaup > bandaup_prec Then
bandaup = bandaup_prec
End If
supertrn = bandaup
End If
End If
.Range("bandaup")(i).Value = bandaup
.Range("bandadn")(i).Value = bandadn
.Range("trend")(i).Value = trend
.Range("supertrend")(i).Value = supertrn
i = i + 1
Wend

Ho fatto un rapidissimo backtest sul FTSE_MIB (per ora solo per i dati 2009) come segnale secondario di un TS trend follower, e me lo migliora molto, mentre con la seconda implementazione me la peggiora. Non escludo però qualche mia cappella :wall: per cui entrerò più nel dettaglio.
Ciao!

P.S.: non capisco perchè nel post non vengono fuori le indentazioni del codice, che avevo accuratamente rispettato mentre lo scrivevo :(
 
Dici che il calcolo dell 'atr di VT potrebbe essere sbagliato?
Controllerò su excel.

Ciao Damien, non so se è sbagliato e poi non ho proseguito nella verifica; ho visto che vi sono diverse modalità di calcolo non tanto per il calcolo del true range quanto della media del true range.
 
Aragorn e Robom1 ( che ringrazio per la gentilissima disponibilità) :
nel weekend riprenderò il supertrend in excel ( non visual basic): credo di aver risolto il problema del 'circolare', forse già nella versione che ti ho spedito ...
vediamo :)
 
Ciao Aragorn, il codice come scrivevo prima corrisponde esattamente al codice di visualtrader. L'esempio che avevo postato inizialmente sul fol e in alcuni blog era esclusivamente fatto per fare in maniera tale che si capisse che vi sono esattamente sei casistiche che devono essere affrontate.

Tempo fa con ghigo confrontandoci su alcuni argomenti in merito all'atr avevamo già verificato che l'atr di visualtrader ha un valore diverso da quello di prorealtime e occorrebbe verificare in sede di calcolo quale dei due è corretto.
Pero' comunque sia, con VT o PRT la forma della supertrend deve essere similare seguendo le caratteristiche specifiche della supertrend.

Se si volesse utilizzare un codice molto compatto (furbo, ma secondo me non spiega bene), prendendo esclusivamente le variabili del modello postato in PRT (invece di mettere le mie di VT), funzionerebbe in questo modo:

Var: avola(0), avg(0), up(0), dn(0), aa(3), trend(0), super(0);
avola= atr(C, 10);
avg= (H + L) / 2;
up= avg + (aa*avola);
dn= avg - (aa*avola);
if C > up[1] then trend= 1; endif;
if C < dn[1] then trend=-1; endif;
if trend>0 and dn<dn[1] then dn=dn[1]; endif;
if trend<0 and up>up[1] then up=up[1]; endif;
if trend=1 then super=dn; else super=up; endif;
PlotChart(super, 0, red, solid, 3);

Questo codice corrisponde esattamente all'attuale supertrend di VT, alla supertrend con i 6 casi rilevati della versione didattica e sicuramente è piu' facile da implementare con excel.


:up::):):)
 

Users who are viewing this thread

Back
Alto