Discussione: Chiarimento funzione GlobalVar
Visualizzazione Ibrida
-
24-09-14, 00:12 #1
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Grazie Max sei stato molto gentile però mi manca un ultimo passettino per arrivare a calcolare lo Z-score totale in modo corretto perchè vedo che non basta fare la semplice differenza dei due ZS singoli in quanto non mi trovo con il valore ufficiale calcolato!
Questo è lo ZS totale calcolato per differenza dei due singoli Zs (Zs=2.86)
Mentre questo è il valore ufficiale corretto (Zs=2.19)
Questo è il codice che ho utilizzato per calcolare lo Z-Score totale se qualcuno è così gentile da dirmi dove sbaglio ringrazio in anticipo...
INPUTS: @ZsLow(-2), @ZsHigh(2), @zero(0.01) set PLOT1 = GetGlobalVar(2) - GetGlobalVar(1) set plot2 = @ZsLow set plot3 = @ZsHigh SET PLOT4 = @zero
p.s. x i matematici: Stando alla definizione di Z-Score ufficiale una alternativa può essere quella di calcolare lo Z-Score totale come la media (credo a 250 periodi) della differenza percentualizzata dei due titoli ed esprimerla in deviazioni standard sul grafico a 1500 barre.Ultima modifica di CIVT; 24-09-14 alle 06:15
-
24-09-14, 09:00 #2
-
25-09-14, 08:48 #3
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Intendi dire che devo dividere la differenza dei due Z-score per la deviazione standard? Se la risposta è corretta (cosa che dubito) saresti così gentile da dirmi cosa ho sbagliato invece con il codice?
INPUTS: @price(CLOSE), @periods(250), @deviations(2), @matype(SIMPLE) set ZG= GetGlobalVar(1) - GetGlobalVar(2) SET PLOT1 = ZG / StdDev(ZG, @periods, @deviations, @matype) set PLOT2 = -2 set PLOT3 = +2 SET PLOT4 = 0
Grazie alle anime pie che vorranno aiutarmi!Ultima modifica di CIVT; 25-09-14 alle 08:54
-
25-09-14, 11:54 #4
Salve,
se intende replicare il risultato dello Z-Score che trova nel modulo OverSpread, allora ci sono diversi passaggi da fare.
Lo Z-Score nel modulo OverSpread è calcolato in questo modo:
1. Calcolo del prezzo indicizzato dell'asset A
2. Calcolo del prezzo indicizzato dell'asset B
3. Calcolo dello spread, cioè risultato del punto 1 meno risultato del punto 2
4. Calcolo dello Z-Score sul risultato del punto 3
Max Francario
-
25-09-14, 15:02 #5
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Ma per indicizzare un asset devo percentualizzarlo? Ti mostro quello ce ho fatto vediamo se mi stò avvicinando....
1. Calcolo del prezzo indicizzato dell'asset A
INPUTS: @periods(250) SET PZERO = REF(CLOSE, @periods) SET PERC = (100-CLOSE)/100*100 SetGlobalVar(1, PERC) SET PLOT1 = PERC
2. Calcolo del prezzo indicizzato dell'asset B
INPUTS: @periods(250) SET PZERO = REF(CLOSE, @periods) SET PERC = (100-CLOSE)/100*100 SetGlobalVar(2, PERC) SET PLOT1 = PERC
3. Calcolo dello spread, cioè risultato del punto 1 meno risultato del punto 2
4. Calcolo dello Z-Score sul risultato del punto 3
INPUTS: @price(CLOSE), @periods(250), @deviations(2), @matype(SIMPLE) set Diff = GetGlobalVar(2) - GetGlobalVar(1) SET PLOT1 = ZScore(Diff, @periods) set PLOT2 = -2 set PLOT3 = +2 SET PLOT4 = 0
Credo che manchi ancora qualcosa perchè vedo che non sono ancora sovrapponibile le due curve
A questo punto dopo la telefonata a casa chiederei l'aiuto del pubblico!
-
25-09-14, 15:22 #6
- Data Registrazione
- Feb 2012
- Località
- Pisa
- Messaggi
- 351
Ed ecco il pubblico!!!
Al punto 1 e 2 il vettore PZERO:
- dovrebbe essere un vettore costante, mentre così come lo hai calcolato è variabile
- credo che andrebbe determinato 1500 periodi indietro rispetto all'ultimo valore (per cui ti serve un grafico contenente almeno 1500 dati)
- in più mi sembra che il vettore lo calcoli ma poi non lo utilizzi ...
-
25-09-14, 15:33 #7
Salve,
forse il calcolo del prezzo indicizzato non è corretto. La proporzione è:
PZERO : 100 = CLOSE : X
quindi
X = (CLOSE * 100) / PZERO
dove X è il valore di prezzo indicizzato.
Rimane comunque un'altra differenza, sempre rispetto al modulo OverSpread, e sempre relativa al prezzo indicizzato. Nel modulo OverSpread il prezzo di partenza rimane sempre fisso a quello della prima barra di dati storici, non si sposta mai, è come se fosse il REF del CLOSE con periodo variabile.
Max Francario
-
25-09-14, 22:48 #8
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Anche così funziona alla grande!!!!
Ringrazio dei suggerimenti ma senza stare ad impazzire troppo con costanti e calcoli vari se calcolo lo Z-Score totale come differenza dei due Z-Score singoli il risultato "anche se con qualche scostamento in eccesso" sembra sovrapponibile e soprattutto tradabile! C'è da lavorarci un pochino ma anche così grezzo mostra un potenziale incredibile questo sistema!
Questa la sovraposizione con lo Z-score ufficiale
Questo il trading system applicato
-
07-10-14, 11:13 #9
- Data Registrazione
- Dec 2009
- Messaggi
- 813
Ciao infaticabile MAX! Contrariamente a quanto supponevo credo proprio che dovrò rimboccarmi le maniche e calcolare lo Z-Score con il tuo metodo perché vedo che il calcolo "semplificato" commette degli errori che non posso ritenere trascurabili....come puoi vedere da questo ennesimo confronto lo scostamento tra Overspread ufficiale e calcolato non è lieve, 2.7 contro 1.3 significa che stò introducendo un errore intorno al 50%!!!
Tornando al metodo di calcolo che mi hai suggerito potresti darmi qualche info in più in modo che un comune mortale sia in grado di tradurlo in Easyscript? Come posso bloccare "X" ovvero il prezzo indicizzato a 1500 barre passate!!?!? Mi sa che qui ci vuole ancora l'aiuto del nostro supereroe Smash!!!Ultima modifica di CIVT; 07-10-14 alle 12:26